p PatchFirst

CVE-2026-16221

CVE-2026-16221 · fast-uri vulnerable to host confusion via literal backslash authority delimiter

This page contains facts from public vulnerability sources. Check the original advisory before updating.

Impact: fast-uri versions from 2.3.1 through 4.1.0 (including the 3.x line up to 3.1.3 and the 2.x line up to 2.4.2) do not treat a literal backslash character (U+005C) as an authority delimiter. Node's native WHATWG URL parser, used by fetch, undici, and Node's http and https clients, normalizes the backslash to a forward slash for special schemes such as http, https, ws, wss, ftp, and file. As a result, the two parsers extract different hosts from the same input string. Applications that use fast-uri to enforce host-based policy such as allowlists, denylists, loopback or SSRF filtering, redirect validation, or outbound proxy routing before passing the same URL into Node's URL or fetch consumers can be steered to an unintended destination, including cloud metadata endpoints, loopback, or internal hosts. Patches: upgrade to fast-uri 4.1.1, 3.1.4, or 2.4.3. Workarounds: none.

CVSS 7.5 · High · EPSS 0.3% · Fix available

Published
Updated

Stack: system · node

Affected products and versions

  • fast-uri

    Versions
    • ≥ 2.3.1, < 2.4.3: Affected (semver)
    • 2.4.3: Not affected (semver)
    • ≥ 3.0.0, < 3.1.4: Affected (semver)
    • 3.1.4: Not affected (semver)
    • ≥ 4.0.0, < 4.1.1: Affected (semver)
    • 4.1.1: Not affected (semver)

    Update to 2.4.3; Update to 3.1.4; Update to 4.1.1

  • node-ajv Debian:13

    Versions
    • 8.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
    • 8.17.1~ds+~3.0.1+~3.1.0-3
    • 8.17.1~ds+~3.0.1+~3.1.0-4
    • 8.18.0~ds+~cs6.1.1-1
    • 8.18.0~ds+~cs6.1.1-2
    • 8.20.0~ds+~cs6.1.3-1
    • 8.20.0~ds+~cs7.1.2-1
    • 8.20.0~ds+~cs7.1.3-1
    • 8.20.0~ds+~cs7.1.3-2
    • 8.20.0~ds+~cs7.1.3-3
    • 8.20.0~ds+~cs7.1.4-1
    • 8.20.0~ds+~cs7.1.5-1
    • 8.20.0~ds+~cs7.1.6-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-ajv Debian:14

    Versions
    • 8.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
    • 8.17.1~ds+~3.0.1+~3.1.0-3
    • 8.17.1~ds+~3.0.1+~3.1.0-4
    • 8.18.0~ds+~cs6.1.1-1
    • 8.18.0~ds+~cs6.1.1-2
    • 8.20.0~ds+~cs6.1.3-1
    Affected ranges
    • ECOSYSTEM: < 8.20.0~ds+~cs7.1.2-1

    Update to 8.20.0~ds+~cs7.1.2-1

  • fast-uri npm

    Affected ranges
    • SEMVER: ≥ 2.3.1, < 2.4.3

    Update to 2.4.3

  • fast-uri npm

    Affected ranges
    • SEMVER: ≥ 3.0.0, < 3.1.4

    Update to 3.1.4

  • fast-uri npm

    Affected ranges
    • SEMVER: ≥ 4.0.0, < 4.1.1

    Update to 4.1.1

  • node-ajv Ubuntu:18.04:LTS

    Versions
    • 5.0.0-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-ajv Ubuntu:20.04:LTS

    Versions
    • 6.10.2-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-ajv Ubuntu:22.04:LTS

    Versions
    • 6.12.6-2
    • 6.12.6-3
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-ajv Ubuntu:24.04:LTS

    Versions
    • 6.12.6-3
    • 8.12.0~ds+~2.1.1-4
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-ajv Ubuntu:26.10

    Versions
    • 8.17.1~ds+~3.0.1+~3.1.0-4build1
    • 8.20.0~ds+~cs6.1.3-1
    • 8.20.0~ds+~cs7.1.2-1
    • 8.20.0~ds+~cs7.1.3-1
    • 8.20.0~ds+~cs7.1.3-3
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-ajv Ubuntu:26.04:LTS

    Versions
    • 8.12.0~ds+~2.1.1-5
    • 8.17.1~ds+~3.0.1+~3.1.0-2
    • 8.17.1~ds+~3.0.1+~3.1.0-4build1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

Original sources

Check your server →