Plateforme
nodejs
Composant
path-to-regexp
Corrigé dans
0.1.13
0.1.12
CVE-2024-52798 est une vulnérabilité de type ReDoS (Regular expression Denial of Service) affectant la librairie path-to-regexp. Elle permet à un attaquant de provoquer une consommation excessive de ressources en exploitant une expression régulière vulnérable. Les versions antérieures à 0.1.12 sont affectées. La version 0.1.12 corrige cette vulnérabilité.
La vulnérabilité CVE-2024-52798 dans path-to-regexp est due à la génération d'expressions régulières vulnérables au backtracking excessif. Cela affecte les versions antérieures à 0.1.12. Un attaquant pourrait exploiter cette vulnérabilité pour provoquer un déni de service (DoS) en forçant le système à consommer une quantité excessive de ressources CPU lors de la tentative de correspondance avec des modèles malveillants. La sévérité CVSS est de 7,5, ce qui indique un risque élevé. Cette vulnérabilité est liée au rapport original CVE-2024-45296, ce qui suggère une évolution ou une découverte supplémentaire liée au même problème sous-jacent.
La vulnérabilité se manifeste lorsque path-to-regexp génère une expression régulière qui permet un backtracking excessif. Cela peut se produire lors de la définition de routes avec plusieurs paramètres et séparateurs complexes. Un attaquant peut fournir une entrée soigneusement conçue qui oblige l'expression régulière à tenter plusieurs combinaisons, épuisant ainsi les ressources du système. Cela est particulièrement préoccupant dans les environnements à forte charge, où un déni de service peut avoir un impact important.
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
Statut de l'Exploit
EPSS
0.22% (percentile 44%)
CISA SSVC
Vecteur CVSS
La solution recommandée est de mettre à niveau vers la version 0.1.12 de path-to-regexp. En guise de mesure alternative, si une mise à niveau n'est pas immédiatement possible, évitez d'utiliser deux paramètres dans un seul segment de chemin lorsque le séparateur n'est pas un point (.). Par exemple, évitez les modèles tels que /:a-:b. Alternativement, définissez explicitement l'expression régulière utilisée pour les deux paramètres et assurez-vous qu'ils ne se chevauchent pas, empêchant ainsi le backtracking. Cette atténuation réduit la probabilité qu'un attaquant puisse créer un modèle qui déclenche le problème.
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.
Analyses de vulnérabilités et alertes critiques directement dans votre boîte mail.
Le backtracking est le processus qu'un moteur d'expressions régulières suit pour trouver une correspondance. Dans ce cas, une expression régulière mal construite peut entrer dans une boucle de backtracking, en essayant plusieurs combinaisons jusqu'à ce que les ressources du système soient épuisées.
La version 0.1.12 corrige la vulnérabilité en empêchant la génération d'expressions régulières vulnérables au backtracking excessif. La mise à niveau est le moyen le plus sûr d'atténuer le risque.
Si vous ne pouvez pas mettre à niveau immédiatement, appliquez l'atténuation alternative consistant à éviter d'utiliser deux paramètres dans un seul segment de chemin avec des séparateurs autres que des points.
Si vous utilisez une version antérieure à 0.1.12 de path-to-regexp et que vous utilisez des routes avec plusieurs paramètres et des séparateurs complexes, vous êtes probablement vulnérable.
L'atténuation alternative peut avoir un léger impact sur les performances, mais elle est préférable au déni de service causé par la vulnérabilité.
Téléverse ton fichier de dépendances et découvre instantanément si cette CVE et d'autres te touchent.