Platform
nodejs
Component
terser
Opgelost in
4.8.1
5.14.2
4.8.1
CVE-2022-25858 beschrijft een Regular Expression Denial of Service (ReDoS) kwetsbaarheid in de Terser bibliotheek voor Node.js. Een kwaadwillende input kan een oneindige lus in de reguliere expressie triggeren, wat resulteert in een denial-of-service. Deze kwetsbaarheid treft versies van Terser vóór 4.8.1, en versies tussen 5.0.0 en 5.14.2. Een upgrade naar versie 4.8.1 of hoger is vereist om de kwetsbaarheid te verhelpen.
Een succesvolle exploitatie van deze kwetsbaarheid kan leiden tot een denial-of-service (DoS) op systemen die Terser gebruiken. De kwetsbaarheid is gebaseerd op de onveilige manier waarop reguliere expressies worden gebruikt, waardoor een kwaadwillende actor een input kan leveren die een oneindige lus veroorzaakt. Dit kan leiden tot een significant prestatieverlies of zelfs een complete stilstand van de applicatie. De impact is vooral groot in omgevingen waar Terser wordt gebruikt voor het minificeren of transformeren van JavaScript-code, aangezien een DoS hier de beschikbaarheid van de applicatie direct kan beïnvloeden.
Deze kwetsbaarheid is openbaar bekend en er zijn geen bekende actieve campagnes of public proof-of-concepts die specifiek deze kwetsbaarheid exploiteren. De kwetsbaarheid is opgenomen in de NVD (National Vulnerability Database) en de publicatiedatum is 2022-07-16. De EPSS score is momenteel niet bekend, maar gezien de openbare bekendheid en de relatieve eenvoud van ReDoS exploits, is er een potentieel risico.
Applications and services utilizing Terser for JavaScript minification or compression are at risk. This includes web applications, build systems (e.g., webpack, Parcel), and any Node.js projects that depend on Terser directly or indirectly through other packages. Developers using older versions of Terser in production environments are particularly vulnerable.
• nodejs / server:
npm list terser• nodejs / server:
npm audit• nodejs / server: Check package.json for terser versions < 4.8.1 or between 5.0.0 and 5.14.2. • nodejs / server: Monitor CPU usage; spikes correlated with Terser processing could indicate exploitation.
disclosure
Exploit Status
EPSS
3.56% (88% percentiel)
CVSS-vector
De primaire mitigatie voor CVE-2022-25858 is het upgraden van Terser naar versie 4.8.1 of hoger. Indien een directe upgrade niet mogelijk is, kan een tijdelijke workaround bestaan uit het beperken van de grootte en complexiteit van de input die aan Terser wordt gevoerd. Het implementeren van inputvalidatie en sanitatie kan helpen om kwaadwillende inputs te detecteren en te blokkeren. Er zijn geen specifieke WAF-regels of Sigma/YARA patronen bekend voor deze specifieke ReDoS kwetsbaarheid, maar het monitoren van CPU-gebruik en geheugengebruik kan helpen bij het detecteren van een DoS aanval. Na de upgrade, controleer de functionaliteit van de applicatie om er zeker van te zijn dat de minificatie en transformatie van JavaScript-code correct werken.
Werk het terser pakket bij naar versie 4.8.1 of hoger, of naar versie 5.14.2 of hoger. Dit corrigeert de Regular Expression Denial of Service (ReDoS) kwetsbaarheid veroorzaakt door het onveilige gebruik van reguliere expressies.
Kwetsbaarheidsanalyses en kritieke waarschuwingen direct in uw inbox.
CVE-2022-25858 is a Regular Expression Denial of Service (ReDoS) vulnerability affecting Terser versions before 4.8.1 and 5.0.0 - 5.14.2, allowing attackers to cause excessive CPU consumption.
You are affected if your project uses Terser versions prior to 4.8.1 or between 5.0.0 and 5.14.2. Check your package.json file to determine your Terser version.
Upgrade to Terser version 4.8.1 or later. If immediate upgrade is not possible, implement input validation to sanitize JavaScript code before processing.
No active exploitation campaigns have been publicly reported, but public proof-of-concept exploits exist.
Refer to the Terser project's GitHub repository and associated security advisories for details: https://github.com/terser/terser
Upload je dependency-bestand en kom direct te weten of deze en andere CVEs jou raken.