{"id":11392,"date":"2026-09-04T18:53:13","date_gmt":"2026-09-04T10:53:13","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-76840"},"modified":"2026-09-04T18:53:13","modified_gmt":"2026-09-04T10:53:13","slug":"cve-2026-76840","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-76840","title":{"rendered":"CVE-2026-76840 [CRITICAL] &#8211; RustDesk&#8217;s Windows clipboard redirection copies a peer-supplied length into a fixed-size c"},"content":{"rendered":"<p>RustDesk&#8217;s Windows clipboard redirection copies a peer-supplied length into a fixed-size caller buffer without an upper bound check. When an OLE paste consumer such as explorer.exe calls IStream::Read with a buffer of cb bytes, CliprdrStream_Read in libs\/clipboard\/src\/windows\/wf_cliprdr.c requests that many bytes of a remote file through cliprdr_send_request_filecontents and then executes CopyMemory(pv, clipboard-&gt;req_fdata, clipboard-&gt;req_fsize), where req_fsize is taken verbatim from the peer&#8217;s CLIPRDR FileContentsResponse by wf_cliprdr_server_file_contents_response (req_fsize = fileContentsResponse-&gt;cbRequested) and is never clamped to cb anywhere in the chain. The function&#8217;s only length comparison, req_fsize &lt; cb, handles the short-read case and is evaluated after the copy has already occurred. A malicious or compromised peer that answers a small file-contents read with an oversized response therefore writes attacker-chosen data past the end of the paste consumer&#039;s heap buffer when the local user pastes clipboard file contents offered by the remote side. The file is a fork of FreeRDP&#039;s client\/Windows\/wf_cliprdr.c, where the same defect is CVE-2026-68579, fixed in FreeRDP 3.30.0.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>RustDesk&#8217;s Windows clipboard redirection copies a peer-supplied length into a fixed-size caller buffer without an upper bound check. When an OLE paste consumer such as explorer.exe calls IStream::Read<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-11392","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/11392","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=11392"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=11392"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=11392"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}