Vulnerability · Published Sep 18, 2026 · Assigned by VulnCheck
CVE-2026-93690uri-js through 4.4.1 Denial of Service via removeDotSegments
High 7.5
In plain English
A high-severity infinite loop in uri-js from garycourt. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.5% (higher than 39% of all known vulnerabilities).
Official description
uri-js through 4.4.1 contains a denial of service vulnerability in the removeDotSegments function that loops infinitely when a path segment begins with Unicode line or paragraph separators. Attackers can trigger this by calling removeDotSegments directly or through normalize/resolve functions with IRI handling enabled, causing the Node.js event loop to block indefinitely until heap exhaustion.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian:12 | node-uri-js | no fix listed | DEBIAN-CVE-2026-93690 |
| Debian:13 | node-uri-js | no fix listed | DEBIAN-CVE-2026-93690 |
| Debian:14 | node-uri-js | no fix listed | DEBIAN-CVE-2026-93690 |
| Ubuntu:22.04:LTS | node-uri-js | no fix listed | UBUNTU-CVE-2026-93690 |
| Ubuntu:24.04:LTS | node-uri-js | no fix listed | UBUNTU-CVE-2026-93690 |
| Ubuntu:26.04:LTS | node-uri-js | no fix listed | UBUNTU-CVE-2026-93690 |
| Ubuntu:26.10 | node-uri-js | no fix listed | UBUNTU-CVE-2026-93690 |
Affected products (as reported)
Weakness: CWE-835 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
References
- GitHub Issue #105 issue-tracking
- https://github.com/garycourt/uri-js product
- https://github.com/garycourt/uri-js/blob/4.4.0/src/uri.ts#L349 technical-description
- https://github.com/garycourt/uri-js/blob/4.4.0/src/uri.ts#L352-L376 technical-description
- https://www.npmjs.com/package/uri-js/v/4.4.1 product
- VulnCheck Advisory: uri-js through 4.4.1 Denial of Service via removeDotSegments third-party-advisory