GitHub Advisoryadvisory · RubyGems

GHSA-22h5-pq3x-2gf2 URI allows for userinfo Leakage in URI#join, URI#merge, and URI#+

LOW Published 2025-03-03 Modified 2025-11-04 Official page ↗
Aliases
CVE-2025-27221
Ecosystem
RubyGems
Packages
uri
Severity
Low
CVSS vector
CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:C/C:L/I:N/A:N
Weaknesses
CWE-200, CWE-212
Reviewed
2025-03-03

Affected packages

• RubyGems uri: < 0.11.3 → fixed in 0.11.3 • RubyGems uri: >= 0.12.0, < 0.12.4 → fixed in 0.12.4 • RubyGems uri: >= 0.13.0, < 0.13.2 → fixed in 0.13.2 • RubyGems uri: >= 1.0.0, < 1.0.3 → fixed in 1.0.3

Description

There is a possibility for userinfo leakage by in the uri gem. This vulnerability has been assigned the CVE identifier CVE-2025-27221. We recommend upgrading the uri gem. Details The methods `URI#join`, `URI#merge`, and `URI#+` retained userinfo, such as `user:password`, even after the host is replaced. When generating a URL to a malicious host from a URL containing secret userinfo using these methods, and having someone access that URL, an unintended userinfo leak could occur. Please update URI gem to version 0.11.3, 0.12.4, 0.13.2, 1.0.3 or later. Affected versions uri gem versions < 0.11.3, 0.12.0 to 0.12.3, 0.13.0, 0.13.1 and 1.0.0 to 1.0.2. Credits Thanks to Tsubasa Irisawa (lambdasawa) for discovering this issue. Also thanks to nobu for additional fixes of this vulnerability.

Related

Alias · CVE (1)

  • CVE-2025-27221 In the URI gem before 1.0.3 for Ruby, the URI handling methods (URI.join, URI#merge, URI#+) have an inadvertent leakage of authentication… vulnerability

Weakness · CWE (2)

  • CWE-200 Exposure of Sensitive Information to an Unauthorized Actor weakness
  • CWE-212 Improper Removal of Sensitive Information Before Storage or Transfer weakness

References