CVE-2026-55192
WysokieCVSS 8.2Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 39 - wyżej niż 39% wszystkich znanych CVE
Streszczenie
W FreeRDP przed wersją 3.27.0 backendy dekodera H.264 mogą zwracać płaszczyzny YUV o rozmiarach z bitstreamu bez porównania z wymiarami powierzchni RDPGFX. Złośliwy serwer RDP może dostarczyć bitstream AVC420 lub AVC444 o mniejszej klatce niż negocjowana powierzchnia, powodując odczyt poza przydzielone płaszczyzny. Może to ujawnić pamięć klienta lub doprowadzić do awarii.
Ocena ryzyka
Złośliwy serwer RDP może uzyskać dostęp do pamięci klienta lub spowodować awarię, co narusza poufność i dostępność.
Rekomendacja
Zaktualizuj FreeRDP do wersji 3.27.0 lub nowszej, która zawiera poprawkę.
Inne podatności w FreeRDP
Zobacz wszystkie- CVE-2026-109953Średnie
FreeRDP w wersji od 3.0.0 do 3.32.0 zawiera podatność niewystarczającej ochrony poświadczeń, w której opcja /restricted-admin nie tłumi delegowania poświadczeń CredSSP, wysyłając hasło w postaci czystego tekstu do serwera RDP. Przejęty lub będący w środku ataku host docelowy może zdekodować TSPasswordCreds i Client Info PDU, aby uzyskać możliwe do ponownego użycia wartości administracyjnej domeny, nazwy użytkownika i hasła.
- CVE-2026-109952Średnie
Klient FreeRDP w wersji od 3.0.0 do 3.32.0 nie sprawdza wybranego przez serwer protokołu PROTOCOL_RDSTLS lub PROTOCOL_HYBRID_EX względem zestawu włączonych protokołów w nego_process_negotiation_response(), co pozwala na obniżenie poziomu protokołu bezpieczeństwa. Złośliwy serwer lub atakujący w środku może wybrać RDSTLS, aby obejść przypięcie /sec:nla, zakończyć uwierzytelnianie z zerowym plikiem cookie i otrzymać hasło użytkownika w postaci czystego tekstu w Client Info PDU.
- CVE-2026-109951Średnie
FreeRDP w wersji od 3.17.1 do 3.32.0 zawiera podatność przepełnienia bufora sterty (heap buffer over-read) w DynvcTrackerHandleCreateBack obsługi kanału freerdp-proxy DRDYNVC, która pozwala złośliwym serwerom RDP na odczyt pamięci sterty poza granicami. Atakujący mogą wysłać CREATE_REQUEST_PDU, którego nazwa kanału nie zawiera bajtu NUL, powodując nieograniczony odczyt snprintf, który wycieka pamięć do logów proxy lub powoduje awarię procesu.
- CVE-2026-109950Średnie
FreeRDP w wersjach od 3.0.0 do 3.32.0 zawiera podatność typu heap out-of-bounds read. Złośliwy RD Gateway może ustawić MsgBytes znacznie większe niż ActualCount w komunikatach consent lub service, co powoduje odczyt poza zaalokowanym buforem podczas konwersji UTF-8 i awarię klienta.
- CVE-2026-109949Średnie
FreeRDP w wersjach od 3.0.0 do 3.32.0 zawiera niewłaściwe ograniczenie liczby prób uwierzytelnienia w implementacji wirtualnej karty inteligentnej GIDS, gdzie licznik ponownych prób PIN jest przechowywany per uchwyt. Złośliwy serwer RDP może wyczerpać licznik za pomocą VERIFY APDU, a następnie zresetować próby nowym SCardConnect, umożliwiając nieograniczone brute-force PIN-u.
- CVE-2026-109948Średnie
FreeRDP w wersjach od 3.0.0 do 3.32.0 zawiera podatność ujawnienia niezainicjalizowanej pamięci w funkcji smartcard_Transmit_Call. Złośliwy serwer RDP może wysłać żądanie SCardTransmit z nieprawidłowym uchwytem karty i niezerową długością odbioru, powodując serializację do 66 560 bajtów niezainicjalizowanej pamięci sterty.
- CVE-2026-109947Średnie
FreeRDP w wersjach od 3.20.1 do 3.32.0 zawiera podatność niekontrolowanej alokacji zasobów. Złośliwy serwer RDP może wysłać żądanie IRP_MJ_READ z Length 0xffffffff, powodując alokację około 4 GiB wyzerowanej pamięci w kompilacjach 64-bitowych lub niedostatecznie zarezerwowany bufor w kompilacjach 32-bitowych.
- CVE-2026-109946Średnie
FreeRDP w wersjach od 3.11.0 do 3.32.0 nie sprawdza, czy szerokości regionów AVC444 i AVC444v2 są parzyste przed konwersją YUV444. Nieparzysta szerokość prowadzi do asercji i przerwania działania klienta po negocjacji RDPGFX AVC444.
- CVE-2026-109945Średnie
FreeRDP w wersjach od 3.0.0 do 3.32.0 zawiera podatność use-after-free w emulacji karty inteligentnej, gdy SCARD_IOCTL_DISCONNECT i SCARD_IOCTL_TRANSMIT działają równocześnie na tym samym uchwycie karty. Złośliwy serwer RDP może nakładać te IRP-y przez osobne wątki kontekstu, powodując zwolnienie i ponowne użycie SCardHandle oraz uszkodzenie sterty i zakończenie procesu klienta.
- CVE-2026-109944Średnie
FreeRDP w wersjach od 3.0.0 do 3.32.0 nie usuwa uchwytów kart, gdy Emulate_SCardReleaseContext zwalnia kontekst emulacji karty inteligentnej. Późniejsze Emulate_SCardTransmit odwołuje się do usuniętego kontekstu nadrzędnego i osiąga kończącą asercję WINPR_ASSERT, co pozwala złośliwemu serwerowi RDP na awarię klienta.
Oryginalny opis (angielski, źródło NVD)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.27.0, FreeRDP H.264 decoder backends can return YUV planes sized from the bitstream without comparing the decoded width and height to the RDPGFX surface dimensions used to validate region rectangles. A malicious RDP server can provide an AVC420 or AVC444 bitstream whose decoded frame is smaller than the negotiated surface, causing yuv420_context_decode and the YUV-to-RGB conversion paths to read beyond the decoder-owned planes in libfreerdp/codec/h264.c and the selected H.264 backend. This can disclose client memory or crash the client. This issue is fixed in version 3.27.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

