CVE-2026-104016
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Podwyższone ryzykoPercentyl 52 - wyżej niż 52% wszystkich znanych CVE
Streszczenie
ProtobufParser przetwarza pola typu string i bytes z prefiksem długości, sprawdzając warunek (_inputPtr + len) <= _inputEnd, a następnie wywołując _finishShortText(len), przy czym oba działania używają 32-bitowej arytmetyki ze znakiem. Gdy atakujący dostarczy varint dekodujący się do długości bliskiej Integer.MAX_VALUE, suma _inputPtr + len przepełnia się do wartości ujemnej, sprawdzenie granic przechodzi, a TextBuffer.expandCurrentSegment(len) wykonuje Arrays.copyOf bez limitu i zgłasza OutOfMemoryError. Parametry maxStringLength i maxDocumentLength nie blokują tej ścieżki.
Ocena ryzyka
Zdalny atakujący może wysłać 33-bajtowy ładunek, który wywoła błąd OutOfMemoryError i awarię przetwarzania, a dostrajanie -Xmx nie łagodzi problemu. Nie są wymagane żadne uprawnienia ani interakcja użytkownika poza możliwością przesłania danych do parsowania.
Rekomendacja
Zaktualizuj bibliotekę Jackson do wersji zawierającej poprawkę dodającą zabezpieczenie przed przepełnieniem w ścieżkach sprawdzania długości stringów. Do czasu wdrożenia poprawki rozważ ograniczenie ekspozycji punktów końcowych przyjmujących dane Protobuf.
Powiązane podatności
- CVE-2026-92190Krytyczne
W Quest Foglight for Databases występuje luka w mechanizmie deserializacji niezaufanych danych w komponencie baseRmiServiceExporter. Nieuwierzytelniony zdalny atakujący może wykonać dowolny kod w kontekście konta SYSTEM.
- CVE-2026-92189Krytyczne
W Quest Foglight for Databases metoda writeTopologySectionToFile nie waliduje ścieżki dostarczonej przez użytkownika przed użyciem jej w operacjach na plikach. Nieuwierzytelniony zdalny atakujący może wykonać dowolny kod w kontekście konta SYSTEM.
- CVE-2026-92188Krytyczne
Moduł ForgeMBeanServerSupport w Quest Foglight for Databases nie wymaga uwierzytelnienia przed udostępnieniem funkcjonalności. Nieuwierzytelniony zdalny atakujący może wykonać dowolny kod w kontekście konta SYSTEM.
- CVE-2026-121597Krytyczne
W TOTOLINK A950RG wersja 4.1.2cu.5268_B20221104 funkcja setAppEasyWizardConfig w pliku /cgi-bin/cstecgi.cgi nieprawidłowo obsługuje argument functionType, co prowadzi do przepełnienia bufora na stosie. Atak można przeprowadzić zdalnie, a publiczny exploit jest dostępny.
- CVE-2026-114549Krytyczne
W usłudze webowej NoMachine nxwebrunner (domyślnie nasłuchującej na porcie TCP 4443) występuje przepełnienie bufora na stercie wynikające z braku walidacji długości danych użytkownika. Nieuwierzytelniony zdalny atakujący może wykonać dowolny kod w kontekście konta usługi.
- CVE-2022-29966Krytyczne
System Emerson Ovation zawiera kilka protokołów pozbawionych uwierzytelniania. Umożliwia to atakującemu zmianę konfiguracji kontrolera lub wywołanie warunku odmowy usługi (DoS).
- CVE-2026-22058Krytyczne
StorageGRID w wersjach 11.3 i nowszych pozwala atakującemu posiadającemu wiedzę o produkcie oraz możliwość komunikacji z siecią Grid Network na określonych portach na wysyłanie nieautoryzowanych żądań.
- CVE-2026-120931Krytyczne
Podatność typu out-of-bounds write w WebGL w Google Chrome na Androidzie w wersjach przed 156.0.8078.47 pozwala zdalnemu atakującemu na wykonanie dowolnego kodu poza piaskownicą za pomocą spreparowanej strony HTML.
- CVE-2026-112354Krytyczne
Interfejs webowy stacji ładowania Etrel INCH AC w wersjach firmware przed 7.1.2 i 8.0.1 zawiera podatność na wbudowane domyślne poświadczenia, co pozwala zdalnym atakującym uzyskać pełny dostęp administratora poprzez logowanie się na fabryczne konto. Atakujący mogą zalogować się przez nieszyfrowany HTTP, aby uzyskać pełną konfigurację ładowarki, tożsamość OCPP ChargePoint oraz szczegóły połączenia CSMS WebSocket, umożliwiając nieautoryzowaną kontrolę administracyjną nad stacją ładowania.
- CVE-2026-95860Krytyczne
W bibliotece node-opcua (implementacja OPC UA dla TypeScript i Node.js) w wersjach od 2.42.0 do 2.180.0 kontrola dostępu na poziomie przestrzeni nazw skonfigurowana przez setDefaultRolePermissions nie jest respektowana dla węzłów bez jawnych uprawnień. Metoda SessionContext.getApplicableRolePermissions odczytuje brakującą lub pustą wartość zamiast skonfigurowanego pola, a wynik null jest traktowany jako zezwolenie. Anonimowy klient sieciowy może w konsekwencji zapisywać zmienne lub wywoływać metody, gdy operator polegał na restrykcyjnych ustawieniach domyślnych.
Oryginalny opis (angielski, źródło NVD)
ProtobufParser parses length-prefixed protobuf string and bytes fields by checking (_inputPtr + len) <= _inputEnd and then, on the fast path, calling _finishShortText(len). Both use 32-bit signed integer arithmetic. When an attacker supplies a varint decoding to a length near Integer.MAX_VALUE, _inputPtr + len overflows to a negative value, the bounds check passes, and _finishShortText(len) reaches TextBuffer.expandCurrentSegment(len), which performs Arrays.copyOf with no cap and throws OutOfMemoryError: Requested array size exceeds VM limit. The JVM refuses arrays larger than Integer.MAX_VALUE - 8 before consulting available heap, so -Xmx tuning does not mitigate the issue. StreamReadConstraints.maxStringLength and maxDocumentLength do not gate this path: a 33-byte payload is far below any document-length cap and the string-length check does not fire before the allocation. This was confirmed empirically against shipping artifacts with maxStringLength, maxDocumentLength and maxNestingDepth all configured. A February 2026 hardening commit added the equivalent overflow guard to the packed-array-length and message-length paths but left the string-length call sites unguarded. No privileges or user interaction beyond the ability to submit data for parsing are required.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

