{"id":17272,"date":"2026-09-05T02:30:56","date_gmt":"2026-09-04T18:30:56","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-80768"},"modified":"2026-09-05T02:30:56","modified_gmt":"2026-09-04T18:30:56","slug":"cve-2026-80768","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-80768","title":{"rendered":"CVE-2026-80768 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nHID: ft260: fix stack"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>HID: ft260: fix stack-use-after-return write in I2C read race<\/p>\n<p>ft260_i2c_read() points dev-&gt;read_buf at a caller-supplied buffer<br \/>\n(often an on-stack variable), arms a completion and waits up to five<br \/>\nseconds for the device to return the data. The HID input callback<br \/>\nft260_raw_event() runs in the input\/IRQ path, independent of the<br \/>\ndev-&gt;lock mutex held by the read path, and copies the device-supplied<br \/>\npayload into dev-&gt;read_buf after a plain NULL check.<\/p>\n<p>These two paths share read_buf, read_idx and read_len with no<br \/>\nserialization. If the device delays its response until the read<br \/>\ntimes out, ft260_i2c_read() resets the controller, clears read_buf<br \/>\nand returns, unwinding the stack frame the buffer lived in. A<br \/>\nresponse that arrives at that moment lets ft260_raw_event() pass the<br \/>\nNULL check and then memcpy() the device-controlled payload into the<br \/>\nnow-freed stack location, a bounded but attacker-influenced<br \/>\nstack-use-after-return write triggerable by malicious or<br \/>\nmalfunctioning hardware.<\/p>\n<p>Add a dedicated spinlock that serializes every access to read_buf,<br \/>\nread_idx and read_len. ft260_raw_event() now holds it across the<br \/>\nNULL check, the memcpy and the index update, while the read path<br \/>\ntakes it when arming and when clearing the buffer, so the teardown<br \/>\ncan no longer slip between the check and the copy.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>HID: ft260: fix stack-use-after-return write in I2C read race<\/p>\n<p>ft260_i2c_read() points dev-&gt;read_buf at a caller-supplied buffer<br \/>\n(o<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-17272","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/17272","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=17272"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=17272"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=17272"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}