{"id":11975,"date":"2026-09-04T18:54:00","date_gmt":"2026-09-04T10:54:00","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-80578"},"modified":"2026-09-04T18:54:00","modified_gmt":"2026-09-04T10:54:00","slug":"cve-2026-80578","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-80578","title":{"rendered":"CVE-2026-80578 [HIGH] &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nfbdev: core: Fix poin"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>fbdev: core: Fix pointer desynchronization in fb_io_read()<\/p>\n<p>In fb_io_read(), if copy_to_user() performs a partial copy (e.g., due to<br \/>\na faulty user buffer), the loop adjusts the chunk size &#8216;c&#8217; and updates<br \/>\nthe remaining &#8216;count&#8217;. However, the hardware &#8216;src&#8217; pointer has already<br \/>\nbeen eagerly advanced by the original chunk size.<\/p>\n<p>If the loop is allowed to continue, the read will resume from an<br \/>\nincorrect, over-advanced offset. Since the remaining &#8216;count&#8217; was only<br \/>\ndecremented by the successful bytes, this desynchronization causes the<br \/>\nnext iterations to execute more hardware reads than originally bounded,<br \/>\neventually leading to out-of-bounds I\/O reads.<\/p>\n<p>Fix this by breaking out of the loop immediately upon a partial<br \/>\ncopy_to_user(). A partial copy indicates a faulty user buffer, making<br \/>\nsubsequent read attempts futile. Breaking out ensures we return the<br \/>\nnumber of successfully read bytes without risking out-of-bounds hardware<br \/>\naccesses in subsequent mismatched iterations.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>fbdev: core: Fix pointer desynchronization in fb_io_read()<\/p>\n<p>In fb_io_read(), if copy_to_user() performs a partial copy (e.g., due t<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-11975","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/11975","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=11975"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=11975"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=11975"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}