Katalog CVE

CVE-2026-67298

WysokieCVSS 7.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.38%

Percentyl 31 - wyżej niż 31% wszystkich znanych CVE

Streszczenie

FreeRDP w wersjach 3.28.0 i wcześniejszych zawiera przepełnienie bufora sterty w obsłudze kanału RAIL po stronie serwera (rail_server_handle_messages() w channels/rail/server/rail_main.c). Podczas przetwarzania nagłówka PDU RAIL, kod odejmuje RAIL_PDU_HEADER_LENGTH od kontrolowanego przez rówieśnika pola orderLength bez uprzedniego sprawdzenia, czy orderLength jest co najmniej równe długości nagłówka. Dla wartości orderLength 0..3 powoduje to niedomiar liczby całkowitej bez znaku do bardzo dużego rozmiaru, co omija sprawdzenie pojemności Stream_EnsureRemainingCapacity() (z powodu zawijania arytmetyki wskaźników), a następnie jest przekazywane do WTSVirtualChannelRead(), co skutkuje zapisem poza zakresem sterty. Złośliwy lub skompromitowany klient RDP może to wykorzystać do uszkodzenia sterty i awarii serwera. Naprawione w FreeRDP 3.29.0.

Ocena ryzyka

Atakujący może zdalnie spowodować awarię serwera RDP, co prowadzi do odmowy usługi (DoS) dla wszystkich użytkowników.

Rekomendacja

Zaktualizuj FreeRDP do wersji 3.29.0 lub nowszej.

Inne podatności w FreeRDP

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

FreeRDP versions 3.28.0 and earlier contain a heap buffer overflow in the server-side RAIL channel handler (rail_server_handle_messages() in channels/rail/server/rail_main.c). When processing a RAIL PDU header, the code subtracts RAIL_PDU_HEADER_LENGTH from the peer-controlled orderLength field without first verifying orderLength is at least the header length. For orderLength values 0..3 this causes an unsigned integer underflow to a very large size, which bypasses the Stream_EnsureRemainingCapacity() capacity check (due to pointer arithmetic wraparound) and is then passed to WTSVirtualChannelRead(), resulting in an out-of-bounds heap write. A malicious or compromised RDP client can exploit this to corrupt the heap and crash the server. Fixed in FreeRDP 3.29.0.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS