CVE-2026-73102
ŚrednieCVSS 5.7Streszczenie
RustDesk w wersjach od 1.3.9 do 1.4.9 zawiera podatność typu path traversal w kodzie obsługi wklejania plików na macOS. Zdalny peer może zapisywać pliki poza zamierzonym katalogiem docelowym, używając komponentów ścieżki nadrzędnej lub ścieżek bezwzględnych.
Ocena ryzyka
Ryzyko obejmuje możliwość zapisu plików w dowolnych lokalizacjach zapisywalnych przez proces RustDesk, co może prowadzić do nieautoryzowanych zmian w systemie.
Rekomendacja
Zaleca się aktualizację RustDesk do wersji zawierającej commit 6f1eb16, który naprawia tę podatność.
Inne podatności w RustDesk
Zobacz wszystkie- CVE-2026-76840Krytyczne
Przekierowanie schowka w RustDesk dla Windows kopiuje długość dostarczoną przez peera do bufora o stałym rozmiarze bez górnej granicy. Gdy konsument wklejania OLE, taki jak explorer.exe, wywołuje IStream::Read z buforem o rozmiarze cb, funkcja CliprdrStream_Read w libs/clipboard/src/windows/wf_cliprdr.c żąda tej liczby bajtów zdalnego pliku przez cliprdr_send_request_filecontents, a następnie wykonuje CopyMemory(pv, clipboard->req_fdata, clipboard->req_fsize), gdzie req_fsize jest pobierane dosłownie z odpowiedzi CLIPRDR FileContentsResponse od peera i nigdy nie jest ograniczane do cb w całym łańcuchu. Jedyne porównanie długości w funkcji, req_fsize < cb, obsługuje przypadek krótkiego odczytu i jest oceniane po już wykonanym kopiowaniu. Złośliwy lub skompromitowany peer, który odpowiada na mały odczyt zawartości pliku z nadmiernie dużą odpowiedzią, zapisuje dane wybrane przez atakującego poza końcem bufora sterty konsumenta wklejania, gdy lokalny użytkownik wkleja zawartość pliku ze schowka oferowaną przez zdalną stronę.
- CVE-2026-73108Wysokie
RustDesk przed wersją 1.4.7 ma podatność na niekontrolowaną alokację pamięci w BytesCodec. Przed uwierzytelnieniem dekoder ufa długości ładunku w nagłówku ramki i rezerwuje pamięć przed otrzymaniem danych, co pozwala na wyczerpanie pamięci przez wiele połączeń TCP.
- CVE-2026-57850Wysokie
RustDesk przed wersją 1.4.9 nie egzekwuje po stronie serwera zakresu autoryzowanego połączenia sesji. Uwierzytelniony zdalny peer z ograniczonym typem sesji (FileTransfer, PortForward, ViewCamera lub Terminal) może wysyłać komunikaty sterujące i opcje logowania zarezerwowane dla pełnej sesji zdalnej.
- CVE-2026-58056Wysokie
Podatność w RustDesk umożliwia użytkownikowi posiadającemu jedynie autoryzację do transferu plików na wysyłanie zdarzeń klawiatury i myszy oraz dostęp do niechronionych funkcji przechwytywania ekranu. Dzieje się tak, ponieważ komunikaty sterujące są filtrowane na podstawie flag per-capability, a sesja transferu plików nie czyści tych flag po zakończeniu.
Oryginalny opis (angielski, źródło NVD)
RustDesk versions 1.3.9 through 1.4.9 contain a path traversal vulnerability in the macOS clipboard file-paste code path. The application accepts peer-supplied file descriptor names and joins them to the selected target directory without requiring normalized relative paths. A remote peer in an active clipboard file-paste session can use parent-directory components or absolute paths to write files outside the intended target directory at locations writable by the RustDesk process. Commit 6f1eb16 fixes the issue by validating descriptor names and safely joining paths.

