{"id":"CVE-2026-72071","url":"https://www.cyber-defence.io/tools/cve/CVE-2026-72071","generatedAt":"2026-10-28T02:10:12.858Z","title":"In the Linux kernel, the following vulnerability has been resolved: tracing/user_events: Fix use-after-free in user_event_mm_dup() user_event_mm_dup() walks the parent mm's enabler list locklessly under rcu_read_lock() during fork() (from…","description":"In the Linux kernel, the following vulnerability has been resolved:\n\ntracing/user_events: Fix use-after-free in user_event_mm_dup()\n\nuser_event_mm_dup() walks the parent mm's enabler list locklessly under\nrcu_read_lock() during fork() (from copy_process()); it does not take\nevent_mutex:\n\n\trcu_read_lock();\n\tlist_for_each_entry_rcu(enabler, &old_mm->enablers, mm_enablers_link)\n\t\tenabler->event = user_event_get(orig->event);\n\nuser_event_enabler_destroy() removes an enabler from that list with\nlist_del_rcu() and then, without waiting for a grace period, drops the\nenabler's user_event reference with user_event_put() and frees the enabler\nwith kfree(). A reader that loaded the enabler before the list_del_rcu()\ncan still be walking it, which leads to two use-after-frees:\n\n - kfree(enabler) frees the enabler while that reader dereferences\n   enabler->event.\n\n - user_event_put() may drop the last reference to the user_event, which\n   is then freed (via delayed_destroy_user_event() on a work queue), while\n   the same reader does user_event_get(orig->event) on it.\n\nBoth are reachable by an unprivileged task that can open user_events_data:\none multithreaded process that registers an enabler and then concurrently\nunregisters it and calls fork() triggers the race. KASAN reports a\nslab-use-after-free in user_event_mm_dup() during clone(), with a\n\"refcount_t: addition on 0\" warning when the user_event is freed.\n\nThe enabler use-after-free was found first; the user_event one was reported\nby XIAO WU, and the earlier enabler-only fix did not address it.\n\nDefer both the user_event_put() and the kfree(enabler) to a work item\nqueued with queue_rcu_work(), so they run only after an RCU grace period,\nonce all readers walking the enabler list have finished. The put must run\nin process context because user_event_put() takes event_mutex on the last\nreference, so a work queue is used rather than call_rcu(). The now-unlocked\nput lets the locked argument of user_event_enabler_destroy() be removed;\nall callers are updated.","published":"2026-08-15T06:21:17.000Z","lastModified":"2026-08-17T06:18:06.000Z","status":"Received","sourceIdentifier":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","cvss":{"version":"3.1","score":7.8,"severity":"HIGH","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"},"cwe":[],"affected":[],"epss":{"score":0.0017,"percentile":0.06361,"date":"2026-10-26","history":[]},"kev":{"listed":false},"exploits":{"count":0,"verified":false,"firstPublished":null,"source":"Exploit-DB (https://gitlab.com/exploit-database/exploitdb)","entries":[]},"verdict":{"level":"high","text":"High impact if exploited, but EPSS currently rates exploitation as unlikely (0.17%). Schedule it in the normal patch cycle and watch for a rise in EPSS or a public exploit."},"changes":[],"references":[{"url":"https://git.kernel.org/stable/c/05b24f68f78ff3a1ef7f015f7327b35886b741f6","source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/25acb6711da6fa0382744fa92bd6d42a22c1ae68","source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/50fd6dd755c6e48a38af2fa4621167eea56829c2","source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/95400e7039cdfeb0b53652d521d766f1698cae95","source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/b33ac2d39953efb12f598c0dae242c5f644ea669","source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"}],"sources":{"nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-72071","epss":"https://www.first.org/epss/","kev":"https://www.cisa.gov/known-exploited-vulnerabilities-catalog","exploitdb":"https://www.exploit-db.com/"},"licence":"CC BY 4.0 — link back to the CVE Explorer if you publish the results; upstream data remains subject to its own terms."}