Odebrany

CVE-2026-111551

opublikowano:
modyfikacja:
Ocena CVSS
n/a
Brak oceny

>_ Opis

Tłumaczenie automatyczne – może zawierać nieścisłości.

Kilka ścieżek deserializacji Kafki odczytuje pole rozmiaru lub liczby z danych wejściowych i używa ich bezpośrednio do alokacji tablicy, kolekcji lub buforu bajtów, bez sprawdzania, czy bajty są faktycznie dostępne. Dlatego małe, spreparowane dane wejściowe mogą zadeklarować bardzo duży rozmiar i wymusić alokację wielu gigabajtów. Dotyczy to ścieżek w strumieniach Kafka, ProcessorRecordContext (liczba nagłówków), ChangedDeserializer (długość wartości varint), CombinedKeySchema (długość klucza obcego, która może również dawać rozmiar ujemny), ProcessorMetadata (długość klucza) i dekodowanie przypisania grupy AssignmentInfo. oraz w bibliotece klienta ListDeserializer (używany przez ListSerde).


Wpływ:

Osoba atakująca może wyzwolić zbyt dużą alokację i zgłosić błąd OutOfMemoryError, który powoduje awarię dotkniętego wątku konsumenta lub strumieni Kafka; broker i reszta klastra pozostają nienaruszone. Dostępna powierzchnia zależy od ścieżki: zapisanie spreparowanego rekordu w wewnętrznym dzienniku zmian aplikacji Streams lub tematach dotyczących ponownego partycjonowania albo przesłanie spreparowanych metadanych offsetowych do grupy konsumentów (wewnętrzne ścieżki Streams); pisanie spreparowanego rekordu na dowolny temat czytany przez konsumenta za pomocą ListSerde (ListDeserializer); lub, jako członek grupy konsumentów Streams, zwracanie spreparowanych danych przydziału po wybraniu lidera (AssignmentInfo). Ponieważ spreparowany rekord pozostaje w swoim temacie, błąd może wystąpić ponownie po ponownym uruchomieniu. Limit rozmiaru rekordu (maks.wiadomość.bajtów) nie jest pomocny, ponieważ alokacja zależy od pola rozmiaru, a nie od długości danych wejściowych.


Łagodzenie:

Uaktualnij do Apache Kafka 4.2.2, 4.3.2 lub 4.4.0. Jeśli autoryzacja jest włączona, ogranicz dostęp do zapisu do wewnętrznych tematów i grup konsumentów każdej aplikacji do jej własnego podmiotu zabezpieczeń oraz ogranicz uprawnienia do tworzenia do tematów używanych przez ListSerde.


Rozdzielczość:

Od Apache Kafka 4.2.2, 4.3.2 i 4.4.0: te ścieżki deserializacji sprawdzają zadeklarowany rozmiar w porównaniu z pozostałymi danymi wejściowymi przed przydzieleniem i odrzuceniem danych wejściowych, które nie zostały sprawdzone.

>_ Słabości (CWE)

>_ Referencje

Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.

This product uses the NVD API but is not endorsed or certified by the NVD.

Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.

CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.

NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org