In the Linux kernel, the following vulnerability has been resolved:
eventpoll: fix ep_remove struct eventpoll / struct file UAF
ep_remove() (via ep_remove_file()) cleared file->f_ep under file->f_lock but then kept using @file inside the critical section (is_file_epoll(), hlist_del_rcu() through the head, spin_unlock). A concurrent __fput() taking the eventpoll_release() fastpath in that window observed the transient NULL, skipped eventpoll_release_file() and ran to f_op->release / file_free().
For the epoll-watches-epoll case, f_op->release is ep_eventpoll_release() -> ep_clear_and_put() -> ep_free(), which kfree()s the watched struct eventpoll. Its embedded ->refs hlist_head is exactly where epi->fllink.pprev points, so the subsequent hlist_del_rcu()'s "*pprev = next" scribbles into freed kmalloc-192 memory.
In addition, struct file is SLAB_TYPESAFE_BY_RCU, so the slot backing @file could be recycled by alloc_empty_file() -- reinitializing f_lock and f_ep -- while ep_remove() is still nominally inside that lock. The upshot is an attacker-controllable kmem_cache_free() against the wrong slab cache.
Pin @file via epi_fget() at the top of ep_remove() and gate the critical section on the pin succeeding. With the pin held @file cannot reach refcount zero, which holds __fput() off and transitively keeps the watched struct eventpoll alive across the hlist_del_rcu() and the f_lock use, closing both UAFs.
If the pin fails @file has already reached refcount zero and its __fput() is in flight. Because we bailed before clearing f_ep, that path takes the eventpoll_release() slow path into eventpoll_release_file() and blocks on ep->mtx until the waiter side's ep_clear_and_put() drops it. The bailed epi's share of ep->refcount stays intact, so the trailing ep_refcount_dec_and_test() in ep_clear_and_put() cannot free the eventpoll out from under eventpoll_release_file(); the orphaned epi is then cleaned up there.
A successful pin also proves we are not racing eventpoll_release_file() on this epi, so drop the now-redundant re-check of epi->dying under f_lock. The cheap lockless READ_ONCE(epi->dying) fast-path bailout stays.
CVSS Details
- CVSS 3.1 Base Score: 7.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-64k-debug-devel-matchedUpgrade kernel-debug-modulesUpgrade kernel-zfcpdump-devel-matchedUpgrade rvUpgrade kernel-debug-devel-matchedUpgrade kernel-uki-virt-addonsUpgrade kernel-rtUpgrade kernel-64k-modules-extraUpgrade kernel-rt-64k-modules-extraUpgrade kernel-rt-64k-debug-develUpgrade kernel-zfcpdump-coreUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-64k-debug-modules-extraUpgrade kernel-rt-64k-modules-coreUpgrade kernel-64k-devel-matchedUpgrade kernel-rt-develUpgrade kernel-rt-debug-modules-extraUpgrade kernel-docUpgrade kernel-uki-virtUpgrade kernel-rt-64k-modulesUpgrade perfUpgrade kernel-rt-64k-debug-coreUpgrade kernel-rt-modulesUpgrade kernel-toolsUpgrade kernel-debug-modules-extraUpgrade kernel-zfcpdumpUpgrade kernel-zfcpdump-modulesUpgrade kernel-64k-debugUpgrade kernel-debug-modules-coreUpgrade kernel-rt-modules-coreUpgrade kernel-64k-debug-modules-coreUpgrade kernel-tools-libs-develUpgrade kernel-rt-64kUpgrade kernel-rt-64k-develUpgrade kernel-abi-stablelistsUpgrade kernel-rt-debug-modules-coreUpgrade kernel-develUpgrade kernel-64kUpgrade rtlaUpgrade kernel-rt-64k-debugUpgrade kernel-modules-extraUpgrade kernel-modulesUpgrade kernel-rt-64k-coreUpgrade kernel-64k-debug-develUpgrade kernel-64k-develUpgrade libperfUpgrade kernel-rt-debug-coreUpgrade kernel-cross-headersUpgrade kernel-rt-debug-modulesUpgrade kernel-rt-64k-debug-modules-coreUpgrade kernel-zfcpdump-develUpgrade kernel-coreUpgrade kernel-modules-coreUpgrade kernel-devel-matchedUpgrade kernel-64k-modules-coreUpgrade kernel-headersUpgrade kernel-64k-modulesUpgrade kernel-debug-coreUpgrade kernel-rt-64k-debug-modules-extraUpgrade kernel-rt-64k-debug-modulesUpgrade kernel-64k-debug-coreUpgrade kernel-64k-coreUpgrade kernel-debug-develUpgrade kernel-rt-coreUpgrade kernel-rt-debug-develUpgrade kernel-debugUpgrade kernel-debug-uki-virtUpgrade kernel-tools-libsUpgrade kernel-zfcpdump-modules-extraUpgrade kernelUpgrade python3-perfUpgrade kernel-rt-modules-extraUpgrade kernel-rt-debugUpgrade kernel-64k-debug-modules | Jul 9, 2026 | Jul 8, 2026 |
| Amazon_linux_2023 | — | Upgrade bpftool6.18-debuginfoUpgrade kernel6.12-debuginfo-common-x86_64Upgrade kernel6.12Upgrade kernel6.12-debuginfo-common-aarch64Upgrade bpftool6.18Upgrade perf6.18-debuginfoUpgrade bpftool6.12-debuginfoUpgrade kernel6.18-modules-extra-commonUpgrade kernel6.12-modules-extra-commonUpgrade kernel-livepatch-6.18.33-63.124Upgrade kernel6.12-modules-extraUpgrade perf6.12-debuginfoUpgrade kernel6.18-debuginfo-common-aarch64Upgrade kernel6.18Upgrade bpftool6.12Upgrade kernel6.12-headersUpgrade kernel6.18-develUpgrade python3-perf6.12-debuginfoUpgrade kernel6.18-headersUpgrade python3-perf6.18Upgrade kernel6.18-debuginfoUpgrade kernel6.12-tools-develUpgrade kernel-livepatch-6.12.94-123.174Upgrade python3-perf6.12Upgrade kernel6.12-toolsUpgrade kernel6.12-debuginfoUpgrade python3-perf6.18-debuginfoUpgrade perf6.12Upgrade kernel6.18-modules-extraUpgrade kernel6.12-develUpgrade kernel6.18-tools-debuginfoUpgrade kernel6.18-toolsUpgrade perf6.18Upgrade kernel6.12-tools-debuginfoUpgrade kernel6.18-tools-develUpgrade kernel6.18-debuginfo-common-x86_64 | Jun 23, 2026 | May 30, 2026 |
| Debian | — | Upgrade linux | Jul 23, 2026 | Jul 23, 2026 |
| Redhat Openshift | — | Upgrade rhcos | Aug 10, 2026 | May 30, 2026 |
| Redhat_linux | — | Upgrade kernelUpgrade kernel-rt | Jul 9, 2026 | May 30, 2026 |
| Ubuntu | — | Upgrade linux-image-6.8.0-138-genericUpgrade linux-image-7.0.0-1015-raspiUpgrade linux-image-6.8.0-1034-xilinxUpgrade linux-image-aws-64kUpgrade linux-image-oem-24.04cUpgrade linux-image-realtime-64kUpgrade linux-image-virtual-7.0Upgrade linux-image-gcp-6.8Upgrade linux-image-gkeUpgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-oem-24.04Upgrade linux-image-nvidia-64k-6.17Upgrade linux-image-oem-22.04dUpgrade linux-image-6.8.0-1060-gke-64kUpgrade linux-image-6.8.0-1062-ibmUpgrade linux-image-6.17.0-1020-oracle-64kUpgrade linux-image-7.0.0-1014-azureUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-gke-hwe-26.04Upgrade linux-image-xilinx-6.8Upgrade linux-image-oracle-6.17Upgrade linux-image-oem-22.04bUpgrade linux-image-raspi-realtime-7.0Upgrade linux-image-6.8.0-137-lowlatencyUpgrade linux-image-7.0.0-1008-oracleUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.8.0-1065-gcpUpgrade linux-image-7.0.0-28-realtime-64kUpgrade linux-image-oracle-64k-6.17Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-generic-hwe-26.04Upgrade linux-image-generic-7.0Upgrade linux-image-oracleUpgrade linux-image-6.8.0-137-generic-64kUpgrade linux-image-7.0.0-1015-raspi-realtimeUpgrade linux-image-7.0.0-28-realtimeUpgrade linux-image-oracle-6.8Upgrade linux-image-aws-64k-6.8Upgrade linux-image-oem-6.17Upgrade linux-image-realtimeUpgrade linux-image-6.8.0-1065-gcp-64kUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-gcp-7.0Upgrade linux-image-realtime-64k-hwe-26.04Upgrade linux-image-6.17.0-1032-oemUpgrade linux-image-6.8.0-1065-gcp-fipsUpgrade linux-image-gke-64k-6.8Upgrade linux-image-awsUpgrade linux-image-azure-fipsUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-7.0.0-1008-gcpUpgrade linux-image-realtime-64k-7.0Upgrade linux-image-azure-fde-6.8Upgrade linux-image-raspi-7.0Upgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-nvidia-6.8Upgrade linux-image-oracle-64kUpgrade linux-image-aws-fips-6.8Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-gcp-6.17Upgrade linux-image-gcp-64k-7.0Upgrade linux-image-gcpUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-7.0.0-1011-oracle-64kUpgrade linux-image-aws-lts-24.04Upgrade linux-image-7.0.0-1009-azure-fdeUpgrade linux-image-gke-64k-hwe-26.04Upgrade linux-image-6.8.0-2051-raspi-realtimeUpgrade linux-image-7.0.0-1008-oracle-64kUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-virtualUpgrade linux-image-generic-64k-6.8Upgrade linux-image-azure-7.0Upgrade linux-image-oem-24.04bUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-6.17.0-1031-nvidia-64kUpgrade linux-image-6.8.0-1059-oracleUpgrade linux-image-raspi-6.8Upgrade linux-image-7.0.0-1003-gke-64kUpgrade linux-image-gke-7.0Upgrade linux-image-kvmUpgrade linux-image-nvidia-6.17Upgrade linux-image-7.0.0-1008-gcp-64kUpgrade linux-image-oem-7.0Upgrade linux-image-6.8.0-1062-awsUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-nvidia-64kUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-7.0.0-1016-nvidiaUpgrade linux-image-6.17.0-1019-realtimeUpgrade linux-image-6.17.0-42-generic-64kUpgrade linux-image-oracle-64k-7.0Upgrade linux-image-aws-7.0Upgrade linux-image-6.17.0-1022-gcpUpgrade linux-image-azure-6.8Upgrade linux-image-gcp-64k-6.17Upgrade linux-image-7.0.0-28-genericUpgrade linux-image-6.8.0-137-fipsUpgrade linux-image-gcp-64kUpgrade linux-image-nvidia-bos-64kUpgrade linux-image-ibm-7.0Upgrade linux-image-7.0.0-1003-gkeUpgrade linux-image-nvidia-64k-hwe-24.04Upgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-oem-24.04aUpgrade linux-image-gke-64k-7.0Upgrade linux-image-generic-64kUpgrade linux-image-generic-6.17Upgrade linux-image-gcp-fips-6.8Upgrade linux-image-azureUpgrade linux-image-6.8.0-1060-nvidia-lowlatency-64kUpgrade linux-image-realtime-6.8.1Upgrade linux-image-oem-22.04aUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-6.17.0-1020-oracleUpgrade linux-image-raspi-realtimeUpgrade linux-image-ibm-6.8Upgrade linux-image-genericUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-7.0.0-2016-nvidia-bosUpgrade linux-image-7.0.0-1016-nvidia-64kUpgrade linux-image-7.0.0-1011-oracleUpgrade linux-image-7.0.0-1011-gcpUpgrade linux-image-7.0.0-1010-azureUpgrade linux-image-7.0.0-1009-oemUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-nvidia-64k-hwe-26.04Upgrade linux-image-nvidia-64k-7.0Upgrade linux-image-6.8.1-1057-realtimeUpgrade linux-image-6.8.0-1062-aws-64kUpgrade linux-image-6.8.0-1060-nvidiaUpgrade linux-image-6.8.0-1031-nvidia-tegraUpgrade linux-image-6.17.0-1022-gcp-64kUpgrade linux-image-7.0.0-1010-ibmUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-generic-64k-6.17Upgrade linux-image-oem-24.04dUpgrade linux-image-azure-lts-24.04Upgrade linux-image-realtime-hwe-22.04Upgrade linux-image-nvidia-bos-64k-7.0Upgrade linux-image-nvidia-7.0Upgrade linux-image-fips-6.8Upgrade linux-image-aws-64k-7.0Upgrade linux-image-6.8.0-1063-azure-fdeUpgrade linux-image-6.8.0-1062-raspiUpgrade linux-image-6.8.0-1062-aws-fipsUpgrade linux-image-xilinxUpgrade linux-image-6.8.0-137-genericUpgrade linux-image-realtime-hwe-26.04Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-virtual-6.8Upgrade linux-image-nvidiaUpgrade linux-image-oem-26.04Upgrade linux-image-6.8.0-1060-nvidia-lowlatencyUpgrade linux-image-oem-22.04Upgrade linux-image-gke-64kUpgrade linux-image-generic-64k-hwe-26.04Upgrade linux-image-aws-6.8Upgrade linux-image-7.0.0-28-generic-64kUpgrade linux-image-fipsUpgrade linux-image-azure-fips-6.8Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-oem-26.04aUpgrade linux-image-ibmUpgrade linux-image-gkeopUpgrade linux-image-gcp-fipsUpgrade linux-image-7.0.0-2016-nvidia-bos-64kUpgrade linux-image-6.8.0-137-lowlatency-64kUpgrade linux-image-6.8.0-1064-azureUpgrade linux-image-6.8.0-1047-gkeopUpgrade linux-image-6.8.0-1031-nvidia-tegra-rtUpgrade linux-image-virtual-hwe-26.04Upgrade linux-image-virtual-6.17Upgrade linux-image-raspiUpgrade linux-image-nvidia-tegraUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-nvidia-hwe-26.04Upgrade linux-image-nvidia-bos-7.0Upgrade linux-image-nvidia-bosUpgrade linux-image-lowlatency-6.8Upgrade linux-image-lowlatencyUpgrade linux-image-azure-fde-7.0Upgrade linux-image-7.0.0-1009-awsUpgrade linux-image-azure-6.17Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-6.8.0-138-generic-64kUpgrade linux-image-lowlatency-64kUpgrade linux-image-intel-iotgUpgrade linux-image-ibm-classicUpgrade linux-image-gke-6.8Upgrade linux-image-generic-lpaeUpgrade linux-image-generic-64k-7.0Upgrade linux-image-generic-6.8Upgrade linux-image-oem-22.04cUpgrade linux-image-aws-fipsUpgrade linux-image-7.0.0-1011-gcp-64kUpgrade linux-image-7.0.0-1009-aws-64kUpgrade linux-image-6.8.0-1060-gkeUpgrade linux-image-6.17.0-1031-nvidiaUpgrade linux-image-6.17.0-1022-azureUpgrade linux-image-realtime-7.0Upgrade linux-image-realtime-6.17Upgrade linux-image-oracle-7.0Upgrade linux-image-azure-fdeUpgrade linux-image-6.8.0-1064-azure-fipsUpgrade linux-image-6.17.0-42-genericUpgrade linux-image-6.8.0-1060-nvidia-64kUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-6.8.0-1059-oracle-64kUpgrade linux-image-nvidia-hwe-24.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-gkeop-6.8 | Jul 20, 2026 | May 30, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jul 10, 2026 | May 30, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub