p PatchFirst

CVE-2026-13676

CVE-2026-13676 · fast-uri vulnerable to host confusion via failed IDN canonicalization

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

This page shows selected source facts. See the linked advisories for the complete description and affected versions.

fast-uri versions 2.3.1 through 3.1.2 and 4.0.0 fail to canonicalize Unicode (IDN) hostnames for HTTP-family URLs. The IDN conversion path calls a helper that does not exist on the global URL constructor, silently leaving the host in its original Unicode form while normalize() and equal() still return values that differ from a WHATWG-compatible URL parser. Applications that use fast-uri to enforce host-based policy (denylists, loopback filtering, redirect validation, outbound proxy routing) before passing the same URL to Node's URL or fetch can be bypassed when the two implementations resolve the same input to different hosts. Patches: upgrade to fast-uri 3.1.3 for the 3.x line or 4.0.1 for the 4.x line. Workarounds: enforce host policy using the same URL parser used for the actual request, or reject non-ASCII hosts before policy checks.

CVSS 7.5 · High · EPSS 0.5% · Fix available

Published
Updated

Stack: system · node

Affected products and versions

  • fast-uri

    Versions
    • ≥ 4.0.0, < 4.0.1: Affected (semver)
    • 4.0.1: Not affected (semver)
    • ≥ 2.3.1, < 3.1.3: Affected (semver)
    • 3.1.3: Not affected (semver)

    Update to 3.1.3; Update to 4.0.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: ≥ 4.0.0, < 4.0.1

    Update to 4.0.1

  • fast-uri npm

    Affected ranges
    • SEMVER: ≥ 3.0.0, < 3.1.3

    Update to 3.1.3

  • fast-uri npm

    Affected ranges
    • SEMVER: ≥ 2.3.1, < 2.4.2

    Update to 2.4.2

  • 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:25.10

    Versions
    • 8.12.0~ds+~2.1.1-5
    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 →