CVE-2026-63117
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 46 - wyżej niż 46% wszystkich znanych CVE
Streszczenie
FreeRDP przed wersją 3.28.0 zawiera podatność, w której uwierzytelniony klient RDP może zareklamować DVI ADPCM z nBlockAlign równym 8 i nChannels równym 2, aby obliczenie `bs` w rdpsnd_server_select_format w channels/rdpsnd/server/rdpsnd_main.c wyniosło zero. Kolejna operacja out_frames modulo `bs` powoduje SIGFPE i kończy proces kanału rdpsnd po stronie serwera. Podatność naprawiono w wersji 3.28.0.
Ocena ryzyka
Ryzyko obejmuje możliwość zdalnego spowodowania awarii procesu serwera RDP, co może prowadzić do przerw w dostępności usług i potencjalnego naruszenia integralności systemu.
Rekomendacja
Zaleca się aktualizację FreeRDP do wersji 3.28.0 lub nowszej, która zawiera poprawkę. Należy również ograniczyć dostęp do serwera RDP tylko dla zaufanych klientó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)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.28.0, an authenticated RDP client can advertise DVI ADPCM with nBlockAlign equal to 8 and nChannels equal to 2 to make the `bs` calculation in rdpsnd_server_select_format in channels/rdpsnd/server/rdpsnd_main.c equal zero. The subsequent out_frames modulo `bs` operation raises SIGFPE and terminates the server-side rdpsnd channel process. This vulnerability fixed in 3.28.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

