CVE-2019-20454
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Wysokie ryzykoPercentyl 75 - wyżej niż 75% wszystkich znanych CVE
Streszczenie
W bibliotece PCRE przed wersją 10.34 wykryto błąd odczytu poza granicami bufora, gdy wzorzec \X jest kompilowany przez JIT i używany do dopasowywania specjalnie spreparowanych danych w trybie nie-UTF. Błąd występuje w funkcji do_extuni_no_utf w pliku pcre2_jit_compile.c.
Ocena ryzyka
Aplikacje używające PCRE do przetwarzania niezaufanych danych wejściowych mogą zostać zmuszone do awarii przez atakującego, co prowadzi do odmowy usługi.
Rekomendacja
Zaktualizuj bibliotekę PCRE do wersji 10.34 lub nowszej i przeanalizuj aplikacje przetwarzające niezaufane dane wejściowe pod kątem użycia PCRE.
Inne podatności w PCRE
Zobacz wszystkie- CVE-2017-11164Wysokie
W bibliotece PCRE w wersji 8.41 funkcja OP_KETRMAX w funkcji dopasowującej w pliku pcre_exec.c pozwala na wyczerpanie stosu (niekontrolowana rekurencja) podczas przetwarzania specjalnie spreparowanego wyrażenia regularnego.
- CVE-2014-9769Wysokie
W PCRE 8.35 występuje problem z optymalizacją zagnieżdżonych alternatyw, co może prowadzić do usunięcia usługi poprzez uszkodzenie pamięci stosu. Atakujący zdalnie mogą wykorzystać tę podatność, wysyłając odpowiednio skonstruowany ciąg.
- CVE-2015-8395Wysokie
PCRE przed wersją 8.38 niewłaściwie obsługuje niektóre odniesienia, co pozwala zdalnym atakującym na spowodowanie odmowy usługi lub potencjalnie innego nieokreślonego wpływu za pomocą spreparowanego wyrażenia regularnego.
- CVE-2015-8392Wysokie
PCRE przed wersją 8.38 niewłaściwie obsługuje niektóre przypadki podciągu (?|, co pozwala zdalnym atakującym na spowodowanie odmowy usługi (niezamierzona rekurencja i przepełnienie bufora) lub potencjalnie inne nieokreślone skutki za pomocą spreparowanego wyrażenia regularnego.
- CVE-2015-8388Wysokie
PCRE przed wersją 8.38 niewłaściwie obsługuje wzorzec /(?=di(?<=(?1))|(?=(.))))/ oraz pokrewne wzorce z niepasującą zamykającą nawiasem, co pozwala zdalnym atakującym na wywołanie odmowy usługi (przepełnienie bufora) lub potencjalnie inne nieokreślone skutki za pomocą spreparowanego wyrażenia regularnego.
- CVE-2015-8387Wysokie
PCRE przed wersją 8.38 niewłaściwie obsługuje wywołania podprogramów (?123) oraz związane z nimi wywołania, co pozwala zdalnym atakującym na spowodowanie odmowy usługi (przepełnienie całkowite) lub potencjalnie inny nieokreślony wpływ za pomocą spreparowanego wyrażenia regularnego.
- CVE-2015-2328Wysokie
PCRE przed wersją 8.36 niewłaściwie obsługuje wzorzec /((?(R)a|(?1)))+/ oraz pokrewne wzorce z określoną rekurencją, co pozwala zdalnym atakującym na spowodowanie awarii systemu (błąd segmentacji) lub potencjalnie inny nieokreślony wpływ za pomocą spreparowanego wyrażenia regularnego.
- CVE-2020-14155Średnie
Biblioteka libpcre w PCRE przed wersją 8.44 zawiera podatność na przepełnienie liczby całkowitej. Problem występuje przy użyciu dużej liczby po podciągu (?C w wyrażeniu regularnym.
- CVE-2017-13846Krytyczne
W niektórych produktach Apple, w tym macOS przed wersją 10.13.1, odkryto problem związany z produktem zewnętrznym 'PCRE'. Wersje przed 8.40 umożliwiają zdalnym atakującym spowodowanie odmowy usługi (awaria aplikacji) lub potencjalnie inne nieokreślone skutki.
- CVE-2016-1283Krytyczne
Funkcja pcre_compile2 w PCRE 8.38 niewłaściwie obsługuje wzorce z nazwanymi podgrupami, co może prowadzić do przepełnienia bufora na stercie. Atakujący zdalnie mogą wykorzystać tę podatność, wysyłając odpowiednio skonstruowany wyrażenie regularne.
Oryginalny opis (angielski, źródło NVD)
An out-of-bounds read was discovered in PCRE before 10.34 when the pattern \X is JIT compiled and used to match specially crafted subjects in non-UTF mode. Applications that use PCRE to parse untrusted input may be vulnerable to this flaw, which would allow an attacker to crash the application. The flaw occurs in do_extuni_no_utf in pcre2_jit_compile.c.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

