path-to-regexp vulnerable to Regular Expression Denial of Service via multiple route parameters (path-to-regexp path-to-regexp)
En bref
- Source
- NVD
- EPSS
- EPSS 0.52 % · centile 44 ()
- État
- PUBLISHED
- Publiée
- Mise à jour
- Attribuée par
- openjs
- Statut NVD
- Analyzed
Rechercher sur…
Description
Impact: A bad regular expression is generated any time you have three or more parameters within a single segment, separated by something that is not a period (.). For example, /:a-:b-:c or /:a-:b-:c-:d. The backtrack protection added in path-to-regexp@0.1.12 only prevents ambiguity for two parameters. With three or more, the generated lookahead does not block single separator characters, so capture groups overlap and cause catastrophic backtracking. Patches: Upgrade to path-to-regexp@0.1.13 Custom regex patterns in route definitions (e.g., /:a-:b([^-/]+)-:c([^-/]+)) are not affected because they override the default capture group. Workarounds: All versions can be patched by providing a custom regular expression for parameters after the first in a single segment. As long as the custom regular expression does not match the text before the parameter, you will be safe. For example, change /:a-:b-:c to /:a-:b([^-/]+)-:c([^-/]+). If paths cannot be rewritten and versions cannot be upgraded, another alternative is to limit the URL length.
Faiblesses (CWE)
- CWE-1333 — Complexité inefficace d'expression régulière (ReDoS)
Références
Scores
| Version | Score | Vecteur | Évalué par |
|---|---|---|---|
| CVSS 3.1 | HIGH 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | openjs |
| CVSS 3.1 | HIGH 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | NVD · ce714d77-add3-4f53-aff5-83d477b104bb (Secondary) |
Avis
- GHSA-37ch-88jc-xwx2 — path-to-regexp vulnerable to Regular Expression Denial of Service via multiple route parameters
- GHSA-9wv6-86v2-598j — path-to-regexp outputs backtracking regular expressions
Références européennes
- ENISA EUVD · EUVD-2026-16273
- GCVE · GCVE-0-2026-4867
Avis du CERT-FR
- CERTFR-2026-AVI-1378 — Multiples vulnérabilités dans les produits IBM · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1256 — Multiples vulnérabilités dans les produits IBM · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1206 — Multiples vulnérabilités dans les produits IBM · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0958 — Multiples vulnérabilités dans les produits IBM · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0901 — Multiples vulnérabilités dans les produits IBM · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0667 — Multiples vulnérabilités dans les produits IBM · cert.ssi.gouv.fr
- CERTFR-2026-AVI-0581 — Multiples vulnérabilités dans MongoDB · cert.ssi.gouv.fr
Configurations affectées (CPE NVD)
cpe:2.3:a:pillarjs:path-to-regexp:*:*:*:*:*:node.js:*:*< 0.1.13
Produits affectés
| Produit | Versions |
|---|---|
| path-to-regexp · path-to-regexp | affected 0 < 0.1.13 |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |