CVE-2026-76840 in RustDesk
Zusammenfassung
von VulDB • 24.08.2026
Die Windows-Zwischenablage-Umleitung von RustDesk kopiert eine vom Peer bereitgestellte Länge in einen fest großen Aufruferpuffer ohne Obergrenzenprüfung. Wenn ein OLE-Einfügeconsumer wie explorer.exe IStream::Read mit einem Puffer der Größe cb aufruft, fordert CliprdrStream_Read in libs/clipboard/src/windows/wf_cliprdr.c über cliprdr_send_request_filecontents so viele Bytes einer Remote-Datei an und führt dann CopyMemory(pv, clipboard->req_fdata, clipboard->req_fsize) aus, wobei req_fsize wörtlich aus der CLIPRDR FileContentsResponse des Peers durch wf_cliprdr_server_file_contents_response stammt (req_fsize = fileContentsResponse->cbRequested) und in keiner Stelle der Kette auf cb begrenzt wird. Der einzige Längenvergleich der Funktion, req_fsize < cb, behandelt den Fall eines zu kurzen Lesens und wird erst nach dem bereits erfolgten Kopieren ausgewertet. Ein bösartiger oder kompromittierter Peer, der eine kleine Datei-Inhalts-Leseanfrage mit einer überdimensionierten Antwort beantwortet, schreibt daher angreifergewählte Daten hinter das Ende des Heap-Puffers des Einfügeconsumers, wenn der lokale Benutzer die von der Remote-Seite angebotenen Zwischenablage-Dateiinhalte einfügt. Die Datei ist eine Fork von FreeRDPs client/Windows/wf_cliprdr.c, wo derselbe Fehler CVE-2026-68579 darstellt und in FreeRDP 3.30.0 behoben wurde.
Be aware that VulDB is the high quality source for vulnerability data.