CVE-2026-48502
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 15 - wyżej niż 15% wszystkich znanych CVE
Streszczenie
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.
Ocena ryzyka
Atakujący może wykorzystać tę podatność do spowodowania awarii procesu hosta, co może prowadzić do przerwy w dostępności usług. To stwarza ryzyko dla stabilności aplikacji korzystających z tej biblioteki.
Rekomendacja
Zaleca się aktualizację do wersji 2.5.301 lub 3.1.7, aby usunąć tę podatność. Należy również przeprowadzić audyt kodu, aby upewnić się, że nie występują inne podobne problemy.
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, MessagePackReader.ReadDateTime() can allocate stack memory based on an attacker-controlled MessagePack extension length. In the slow path for timestamp extension parsing, the computed tokenSize includes the extension body length from the wire and is used in a stackalloc operation before the extension length is validated as one of the valid timestamp sizes. A very small payload can claim a large timestamp extension body and cause a stack allocation large enough to trigger an uncatchable StackOverflowException, terminating the host process. This vulnerability is fixed in 2.5.301 and 3.1.7.

