Platform
nodejs
Component
path-to-regexp
Opgelost in
0.1.13
0.1.12
CVE-2024-52798 is een Regular Expression Denial of Service (ReDoS) kwetsbaarheid in de path-to-regexp library. Deze kwetsbaarheid maakt het mogelijk voor een aanvaller om een denial-of-service aanval uit te voeren door een reguliere expressie te genereren die vatbaar is voor backtracking. Dit treft versies vóór 0.1.12. Een upgrade naar versie 0.1.12 verhelpt dit probleem.
De CVE-2024-52798-kwetsbaarheid in path-to-regexp komt door de generatie van reguliere expressies die kwetsbaar zijn voor excessief backtracking. Dit beïnvloedt versies vóór 0.1.12. Een aanvaller kan deze kwetsbaarheid misbruiken om een denial-of-service (DoS) te veroorzaken door het systeem te dwingen om overmatige CPU-resources te verbruiken bij het proberen overeen te komen met kwaadaardige patronen. De CVSS-severity is 7.5, wat een hoog risico aangeeft. Deze kwetsbaarheid is gerelateerd aan het oorspronkelijke rapport CVE-2024-45296, wat suggereert dat er een evolutie of een aanvullende ontdekking is met betrekking tot hetzelfde onderliggende probleem.
De kwetsbaarheid manifesteert zich wanneer path-to-regexp een reguliere expressie genereert die overmatig backtracking mogelijk maakt. Dit kan gebeuren wanneer routes met meerdere parameters en complexe scheidingstekens worden gedefinieerd. Een aanvaller kan een zorgvuldig samengestelde invoer verstrekken die de reguliere expressie dwingt om meerdere combinaties te proberen, waardoor de systeembronnen worden uitgeput. Dit is vooral zorgwekkend in omgevingen met een hoge belasting, waar een denial-of-service aanzienlijke gevolgen kan hebben.
Applications built on Node.js that utilize the path-to-regexp package for URL routing or parameter parsing are at risk. This includes web applications, APIs, and microservices. Projects relying on older versions of path-to-regexp without proper input validation are particularly vulnerable.
• nodejs / server:
npm list path-to-regexp• nodejs / server:
npm audit path-to-regexp• nodejs / server:
grep -r 'path-to-regexp' ./node_modulesdisclosure
Exploit Status
EPSS
0.22% (44% percentiel)
CISA SSVC
CVSS-vector
De aanbevolen oplossing is om te upgraden naar versie 0.1.12 van path-to-regexp. Als alternatieve maatregel, als een upgrade niet onmiddellijk mogelijk is, vermijd dan het gebruik van twee parameters binnen een enkel padsegment wanneer de scheidingsteken geen punt (.) is. Vermijd bijvoorbeeld patronen zoals /:a-:b. Definieer alternatief expliciet de reguliere expressie die voor beide parameters wordt gebruikt en zorg ervoor dat ze elkaar niet overlappen, waardoor backtracking wordt voorkomen. Deze mitigatie vermindert de kans dat een aanvaller een patroon kan creëren dat het probleem triggert.
Actualice la biblioteca path-to-regexp a la versión 0.1.12 o superior. Esto solucionará la vulnerabilidad ReDoS. Ejecute `npm install path-to-regexp@latest` o `yarn add path-to-regexp@latest` para actualizar.
Kwetsbaarheidsanalyses en kritieke waarschuwingen direct in uw inbox.
Backtracking is het proces dat een reguliere expressie-engine volgt om een overeenkomst te vinden. In dit geval kan een slecht geconstrueerde reguliere expressie in een backtracking-lus terechtkomen en meerdere combinaties proberen totdat de systeembronnen uitgeput zijn.
Versie 0.1.12 lost de kwetsbaarheid op door de generatie van reguliere expressies te voorkomen die kwetsbaar zijn voor overmatig backtracking. Upgraden is de veiligste manier om het risico te beperken.
Als u niet onmiddellijk kunt upgraden, pas dan de alternatieve mitigatie toe om het gebruik van twee parameters in een enkel padsegment met scheidingstekens te vermijden die geen punten zijn.
Als u een versie vóór 0.1.12 van path-to-regexp gebruikt en routes met meerdere parameters en complexe scheidingstekens gebruikt, is de kans groot dat u kwetsbaar bent.
De alternatieve mitigatie kan een geringe prestatie-impact hebben, maar is beter dan de denial-of-service die door de kwetsbaarheid wordt veroorzaakt.
Upload je dependency-bestand en kom direct te weten of deze en andere CVEs jou raken.