Description
fast-uri normalize() decoded percent-encoded authority delimiters inside the host component and then re-emitted them as raw delimiters during serialization. A host that combined an allowed domain, an encoded at-sign, and a different domain was re-emitted with the at-sign as a raw userinfo separator, changing the URI's authority to the second domain. Applications that normalize untrusted URLs before host allowlist checks, redirect validation, or outbound request routing can be steered to a different authority than the input appeared to specify. Versions <= 3.1.1 are affected. Update to 3.1.2 or later.
Published: 2026-05-05
Score: 7.5 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

fast-uri’s normalize() function incorrectly handles percent‑encoded authority delimiters. When an encoded @ is present in the host portion, the library decodes it and then emits a raw @ during serialization, effectively changing the authority component to a second domain. Applications that use fast-uri to normalize untrusted URLs before performing hostname allowlisting, redirect checks, or routing outbound requests can be tricked into contacting a host that the user did not intend, leading to potential credential theft, phishing, or data exfiltration.

Affected Systems

The issue affects the fast-uri library from the vendor fast-uri. Version numbers 3.1.1 and earlier contain the flaw. Versions 3.1.2 and higher contain the fix. Any project that includes fast-uri in its dependency tree is susceptible if it uses the normalize() call on content that originates outside the system.

Risk and Exploitability

The CVSS score of 7.5 indicates a high severity vulnerability; the EPSS is not available, and the issue is not listed in the CISA KEV catalog, suggesting no known widespread exploitation yet. The attack is remote and can be carried out by supplying a crafted URI, for instance via link shorteners, HTTP redirect responses, or API calls that accept URLs. Because the manipulation is performed before trust checks, an attacker could redirect requests to malicious domains while evading host allowlist restrictions.

Generated by OpenCVE AI on May 5, 2026 at 11:20 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade fast-uri to version 3.1.2 or later in all affected dependencies.
  • Verify that the application does not normalize URLs before performing hostname allowlist checks or before validating the final target host.
  • Implement a strict hostname validation routine that rejects percent‑encoded delimiters in the host component or otherwise sanitizes the authority segment.
  • Conduct an audit of all entry points that accept URLs and ensure that only the fixed library is used.

Generated by OpenCVE AI on May 5, 2026 at 11:20 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 05 May 2026 13:15:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 05 May 2026 10:45:00 +0000

Type Values Removed Values Added
Description fast-uri normalize() decoded percent-encoded authority delimiters inside the host component and then re-emitted them as raw delimiters during serialization. A host that combined an allowed domain, an encoded at-sign, and a different domain was re-emitted with the at-sign as a raw userinfo separator, changing the URI's authority to the second domain. Applications that normalize untrusted URLs before host allowlist checks, redirect validation, or outbound request routing can be steered to a different authority than the input appeared to specify. Versions <= 3.1.1 are affected. Update to 3.1.2 or later.
Title fast-uri vulnerable to host confusion via percent-encoded authority delimiters
Weaknesses CWE-436
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: openjs

Published:

Updated: 2026-05-05T12:55:43.750Z

Reserved: 2026-04-14T20:28:09.160Z

Link: CVE-2026-6322

cve-icon Vulnrichment

Updated: 2026-05-05T12:55:34.327Z

cve-icon NVD

Status : Received

Published: 2026-05-05T11:16:33.360

Modified: 2026-05-05T11:16:33.360

Link: CVE-2026-6322

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-05-05T11:30:22Z

Weaknesses