CVE-2026-25997
KrytyczneStreszczenie
FreeRDP to darmowa implementacja protokołu zdalnego pulpitu. Przed wersją 3.23.0 funkcja `xf_clipboard_format_equal` odczytuje zwolnioną pamięć `lastSentFormats`, ponieważ `xf_clipboard_formats_free` (wywoływana z wątku kanału cliprdr podczas automatycznego ponownego połączenia) zwalnia tablicę, podczas gdy wątek zdarzeń X11 równocześnie ją iteruje w `xf_clipboard_changed`, co prowadzi do użycia pamięci po jej zwolnieniu. Wersja 3.23.0 naprawia ten problem.
Ocena ryzyka
Wykorzystanie tej podatności może prowadzić do nieprzewidzianego zachowania aplikacji oraz potencjalnego wycieku danych. Organizacje mogą być narażone na ataki, które mogą wykorzystać tę lukę do uzyskania dostępu do wrażliwych informacji.
Rekomendacja
Zaleca się aktualizację do wersji 3.23.0 lub nowszej, aby usunąć tę podatność. Należy również monitorować systemy pod kątem nieautoryzowanego dostępu i potencjalnych incydentów bezpieczeństwa.
Oryginalny opis (angielski, źródło NVD)
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, `xf_clipboard_format_equal` reads freed `lastSentFormats` memory because `xf_clipboard_formats_free` (called from the cliprdr channel thread during auto-reconnect) frees the array while the X11 event thread concurrently iterates it in `xf_clipboard_changed`, triggering a heap use after free. Version 3.23.0 fixes the issue.

