CVE-2026-48516
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 14 - wyżej niż 14% wszystkich znanych CVE
Streszczenie
W bibliotece MessagePack dla C# występuje podatność, która dotyczy konstrukcji wewnętrznego słownika z domyślnym porównywaczem równości. Wersje przed 2.5.301 i 3.1.7 są narażone na atak typu denial of service z wykorzystaniem kolizji haszów.
Ocena ryzyka
Organizacje mogą doświadczyć ataków denial of service, które mogą prowadzić do znacznych przestojów w działaniu aplikacji, nawet jeśli zastosowano zabezpieczenia dotyczące nieufnych danych.
Rekomendacja
Zaleca się aktualizację do wersji 2.5.301 lub 3.1.7, aby usunąć tę podatność i zabezpieczyć aplikacje przed potencjalnymi atakami.
Inne podatności w MessagePack for C#
Zobacz wszystkie- CVE-2026-48509Krytyczne
MessagePack dla C# przed wersjami 2.5.301 i 3.1.7 używa domyślnych opcji serializacji, które mogą prowadzić do ataków typu denial-of-service. Domyślny konstruktor MessagePackInputFormatter() jest niebezpieczny, ponieważ może narażać aplikacje na ataki kolizji haszy w modelach przypominających słowniki.
- CVE-2026-48517Wysokie
W bibliotece MessagePack dla C# występuje podatność związana z deserializacją typów, która nie sprawdza rekurencyjnie typów elementów tablicy ani argumentów typów generycznych. To może prowadzić do sytuacji, w której niebezpieczny typ, który powinien być zablokowany, może zostać zdeserializowany, jeśli jest opakowany w tablicę lub typ generyczny.
- CVE-2026-48515Wysokie
MessagePack dla C# przed wersjami 2.5.301 i 3.1.7 ma podatność, która pozwala na alokację dużych tablic wielowymiarowych przed walidacją danych. W wyniku tego, mały ładunek może zadeklarować duże wymiary, co prowadzi do nieefektywnego wykorzystania pamięci.
- CVE-2026-48514Wysokie
W bibliotece MessagePack dla C# przed wersjami 2.5.301 i 3.1.7 występuje podatność, która pozwala na odczytanie długości bajtów kontrolowanej przez atakującego z ładunku rozszerzenia. W wyniku tego, możliwe jest przydzielenie dużej tablicy T[] bez odpowiedniej walidacji, co może prowadzić do problemów z alokacją pamięci.
- CVE-2026-48513Wysokie
W bibliotece MessagePack dla C# przed wersjami 2.5.301 i 3.1.7 występuje podatność związana z deserializacją unii, która nie przestrzega ograniczenia głębokości obiektów. Deserializatory generowane w czasie wykonywania nie wywołują odpowiednich kroków zabezpieczających, co prowadzi do potencjalnych problemów z bezpieczeństwem.
- CVE-2026-48512Wysokie
MessagePack for C# przed wersjami 2.5.301 i 3.1.7 zawiera wielokrotne ścieżki rekurencyjne w komponentach konwersji JSON, które nie egzekwują limitu głębokości. Te ścieżki mogą prowadzić do wyczerpania stosu procesora i wywołania nieuchwytnego wyjątku StackOverflowException.
- CVE-2026-48511Wysokie
MessagePack dla C# ma podatność w metodzie Deserializacji ExpandoObjectFormatter, która może prowadzić do znacznego obciążenia CPU i pamięci w przypadku dużych map kontrolowanych przez atakującego. Problem ten występuje przed wersjami 2.5.301 i 3.1.7.
- CVE-2026-48510Wysokie
MessagePack dla C# ma podatność, która pozwala na nieprawidłowe alokacje pamięci podczas dekompresji danych Lz4Block lub Lz4BlockArray. Przed wersjami 2.5.301 i 3.1.7, nie weryfikowano poprawności danych skompresowanych przed alokacją buforów wyjściowych.
- CVE-2026-48506Wysokie
MessagePack dla C# ma podatność, która pozwala na rekurencyjne zstępowanie w głąb zagnieżdżonych tablic i map bez odpowiednich kontroli głębokości. Może to prowadzić do nieograniczonej rekurencji i wyjątku StackOverflow.
- CVE-2026-48502Wysokie
W bibliotece MessagePack dla C# przed wersjami 2.5.301 i 3.1.7, metoda MessagePackReader.ReadDateTime() może alokować pamięć na stosie na podstawie długości rozszerzenia kontrolowanej przez atakującego. W przypadku analizy rozszerzenia znaczników czasowych, długość ciała rozszerzenia nie jest weryfikowana przed alokacją pamięci, co może prowadzić do wystąpienia wyjątku StackOverflowException.
Oryginalny opis (angielski, źródło NVD)
MessagePack for C# is a MessagePack serializer for C#. Prior to 2.5.301 and 3.1.7, InterfaceLookupFormatter<TKey,TElement> constructs an internal Dictionary<TKey, IGrouping<TKey,TElement>> with the default equality comparer instead of the security-aware comparer supplied by options.Security.GetEqualityComparer<TKey>(). This formatter omission allows hash-collision CPU denial of service against ILookup<TKey,TElement> even when the application has opted into the untrusted-data security posture This vulnerability is fixed in 2.5.301 and 3.1.7.

