CVE-2026-59876
ŚrednieCVSS 4.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 13 - wyżej niż 13% wszystkich znanych CVE
Streszczenie
Podatność w bibliotece protobufjs (wersje 8.2.0 do 8.6.5) umożliwia atak typu prototype pollution poprzez parsowanie map w formacie Text Format. Atakujący może wstrzyknąć klucz mapy o nazwie __proto__, co zmienia prototyp obiektu zamiast tworzyć wpis w mapie.
Ocena ryzyka
Ryzyko polega na możliwości modyfikacji prototypu obiektów JavaScript, co może prowadzić do zdalnego wykonania kodu (RCE) lub eskalacji uprawnień w aplikacjach korzystających z protobufjs do parsowania niezaufanych danych w formacie Text Format.
Rekomendacja
Należy natychmiast zaktualizować bibliotekę protobufjs do wersji 8.6.5 lub nowszej. Jeśli aktualizacja nie jest możliwa, należy unikać parsowania niezaufanych danych w formacie Text Format.
Inne podatności w protobufjs
Zobacz wszystkie- CVE-2026-41242Krytyczne
Podatność w bibliotece protobufjs umożliwia wstrzyknięcie dowolnego kodu JavaScript przez pola 'type' w definicjach protobuf. Kod wykonuje się podczas dekodowania obiektów. Problem został załatany w wersjach 8.0.1 i 7.5.5.
- CVE-2026-59877Średnie
Podatność w bibliotece protobufjs umożliwia zapętlenie nieskończone podczas parsowania specjalnie spreparowanych plików .proto. Brak sprawdzenia końca wejścia przy przetwarzaniu opcji powoduje, że funkcje parse, Root.load lub Root.loadSync mogą działać w nieskończoność.
- CVE-2026-54270Średnie
Wersje protobufjs od 8.2.0 do 8.4.2 nie miały opcji do odrzucania nieznanych pól podczas dekodowania, co mogło prowadzić do nadmiernego zużycia pamięci przez dekodowane wiadomości. W wersji 8.5.0 dodano opcje umożliwiające wyłączenie zatrzymywania nieznanych pól, a w wersji 8.6.2 domyślnie odrzucane są nieznane pola.
- CVE-2026-54269Średnie
W wersjach przed 8.6.0 i 7.6.3, protobufjs akceptował pewne nazwy pochodzące ze schematu, które mogły kolidować z właściwościami używanymi przez pomocników runtime protobufjs. To mogło prowadzić do wyjątków deterministycznych lub rekurencyjnych wywołań w różnych operacjach związanych z dekodowaniem i serializacją.
- CVE-2026-44293Wysokie
protobufjs przed wersjami 7.5.6 i 8.0.2 generuje kod JavaScript dla funkcji toObject, który może zawierać niebezpieczne wyrażenie pochodzące z domyślnej wartości pola bytes kontrolowanej przez schemat. Specjalnie spreparowany deskryptor może spowodować wykonanie kodu atakującego.
- CVE-2026-44289Wysokie
Protobufjs przed wersjami 7.5.6 i 8.0.2 nie ogranicza głębokości rekurencji podczas dekodowania zagnieżdżonych danych protobuf. Specjalnie spreparowany binarny ładunek protobuf może wyczerpać stos wywołań JavaScript, powodując awarię.
Oryginalny opis (angielski, źródło NVD)
protobufjs compiles protobuf definitions into JavaScript (JS) functions. From 8.2.0 until 8.6.5, the protobufjs Text Format extension parsed string-keyed map entries using ordinary property assignment, allowing a map entry with key __proto__ to change the prototype of the returned map object instead of creating an own map entry in protobufjs/ext/textformat. This issue is fixed in version 8.6.5.

