RustSec logo

History ⋅ Edit ⋅ JSON (OSV)

RUSTSEC-2026-0407

SSRF and local file disclosure via unvalidated URLs

Reported
Issued
Package
webpage (crates.io)
Type
Vulnerability
Categories
Keywords
#ssrf #file-disclosure #url-validation
Aliases
References
CVSS Score
7.5 HIGH
CVSS Details
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality Impact
High
Integrity Impact
None
Availability Impact
None
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Patched
  • >=2.1.0

Description

Applications that pass attacker-controlled URLs to webpage versions before 2.1.0 may be vulnerable to server-side request forgery (SSRF) or local file disclosure.

HTTP::fetch and Webpage::from_url passed URLs to libcurl without restricting the URL scheme or validating the resolved destination IP address. Redirects were followed without checking whether the new destination was internal. Depending on how the application uses the response, an attacker could:

Starting in 2.1.0, HTTP::fetch and Webpage::from_url reject non-HTTP(S) URL schemes and destinations that resolve to non-public IP addresses, including after redirects. Applications that intentionally fetch trusted internal resources can opt in to the previous behavior with HTTP::fetch_unrestricted or Webpage::from_url_unrestricted.

Reported by Aiden Mohan.

Advisory available under CC0-1.0 license.