Katalog CVE

CVE-2026-117680

NiskieCVSS 2.1
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.19%

Percentyl 9 - wyżej niż 9% wszystkich znanych CVE

Streszczenie

W bibliotece lud jsv (wersje od 0.1.0 przed 0.26.2) występuje błąd niewłaściwego sprawdzania warunków wyjątkowych w słowach kluczowych pattern i patternProperties. Funkcja JSV.Helpers.RegexExt.bounded_match?/2 wywołuje :re.run/3 bez :report_errors, przez co wyczerpanie budżetu backtrackingu zwraca :nomatch identycznie jak rzeczywisty brak dopasowania, umożliwiając obejście walidacji schematu. Podatne są tylko schematy, których wyrażenia regularne eksplorują katastrofalną gałąź przed gałęzią dopasowującą.

Ocena ryzyka

Nieuwierzytelniony zdalny atakujący może obejść walidację schematu JSON, dostarczając dane, które powinny zostać odrzucone, co może prowadzić do nieoczekiwanego zachowania aplikacji lub obejścia kontroli bezpieczeństwa. Wpływ zależy od tego, jak aplikacja wykorzystuje wyniki walidacji.

Rekomendacja

Zaktualizuj bibliotekę jsv do wersji 0.26.2 lub nowszej, która zawiera poprawkę. Przeanalizuj schematy pod kątem wyrażeń regularnych podatnych na katastrofalny backtracking.

Powiązane podatności

Oryginalny opis (angielski, źródło NVD)

Improper Check for Unusual or Exceptional Conditions vulnerability in the pattern and patternProperties keywords in lud jsv allows an unauthenticated remote attacker to bypass schema validation via a string that matches a schema regex only after heavy backtracking. JSV.Helpers.RegexExt.bounded_match?/2 runs schema regexes with a backtracking budget but calls :re.run/3 without :report_errors, so a match that exhausts the budget returns the same :nomatch as a real non-match. A key that matches a patternProperties regex is then checked against additionalProperties or not at all, and a string that matches a not subschema with a pattern is accepted. Before the budget existed, Regex.match?/2 failed the same way at Erlang's default match limit. Only schemas whose regex explores a catastrophic branch before the branch that matches are affected. The attacker controls the data, not the schema, and linear patterns never exhaust the budget. This issue affects jsv: from 0.1.0 before 0.26.2.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS