fast-uri vulnerable to host confusion via skipped IDN canonicalization on scheme-relative references
Package
Affected versions
>= 2.4.2, < 2.4.5
>= 3.1.3, < 3.1.6
>= 4.0.1, < 4.1.3
Patched versions
2.4.5
3.1.6
4.1.3
Description
Published by the National Vulnerability Database
Aug 24, 2026
Published to the GitHub Advisory Database
Sep 2, 2026
Reviewed
Sep 2, 2026
Last updated
Sep 2, 2026
Impact
fast-uricanonicalizes a host to its ASCII form only when the input carries an explicit scheme. Whenresolve()resolves a scheme-relative reference (//host/) against a scheme-bearing base, it still emits the host verbatim even though the effective scheme is known, so re-parsing the resolved URI yields a different host than the oneresolve()returned. An application that resolves an untrusted reference withfast-uriand then checks or routes on the resulting host can make a policy decision on one host and reach another. This is an incomplete-fix variant of CVE-2026-13676, whose IDN canonicalization was applied only to the scheme-bearing form.Patches
Upgrade to
fast-uri2.4.5, 3.1.6, or 4.1.3.resolve()now canonicalizes the host once the effective scheme is known, and fails closed if a raw non-ASCII host cannot be converted.Workarounds
Resolve scheme-relative references against a base that carries a scheme before performing any host-policy or origin check.
References