Use-after-free in Linux kernel eventfs inode freeing
Key facts
- Attack vector
- Local
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Partial Red Hat: 1 without a fix
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and Red Hat.
Summary
Linux kernel versions from 6.6.46 before 6.6.161, from 6.10.5 before 6.11, and from 6.11 have a use-after-free in eventfs. The eventfs inode is freed after an SRCU grace period, which does not wait for RCU path-walk readers, so a lookup can read freed memory. A local user with low privileges can trigger it, with high confidentiality, integrity and availability impact.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
Description from the CNA
In the Linux kernel, the following vulnerability has been resolved: eventfs: Free the eventfs_inode after an rcu grace period too tracefs_d_revalidate() reads ->is_freed of the eventfs_inode that dentry->d_fsdata points to, and ->d_revalidate() is called in rcu pathwalk mode with nothing but rcu_read_lock() held. The dentry itself stays around for such a walker, but tracefs_d_release() drops its reference to the eventfs_inode when the dentry is killed, and release_ei() then frees it after a grace period of eventfs_srcu. An SRCU grace period doesn't wait for rcu_read_lock() sections, so the walker can read an eventfs_inode that is already gone. With a pathwalk held up in tracefs_d_revalidate() while the dentry goes away: BUG: KASAN: slab-use-after-free in tracefs_d_revalidate+0x76/0x90 Read of size 1 at addr ff1100010152d8d0 by task walker/97 Call Trace: <TASK> tracefs_d_revalidate+0x76/0x90 lookup_fast+0x320/0x640 path_lookupat+0x160/0xb00 filename_lookup+0x1f1/0x5b0 vfs_statx+0xd7/0x3b0 vfs_fstatat+0x4d/0x90 __do_sys_newfstatat+0xa0/0x100 do_syscall_64+0x10e/0x5e0 entry_SYSCALL_64_after_hwframe+0x77/0x7f [...] Allocated by task 1: __kmalloc_cache_noprof+0x249/0x560 eventfs_create_dir+0x7a/0x590 event_create_dir+0x2fb/0xcf0 trace_add_event_call+0xbf/0x150 [...] Freed by task 11: kfree+0x1db/0x5b0 srcu_invoke_callbacks+0x3a3/0x620 process_one_work+0x937/0x1810 worker_thread+0x4f1/0xd60 Before commit 8e556432477e ("eventfs: Use SRCU for freeing eventfs_inodes") release_ei() used call_rcu(), which covered the walker, while eventfs_iterate() needs the SRCU grace period. Wait for both and chain call_rcu() from the SRCU callback.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
Remediation
Upgrade the Linux kernel to 6.6.161, 6.11, 6.12.115, 6.18.59, 7.2.13 or 7.3. Red Hat gives no fix plan for Red Hat Enterprise Linux 10.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
- Fix · CNA Linux (Linux) Fixed in 6.6.161, 6.11
- Fix · CNA Linux (Linux) Fixed in 6.6.161, 6.12.115, 6.18.59, 7.2.13, 7.3
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Enterprise Linux 10 | Affected | No fix yet: Fix deferred |
Not affected: 6 products
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 7
- Red Hat Enterprise Linux 8
- Red Hat Enterprise Linux 9
- Red Hat OpenShift Container Platform 4
- Red Hat OpenShift Container Platform 5
Timeline
- 2026-10-28 Threatist record created from CVE-2026-99173
- 2026-10-28 Alias added: GHSA-fx9f-7wc6-cjjx
- 2026-10-29 Affected versions changed · Red Hat
- 2026-10-29 CVSS score added · Red Hat
- 2026-10-30 Fix available: Linux/Linux@5819018dc29fb2ac2fd4865d507f9893c89c0624, Linux/[email protected], Linux/[email protected] +1 · CNA
- 2026-10-30 2 new references · CNA
- 2026-10-31 CVSS score added · CNA
- 2026-10-31 Affected versions changed · Red Hat
References
Other 5
- https://git.kernel.org/stable/c/5819018dc29fb2ac2fd4865d507f9893c89c0624
- https://git.kernel.org/stable/c/dd2c767814a876be0f16f0b7f98a403dc176f51e
- https://git.kernel.org/stable/c/4586ef24ce390e8becb9f3e5852d5d3978b01c33
- https://git.kernel.org/stable/c/45fcfd5d9c10e0aa977ed5b9bd445707e01bb107
- https://git.kernel.org/stable/c/2cd88c498ecff8e22bf4c397b8eb226db70ac343
More Linux vulnerabilities
- TI-2025-26358 tls: fix handling of zero-length records on the rx_list KEVCVSS 3.1CRITICAL 9.8
- TI-2026-38352 netfilter: bridge: make ebt_snat ARP rewrite writable KEVCVSS 3.1HIGH 8.8
- TI-2021-02452 Incorrect authorization in Ubuntu linux kernel KEVCVSS 3.1HIGH 8.8
- TI-2013-05264 The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the… KEVCVSS 3.1HIGH 8.8
- TI-2022-00125 Integer overflow in kernel KEVCVSS 3.1HIGH 8.4
- TI-2013-01864 The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9… KEVCVSS 3.1HIGH 8.4
Sources
- CVE-2026-99173 · CVE Program
- CVE-2026-99173 · NVD
- FIRST EPSS
- GHSA-fx9f-7wc6-cjjx · GitHub Advisory Database · CC BY 4.0
- CVE-2026-99173 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences