CVE-2026-109952
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 16 - wyżej niż 16% wszystkich znanych CVE
Streszczenie
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.
Ocena ryzyka
Atakujący może obniżyć poziom zabezpieczeń połączenia i przechwycić hasło użytkownika w postaci czystego tekstu, co prowadzi do przejęcia konta. Może to również obejść wcześniej skonfigurowane zasady bezpieczeństwa.
Rekomendacja
Zaktualizuj FreeRDP do wersji 3.32.0 lub nowszej. Upewnij się, że klient weryfikuje wybór protokołu przez serwer względem włączonych protokołów.
Inne podatności w FreeRDP
Zobacz wszystkie- CVE-2026-23732Wysokie
FreeRDP przed wersją 3.21.0 zawiera podatność w parsowaniu FastGlyph, gdzie długość danych nie jest weryfikowana względem minimalnego rozmiaru wynikającego z wymiarów cx/cy. Złośliwy serwer może wywołać przepełnienie bufora po stronie klienta, prowadząc do awarii (DoS).
- CVE-2026-22856Wysokie
FreeRDP to darmowa implementacja protokołu Remote Desktop Protocol. Przed wersją 3.20.1, wyścig w śledzeniu wątków IRP kanału szeregowego pozwala na użycie po zwolnieniu (use-after-free) w stercie, gdy jeden wątek usuwa wpis z serial->IrpThreads, a inny go czyta. Luka została naprawiona w wersji 3.20.1.
- CVE-2013-4119Wysokie
FreeRDP w wersjach przed 1.1.0-beta+2013071101 pozwala zdalnym atakującym na spowodowanie odmowy usługi poprzez rozłączenie przed zakończeniem procesu uwierzytelniania, co prowadzi do dereferencji wskaźnika NULL i awarii aplikacji.
- CVE-2013-4118Wysokie
FreeRDP w wersjach przed 1.1.0-beta1 pozwala zdalnym atakującym na spowodowanie odmowy usługi poprzez dereferencję wskaźnika NULL, co prowadzi do awarii aplikacji.
- CVE-2014-0250Wysokie
Wielokrotne przepełnienia całkowite w pliku client/X11/xf_graphics.c w FreeRDP mogą pozwolić zdalnym atakującym na wywołanie nieokreślonego wpływu poprzez szerokość i wysokość w funkcjach xf_Pointer_New lub xf_Bitmap_Decompress, co prowadzi do niewłaściwej alokacji pamięci.
- CVE-2026-91949Krytyczne
Serwer FreeRDP w wersjach przed 3.31.0 zawiera podatność obejścia negocjacji protokołu, która pozwala nieuwierzytelnionym atakującym na ustanowienie połączeń RDSTLS pomimo polityki serwera wyłączającej je. Atakujący mogą wysyłać niekompatybilne żądania protokołu, otrzymywać błędy negocjacji, a następnie zakończyć uzgadnianie TLS i wejść w RDSTLS, aby obejść ograniczenia transportu przed uwierzytelnianiem.
- CVE-2026-63633Krytyczne
W FreeRDP przed wersją 3.28.0 funkcja freerdp_dsp_decode_opus wywołuje Stream_EnsureRemainingCapacity na buforze kontekstu, mimo że opus_decode zapisuje dane do bufora dostarczonego przez wywołującego. Złośliwy serwer RDP negocjujący WAVE_FORMAT_OPUS może spowodować zapis dużych ramek poza przydzielony bufor, co prowadzi do uszkodzenia sterty klienta, awarii i potencjalnego wykonania kodu.
- CVE-2026-55194Krytyczne
W FreeRDP przed wersją 3.27.0 funkcja rpc_client_recv_fragment zapewnia pojemność bufora na podstawie tylko deklarowanego przez serwer alloc_hint, a nie rzeczywistej długości StubLength. Złośliwy serwer TS Gateway może wysłać odpowiedź z małym alloc_hint i dużym frag_length, powodując zapis danych poza bufor pdu->s. Może to doprowadzić do awarii klienta i potencjalnego wykonania kodu.
- CVE-2026-55191Krytyczne
W FreeRDP przed wersją 3.27.0 klienci negocjujący RDPGFX AVC444 obliczają rozmiar alokacji YUV444 przy użyciu 32-bitowego mnożenia w avc444_ensure_buffer. Złośliwy serwer RDP może podać wymiary powierzchni, dla których iloczyn piDstStride i padDstHeight zawija się do małej wartości, powodując alokację zbyt małego bufora. Może to doprowadzić do awarii klienta i potencjalnego wykonania kodu.
- CVE-2026-73242Krytyczne
FreeRDP, implementacja protokołu Remote Desktop Protocol, przed wersją 3.30.0 zawiera podatność w funkcji kerberos_DecryptMessage, która nie ogranicza kontrolowanego przez peera pola EC w tokenie GSS Wrap przed użyciem go w offsetach wskaźników IOV. Złośliwy peer RDP może wywołać odczyty poza zakresem i zapisy w miejscu podczas deszyfrowania Kerberos w CredSSP/NLA.
Oryginalny opis (angielski, źródło NVD)
The FreeRDP client 3.0.0 before 3.32.0 does not check a server-selected PROTOCOL_RDSTLS or PROTOCOL_HYBRID_EX against its enabled protocol set in nego_process_negotiation_response(), allowing a security protocol downgrade. A malicious server or man-in-the-middle can select RDSTLS to override /sec:nla pinning, complete authentication with an all-zero cookie, and receive the user's cleartext password in the Client Info PDU.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

