{"id":14869,"date":"2026-09-04T19:02:16","date_gmt":"2026-09-04T11:02:16","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-53401"},"modified":"2026-09-04T19:02:16","modified_gmt":"2026-09-04T11:02:16","slug":"cve-2026-53401","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-53401","title":{"rendered":"CVE-2026-53401 [HIGH] &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nfbdev: omap2: fix use"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>fbdev: omap2: fix use-after-free in omapfb_mmap<\/p>\n<p>omapfb_mmap() has a race condition with OMAPFB_SETUP_PLANE ioctl that<br \/>\ncan lead to use-after-free:<\/p>\n<p>The fb_mmap() entry point holds mm_lock but not lock (fb_info-&gt;lock),<br \/>\nwhile ioctl handlers like OMAPFB_SETUP_PLANE hold lock but not mm_lock.<br \/>\nThis allows concurrent execution.<\/p>\n<p>In omapfb_mmap():<br \/>\n1. rg = omapfb_get_mem_region(ofbi-&gt;region);      \/\/ Get old region ref<br \/>\n2. start = omapfb_get_region_paddr(ofbi);          \/\/ Read from NEW region<br \/>\n3. len = fix-&gt;smem_len;                             \/\/ Read from NEW region<br \/>\n4. vm_iomap_memory(vma, start, len);               \/\/ Map NEW region memory<br \/>\n5. atomic_inc(&amp;rg-&gt;map_count);                      \/\/ Increment OLD region!<\/p>\n<p>Concurrently, OMAPFB_SETUP_PLANE can:<br \/>\n&#8211; Reassign ofbi-&gt;region = new_rg<br \/>\n&#8211; Update fix-&gt;smem_len<br \/>\n&#8211; OMAPFB_SETUP_MEM then checks NEW region&#8217;s map_count (0!) and frees it<\/p>\n<p>This leaves userspace with a mapping to freed physical memory.<\/p>\n<p>The fix is to read all required values (start, len) from the same<br \/>\nregion reference (rg) that will have its map_count incremented,<br \/>\npreventing the region from being freed while still mapped.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>fbdev: omap2: fix use-after-free in omapfb_mmap<\/p>\n<p>omapfb_mmap() has a race condition with OMAPFB_SETUP_PLANE ioctl that<br \/>\ncan lead to <\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-14869","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/14869","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=14869"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=14869"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=14869"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}