{"id":29074,"date":"2026-09-25T20:31:48","date_gmt":"2026-09-25T12:31:48","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-97918"},"modified":"2026-09-25T20:31:48","modified_gmt":"2026-09-25T12:31:48","slug":"cve-2026-97918","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-97918","title":{"rendered":"CVE-2026-97918 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\ntracing: Undo the reg"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>tracing: Undo the registration when enabling the histogram trigger fails<\/p>\n<p>Commit 6f86bdeab633 (&#8220;tracing: Fix bad hist from corrupting named_triggers<br \/>\nlist&#8221;) described how a trigger that is registered but not on file-&gt;triggers<br \/>\nends up freed while still on the global named_triggers list, and moved the<br \/>\nregistration down so that hist_trigger_enable() follows it immediately. One<br \/>\npath still gets there. hist_trigger_enable() adds the trigger and takes it<br \/>\nstraight back out when the event cannot be enabled:<\/p>\n<p>\tlist_add_tail_rcu(&amp;data-&gt;list, &amp;file-&gt;triggers);<\/p>\n<p>\tupdate_cond_flag(file);<\/p>\n<p>\tif (trace_event_trigger_enable_disable(file, 1) list);<br \/>\n\t\tupdate_cond_flag(file);<br \/>\n\t\tret&#8211;;<br \/>\n\t}<\/p>\n<p>so the list walk in hist_unregister_trigger() matches nothing, test stays<br \/>\nNULL, and the -&gt;free() that would call del_named_trigger() is skipped.<br \/>\nout_unreg falls through to out_free, which frees the trigger anyway:<\/p>\n<p> BUG: KASAN: slab-use-after-free in find_named_trigger+0xac\/0xc0<br \/>\n Read of size 8 at addr ffff8880091d3160 by task init\/1<br \/>\n  find_named_trigger+0xac\/0xc0<br \/>\n  hist_register_trigger+0xc1\/0xa00<br \/>\n  event_hist_trigger_parse+0x3146\/0x6af0<br \/>\n  event_trigger_write+0xce\/0x160<br \/>\n Freed by task 69:<br \/>\n  kfree+0x154\/0x420<br \/>\n  trigger_kthread_fn+0xfd\/0x160<\/p>\n<p>Leave the trigger where hist_unregister_trigger() can find it and let that<br \/>\nundo the registration, which is the only code that knows all of what<br \/>\ncmd_ops-&gt;init() took: the named list entry, the hist_pad reference, the<br \/>\nreference on the trigger a named histogram is shared with, and the copied<br \/>\ncmd_ops. It also pairs the failed trace_event_trigger_enable_disable(),<br \/>\nwhose sm_ref and buffered event reference are otherwise left behind.<\/p>\n<p>Since -&gt;free() releases trigger_data and, for a trigger that does not share<br \/>\nits histogram, hist_data with it, out_unreg can no longer fall through to<br \/>\nout_free. For a trigger that does share, hist_register_trigger() has<br \/>\nalready destroyed the caller&#8217;s hist_data, so the fall-through was reading<br \/>\nfreed memory there as well.<\/p>\n<p>Move the enable_timestamps check in hist_unregister_trigger() above the<br \/>\n-&gt;free() call for the same reason: hist_data does not outlive it once the<br \/>\ntrigger being removed is the one that owns it.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>tracing: Undo the registration when enabling the histogram trigger fails<\/p>\n<p>Commit 6f86bdeab633 (&#8220;tracing: Fix bad hist from corrupti<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-29074","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/29074","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=29074"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=29074"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=29074"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}