CVE-2026-4867 in path-to-regexp
Zusammenfassung
von VulDB • 18.06.2026
Auswirkungen:
Es wird ein fehlerhafter regulärer Ausdruck generiert, wenn Sie drei oder mehr Parameter innerhalb eines einzelnen Segments haben, die durch etwas getrennt sind, das kein Punkt (.) ist. Zum Beispiel /:a-:b-:c oder /:a-:b-:c-:d. Der in [email protected] hinzugefügte Backtrack-Schutz verhindert nur Mehrdeutigkeiten für zwei Parameter. Bei drei oder mehr Parametern blockiert der generierte Lookahead keine einzelnen Trennzeichen, sodass Erfassungsgruppen (Capture Groups) überlappen und katastrophales Backtracking verursachen.
Patches:
Upgrade auf [email protected]
Benutzerdefinierte Regex-Muster in Routendefinitionen (z. B. /:a-:b([^-/]+)-:c([^-/]+)) sind nicht betroffen, da sie die standardmäßige Erfassungsgruppe überschreiben.
Workarounds:
Alle Versionen können gepatcht werden, indem für Parameter nach dem ersten in einem einzelnen Segment ein benutzerdefinierter regulärer Ausdruck bereitgestellt wird. Solange der benutzerdefinierte reguläre Ausdruck den Text vor dem Parameter nicht matcht, sind Sie sicher. Ändern Sie beispielsweise /:a-:b-:c in /:a-:b([^-/]+)-:c([^-/]+).
Wenn Pfade nicht umgeschrieben und Versionen nicht aktualisiert werden können, ist eine weitere Alternative die Begrenzung der URL-Länge.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.