CVE-2026-76172
fast-uri vulnerable to host confusion via percent-encoded scheme normalization
Description
fast-uri is a URI parser for Node.js. During parsing it runs a legacy decoding pass over the scheme component and never re-escapes the result, and serialization writes the scheme back out verbatim, unlike the host component which is re-escaped. As a result an input whose scheme carries percent-encoded slashes parses as a scheme with no authority, so the parsed host and error are both undefined, yet resolving or normalizing that same input emits a network-path reference whose authority is attacker-chosen and re-parses to that host. An application that allowlists on the parsed host, or treats a reference with no authority as safe to resolve against its base, gets the opposite of what it checked, giving an off-site redirect, server-side request forgery, or address-policy bypass. The legacy decoder also expands non-standard escape forms, widening the issue past upstream filters, and control characters in the scheme can reach the output as raw carriage return and line feed. The affected versions are 2.3.1 up to but not including 2.4.5, 3.0.0 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 reject a scheme that is not valid after decoding. Users should upgrade to a patched version.
INFO
Published Date :
Aug. 24, 2026, 11:16 a.m.
Last Modified :
Oct. 14, 2026, 1:10 p.m.
Remotely Exploit :
No
Source :
ce714d77-add3-4f53-aff5-83d477b104bb
CVSS Scores
| Score | Version | Severity | Vector | Exploitability Score | Impact Score | Source |
|---|---|---|---|---|---|---|
| CVSS | 134c704f-9b21-4f2e-91b3-4a467353bcc0 | |||||
| CVSS 3.1 | HIGH | ce714d77-add3-4f53-aff5-83d477b104bb | ||||
| CVSS 3.1 | HIGH | MITRE-CVE |
Solution
- Upgrade fast-uri to a patched version.
- Validate user-supplied URIs carefully.
- Avoid trust on parsed hostnames alone.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2026-76172.
| URL | Resource |
|---|---|
| https://cna.openjsf.org/security-advisories.html | Vendor Advisory |
| https://github.com/fastify/fast-uri/security/advisories/GHSA-jqff-g426-hqxp | Vendor Advisory |
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2026-76172 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2026-76172
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-76172 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-76172 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
CVE Translated by [email protected]
Oct. 14, 2026
Action Type Old Value New Value Added Translation Title: fast-uri, Description: fast-uri es un analizador de URI para Node.js. Durante el análisis, ejecuta un paso de decodificación heredado sobre el componente del esquema y nunca vuelve a escapar el resultado, y la serialización escribe el esquema de vuelta textualmente, a diferencia del componente de host que sí se vuelve a escapar. Como resultado, una entrada cuyo esquema contiene barras codificadas por porcentaje se analiza como un esquema sin autoridad, por lo que el host analizado y el error son ambos indefinidos; sin embargo, resolver o normalizar esa misma entrada emite una referencia de ruta de red cuya autoridad es elegida por el atacante y se vuelve a analizar a ese host. Una aplicación que permite en el host analizado, o trata una referencia sin autoridad como segura para resolver contra su base, obtiene lo contrario de lo que verificó, lo que resulta en una redirección fuera del sitio, falsificación de petición del lado del servidor, o una omisión de política de direcciones. El decodificador heredado también expande formas de escape no estándar, ampliando el problema más allá de los filtros ascendentes, y los caracteres de control en el esquema pueden llegar a la salida como retorno de carro y salto de línea sin procesar. Las versiones afectadas son la 2.3.1 hasta, pero sin incluir, la 2.4.5; la 3.0.0 hasta, pero sin incluir, la 3.1.6; y la 4.0.0 hasta, pero sin incluir, la 4.1.3. El problema está solucionado en las versiones 2.4.5, 3.1.6 y 4.1.3, las cuales rechazan un esquema que no es válido después de la decodificación. Los usuarios deben actualizar a una versión parcheada. -
Initial Analysis by [email protected]
Sep. 02, 2026
Action Type Old Value New Value Added CPE Configuration OR *cpe:2.3:a:openjsf:fast-uri:*:*:*:*:*:node.js:*:* versions from (including) 3.0.0 up to (excluding) 3.1.6 *cpe:2.3:a:openjsf:fast-uri:*:*:*:*:*:node.js:*:* versions from (including) 4.0.0 up to (excluding) 4.1.3 *cpe:2.3:a:openjsf:fast-uri:*:*:*:*:*:node.js:*:* versions from (including) 2.3.1 up to (excluding) 2.4.5 Added Reference Type openjs: https://cna.openjsf.org/security-advisories.html Types: Vendor Advisory Added Reference Type openjs: https://github.com/fastify/fast-uri/security/advisories/GHSA-jqff-g426-hqxp Types: Vendor Advisory -
CVE Modified by 134c704f-9b21-4f2e-91b3-4a467353bcc0
Aug. 24, 2026
Action Type Old Value New Value Added SSVC {'id': 'CVE-2026-76172', 'role': 'CISA Coordinator', 'options': [{'exploitation': 'none'}, {'automatable': 'yes'}, {'technicalImpact': 'partial'}], 'version': '2.0.3', 'timestamp': '2026-08-24T14:29:20.006884Z'} -
New CVE Received by ce714d77-add3-4f53-aff5-83d477b104bb
Aug. 24, 2026
Action Type Old Value New Value Added Affected [{'vendor': 'fast-uri', 'product': 'fast-uri', 'versions': [{'status': 'affected', 'version': '2.3.1', 'lessThan': '2.4.5', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '2.4.5', 'versionType': 'semver'}, {'status': 'affected', 'version': '3.0.0', 'lessThan': '3.1.6', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '3.1.6', 'versionType': 'semver'}, {'status': 'affected', 'version': '4.0.0', 'lessThan': '4.1.3', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '4.1.3', 'versionType': 'semver'}], 'packageURL': 'pkg:npm/fast-uri', 'defaultStatus': 'unaffected'}] Added Description fast-uri is a URI parser for Node.js. During parsing it runs a legacy decoding pass over the scheme component and never re-escapes the result, and serialization writes the scheme back out verbatim, unlike the host component which is re-escaped. As a result an input whose scheme carries percent-encoded slashes parses as a scheme with no authority, so the parsed host and error are both undefined, yet resolving or normalizing that same input emits a network-path reference whose authority is attacker-chosen and re-parses to that host. An application that allowlists on the parsed host, or treats a reference with no authority as safe to resolve against its base, gets the opposite of what it checked, giving an off-site redirect, server-side request forgery, or address-policy bypass. The legacy decoder also expands non-standard escape forms, widening the issue past upstream filters, and control characters in the scheme can reach the output as raw carriage return and line feed. The affected versions are 2.3.1 up to but not including 2.4.5, 3.0.0 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 reject a scheme that is not valid after decoding. Users should upgrade to a patched version. Added CVSS V3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N Added CWE CWE-177 Added Reference https://cna.openjsf.org/security-advisories.html Added Reference https://github.com/fastify/fast-uri/security/advisories/GHSA-jqff-g426-hqxp