CVE-2026-75899
fast-uri is a URI parser for Node.js.
Published Aug 24, 2026 · updated Oct 15, 2026 · openjsf fast-uri
fast-uri is a URI parser for Node.js. It decodes percent escapes in a hostname during parsing and then decodes the parsed hostname a second time during authority recomposition, so a single call to normalize or resolve can turn nested percent-encoded input into a different network destination such as a loopback hostname or address. For example, a doubly encoded host that spells out a loopback name decodes to that live host in one operation, which contradicts RFC 3986 section 2.4 that an implementation must not decode the same string more than once. An application that normalizes or resolves an untrusted HTTP-family URI before outbound routing, redirect validation, or a host-policy check can receive a destination different from the one the original encoded host represented, giving a server-side request forgery and host-policy bypass primitive. This is an incomplete-fix variant of CVE-2026-6322. The affected versions are 2.4.1 up to but not including 2.4.5, 3.1.2 up to but not including 3.1.6, and 4.0.0 up to but not including 4.1.3. The issue is fixed in 2.4.5, 3.1.6, and 4.1.3, which normalize percent escapes once and preserve encoded percent signs. Users should upgrade to a patched version.
Code
The project this record applies to. Exploit listings stay in References.
Timeline
Detection, updates, and resolution for this record.
Aug 24, 2026 · NIST NVD
Detected
fast-uri is a URI parser for Node.js. It decodes percent escapes in a hostname during parsing and then decodes the parsed hostname a second time during authority recomposition, so a single call to normalize or resolve can turn nested percent-encoded input into a different network destination such as a loopback hostname or address. For example, a doubly encoded host that spells out a loopback name
Oct 14, 2026 · NIST NVD
Updated
fast-uri is a URI parser for Node.js. It decodes percent escapes in a hostname during parsing and then decodes the parsed hostname a second time during authority recomposition, so a single call to normalize or resolve can turn nested percent-encoded input into a different network destination such as a loopback hostname or address. For example, a doubly encoded host that spells out a loopback name
Oct 15, 2026 · OSV.dev
Fix available
node-ajv fixed in 8.20.0~ds+~cs7.1.4-1
Oct 15, 2026 · OSV.dev
Fix available
node-ajv fixed in 8.20.0~ds+~cs7.1.4-1
Oct 15, 2026 · OSV.dev
Updated
fast-uri is a URI parser for Node.js. It decodes percent escapes in a hostname during parsing and then decodes the parsed hostname a second time during authority recomposition, so a single call to normalize or resolve can turn nested percent-encoded input into a different network destination such as a loopback hostname or address. For example, a doubly encoded host that spells out a loopback name
Affected
- Debian:13 node-ajv8.12.0~ds+~2.1.1-5, 8.17.1~ds+~3.0.1+~3.1.0-1, 8.17.1~ds+~3.0.1+~3.1.0-2
- Debian:14 node-ajv0 → 8.20.0~ds+~cs7.1.4-1
- cpe openjsf/fast-uriversion unspecified
Sources
- CVE.orgVulnerability recordCVE-2026-75899
Official CVE identifier
cve.org - FIRST EPSSExploitation probabilityCVE-2026-75899
30-day exploitation probability 0.2%
first.org - NIST NVDVulnerability recordCVE-2026-75899
fast-uri is a URI parser for Node.js. It decodes percent escapes in a hostname during parsing and then decodes the parsed hostname a second time during authority recomposition, so a single call to normalize or resolve can turn nested percent-encoded input into a different network
nvd.nist.gov - OSV.devPackage advisoryDEBIAN-CVE-2026-75899osv.dev