PatchSiren cyber security CVE debrief
CVE-2026-118664 SamVerschueren CVE debrief
A vulnerability in the decode-uri-component package can cause a denial of service via quadratic replacement of percent-encoded runs. A single unauthenticated request of about 224 KB can block the Node.js event loop for about 20 seconds. Version 0.5.0 and prior are affected. The issue was fixed in version 0.5.1. This vulnerability affects Node.js applications using the decode-uri-component package, potentially leading to performance issues and denial of service. Defenders should verify exposure and apply the patch to prevent potential issues.
- Vendor
- SamVerschueren
- Product
- decode-uri-component
- CVSS
- HIGH 8.2
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2026-10-29
- Original CVE updated
- 2026-10-29
- Advisory published
- 2026-10-29
- Advisory updated
- 2026-10-29
Who should care
Defenders and developers using the decode-uri-component package in their applications should verify exposure and apply the patch to prevent potential denial of service issues. This includes reviewing the current version of the package, assessing the potential impact on Node.js applications, and implementing necessary updates or mitigations. Additionally, defenders should monitor performance and potential denial of service issues, and review compensating.
Why it matters
The vulnerability in decode-uri-component can cause denial of service via quadratic replacement of percent-encoded runs, affecting Node.js applications. Defenders should verify exposure and apply the patch to prevent potential issues.
- Denial of service via performance degradation
- Potential event loop blocking in Node.js
- Increased risk of application unavailability
Technical summary
The customDecodeURIComponent function in the decode-uri-component package takes quadratic time on malformed input with many distinct percent-encoded runs, leading to performance issues and potential denial of service. This occurs when the function falls back to customDecodeURIComponent due to native decodeURIComponent throwing, causing a time complexity of O(K·L) where K is the number of distinct runs and L is the input length. An attacker controls both K and L, allowing for a potential denial of service via quadratic replacement of percent-encoded runs.
Defensive priority
Defenders should prioritize verifying exposure and applying the patch, as the vulnerability can cause performance issues and potential denial of service.
Recommended defensive actions
- Verify if the decode-uri-component package is used in the application
- Check if the version is 0.5.0 or prior
- Apply the patch by updating to version 0.5.1 or later
- Monitor performance and potential denial of service issues
- Review compensating controls for exposed systems while remediation is scheduled and verified
- Check relevant monitoring, detection, and logs for exposed assets that need extra review
- Track exceptions, retest remediated assets, and close the item only after evidence is documented.
Evidence notes
The vulnerability is caused by the customDecodeURIComponent function in the decode-uri-component package, which takes quadratic time on malformed input with many distinct percent-encoded runs. This can lead to performance issues and potential denial of service.
Sources and references
Verified primary and authoritative sources
-
CVE-2026-118664 CVE Program record
Publisher, destination, and source semantics verified
URL: https://www.cve.org/CVERecord?id=CVE-2026-118664
CVE Program - Official CVE Program record with source-provided CVE metadata.
-
CVE-2026-118664 NVD vulnerability detail
Publisher, destination, and source semantics verified
URL: https://nvd.nist.gov/vuln/detail/CVE-2026-118664
NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.
Supplemental references
-
decode-uri-component vulnerable to denial of service via quadratic replacement of percent-encode
Unverified legacy reference
URL: https://storage.googleapis.com/osv-vulnerabilities/npm/GHSA-qr28-fpjm-wq7f.json
osv_dev
-
Source reference
Unverified legacy reference
URL: https://github.com/SamVerschueren/decode-uri-component/security/advisories/GHSA-qr28-fpjm-wq7f
Supplemental source
-
Source reference
Unverified legacy reference
URL: https://github.com/SamVerschueren/decode-uri-component/commit/fad01d65b93bd3f2f0dc32dfd8d57a38b57bc608
Supplemental source
-
Source reference
Unverified legacy reference
URL: https://github.com/SamVerschueren/decode-uri-component
Supplemental source
-
Source reference
Unverified legacy reference
URL: https://github.com/SamVerschueren/decode-uri-component/releases/tag/v0.5.1
Supplemental source
Methodology and review provenance
AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.