ghsa-4c8g-83qw-93j6
CVSS 7.5 github### Impact `fast-uri` versions `>= 2.3.1, <= 4.0.0` fail to canonicalize Unicode/IDN hostnames for HTTP-family URLs. The IDN conversion path calls `URL.domainToASCII(...)` on the global WHATWG `URL` constructor, where that helper does not exist. The resulting `TypeError` is silently routed into `parsed.error`, but `parse()`, `normalize()`, and `equal()` all return with the host left in its original Unicode form. For example, `http://127。0。0。1/` is treated by `fast-uri` as host `127。0。0。1`, while Node's WHATWG URL parser and `fetch()` canonicalize the same input to `127.0.0.1`. Applications that use `fast-uri` to enforce host-based policy (denylists, loopback filtering, redirect validation, outbound proxy routing) before passing the same URL into Node's URL or `fetch()` consumers see a policy/use desync and can be steered to an unintended destination. ### Patches Upgrade to `fast-uri` v4.0.1, v3.1.3, or v2.4.2 ### Workarounds None. Upgrade to the patched version.
- Published
- unknown
- Last Modified
- unknown
CVSS details not available.
No product information available.
- https://github.com/fastify/fast-uri/security/advisories/GHSA-4c8g-83qw-93j6
- https://nvd.nist.gov/vuln/detail/CVE-2026-13676
- https://github.com/fastify/fast-uri/pull/188
- https://github.com/fastify/fast-uri/commit/2a6d357a18a68e6d812824379fd3388a1ae50d05
- https://github.com/fastify/fast-uri/commit/21ea1f9d70495c931f55dff893a8fa38f4f2e6bd
- https://github.com/fastify/fast-uri/commit/01db48010f594b98f7b323be18b393791c66ed1d
- https://access.redhat.com/errata/RHSA-2026:63371
- https://access.redhat.com/errata/RHSA-2026:61314
- https://access.redhat.com/errata/RHSA-2026:60520
- https://access.redhat.com/errata/RHSA-2026:60386
- https://access.redhat.com/errata/RHSA-2026:59593
- https://access.redhat.com/errata/RHSA-2026:57590
- https://access.redhat.com/errata/RHSA-2026:57194
- https://access.redhat.com/errata/RHSA-2026:57191
- https://access.redhat.com/errata/RHSA-2026:57013
- https://access.redhat.com/errata/RHSA-2026:56431
- https://access.redhat.com/errata/RHSA-2026:56366
- https://access.redhat.com/errata/RHSA-2026:66488
- https://access.redhat.com/errata/RHSA-2026:66545
- https://access.redhat.com/security/cve/CVE-2026-13676
- https://bugzilla.redhat.com/show_bug.cgi?id=2494197
- https://cna.openjsf.org/security-advisories.html
- https://github.com/fastify/fast-uri
- https://github.com/fastify/fast-uri/releases/tag/v2.4.2
- https://github.com/fastify/fast-uri/releases/tag/v3.1.3
- https://github.com/fastify/fast-uri/releases/tag/v4.0.1
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-13676.json
- https://access.redhat.com/errata/RHSA-2026:37186
- https://access.redhat.com/errata/RHSA-2026:37585
- https://access.redhat.com/errata/RHSA-2026:37628
- https://access.redhat.com/errata/RHSA-2026:40118
- https://access.redhat.com/errata/RHSA-2026:40262
- https://access.redhat.com/errata/RHSA-2026:40765
- https://access.redhat.com/errata/RHSA-2026:40945
- https://access.redhat.com/errata/RHSA-2026:41066
- https://access.redhat.com/errata/RHSA-2026:41928
- https://access.redhat.com/errata/RHSA-2026:41929
- https://access.redhat.com/errata/RHSA-2026:42815
- https://access.redhat.com/errata/RHSA-2026:43038
- https://access.redhat.com/errata/RHSA-2026:44239
- https://access.redhat.com/errata/RHSA-2026:44268
- https://access.redhat.com/errata/RHSA-2026:47728
- https://access.redhat.com/errata/RHSA-2026:48124
- https://access.redhat.com/errata/RHSA-2026:48126
- https://access.redhat.com/errata/RHSA-2026:49642
- https://access.redhat.com/errata/RHSA-2026:50340
- https://access.redhat.com/errata/RHSA-2026:50479
- https://access.redhat.com/errata/RHSA-2026:50758
- https://access.redhat.com/errata/RHSA-2026:51196
- https://access.redhat.com/errata/RHSA-2026:51197
- https://access.redhat.com/errata/RHSA-2026:51342
- https://access.redhat.com/errata/RHSA-2026:51348
- https://access.redhat.com/errata/RHSA-2026:51349
- https://access.redhat.com/errata/RHSA-2026:54760
No linked vulnerabilities found.
{
"affected": [
{
"package": {
"ecosystem": "npm",
"name": "fast-uri"
},
"ranges": [
{
"events": [
{
"introduced": "4.0.0"
},
{
"fixed": "4.0.1"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"package": {
"ecosystem": "npm",
"name": "fast-uri"
},
"ranges": [
{
"events": [
{
"introduced": "3.0.0"
},
{
"fixed": "3.1.3"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"package": {
"ecosystem": "npm",
"name": "fast-uri"
},
"ranges": [
{
"events": [
{
"introduced": "2.3.1"
},
{
"fixed": "2.4.2"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2026-13676"
],
"database_specific": {
"cwe_ids": [
"CWE-436",
"CWE-551"
],
"github_reviewed": true,
"github_reviewed_at": "2026-07-21T19:03:11Z",
"nvd_published_at": "2026-06-29T14:16:47Z",
"severity": "HIGH"
},
"details": "### Impact\n\n`fast-uri` versions `>= 2.3.1, <= 4.0.0` fail to canonicalize Unicode/IDN hostnames for HTTP-family URLs. The IDN conversion path calls `URL.domainToASCII(...)` on the global WHATWG `URL` constructor, where that helper does not exist. The resulting `TypeError` is silently routed into `parsed.error`, but `parse()`, `normalize()`, and `equal()` all return with the host left in its original Unicode form.\n\nFor example, `http://127。0。0。1/` is treated by `fast-uri` as host `127。0。0。1`, while Node's WHATWG URL parser and `fetch()` canonicalize the same input to `127.0.0.1`.\n\nApplications that use `fast-uri` to enforce host-based policy (denylists, loopback filtering, redirect validation, outbound proxy routing) before passing the same URL into Node's URL or `fetch()` consumers see a policy/use desync and can be steered to an unintended destination.\n\n### Patches\n\nUpgrade to `fast-uri` v4.0.1, v3.1.3, or v2.4.2\n\n### Workarounds\n\nNone. Upgrade to the patched version.",
"id": "GHSA-4c8g-83qw-93j6",
"modified": "2026-09-11T15:32:25Z",
"published": "2026-07-21T19:03:11Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/fastify/fast-uri/security/advisories/GHSA-4c8g-83qw-93j6"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-13676"
},
{
"type": "WEB",
"url": "https://github.com/fastify/fast-uri/pull/188"
},
{
"type": "WEB",
"url": "https://github.com/fastify/fast-uri/commit/2a6d357a18a68e6d812824379fd3388a1ae50d05"
},
{
"type": "WEB",
"url": "https://github.com/fastify/fast-uri/commit/21ea1f9d70495c931f55dff893a8fa38f4f2e6bd"
},
{
"type": "WEB",
"url": "https://github.com/fastify/fast-uri/commit/01db48010f594b98f7b323be18b393791c66ed1d"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:63371"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:61314"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:60520"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:60386"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:59593"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:57590"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:57194"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:57191"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:57013"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:56431"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:56366"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:66488"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:66545"
},
{
"type": "WEB",
"url": "https://access.redhat.com/security/cve/CVE-2026-13676"
},
{
"type": "WEB",
"url": "https://bugzilla.redhat.com/show_bug.cgi?id=2494197"
},
{
"type": "WEB",
"url": "https://cna.openjsf.org/security-advisories.html"
},
{
"type": "PACKAGE",
"url": "https://github.com/fastify/fast-uri"
},
{
"type": "WEB",
"url": "https://github.com/fastify/fast-uri/releases/tag/v2.4.2"
},
{
"type": "WEB",
"url": "https://github.com/fastify/fast-uri/releases/tag/v3.1.3"
},
{
"type": "WEB",
"url": "https://github.com/fastify/fast-uri/releases/tag/v4.0.1"
},
{
"type": "WEB",
"url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-13676.json"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:37186"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:37585"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:37628"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:40118"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:40262"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:40765"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:40945"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:41066"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:41928"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:41929"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:42815"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:43038"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:44239"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:44268"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:47728"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:48124"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:48126"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:49642"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:50340"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:50479"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:50758"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:51196"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:51197"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:51342"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:51348"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:51349"
},
{
"type": "WEB",
"url": "https://access.redhat.com/errata/RHSA-2026:54760"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N",
"type": "CVSS_V3"
}
],
"summary": "fast-uri vulnerable to host confusion via failed IDN canonicalization"
}