Vulnerability · Published Jul 25, 2026 · Assigned by Linux

CVE-2026-64352bpf: Allow LPM map access from sleepable BPF programs

High 7.8

In plain English

A high-severity security flaw in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.1% (higher than 3% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS NVD)7.8High
Exploit odds (30 days)0.1%top 97.4% of all CVEs
Exploited in the wildNo reportsnot in CISA KEV
Attack toolingNoneno public tooling known

Official description

In the Linux kernel, the following vulnerability has been resolved: bpf: Allow LPM map access from sleepable BPF programs trie_lookup_elem() annotates its rcu_dereference_check() walks with only rcu_read_lock_bh_held(). Because rcu_dereference_check(p, c) resolves to "c || rcu_read_lock_held()", this passes for XDP/NAPI and classic RCU readers but fails for sleepable BPF programs, which enter via __bpf_prog_enter_sleepable() and hold only rcu_read_lock_trace(). trie_update_elem() and trie_delete_elem() have the same problem in a different form: they walk the trie with plain rcu_dereference(), which asserts rcu_read_lock_held() unconditionally. Both are reachable from sleepable BPF programs via the bpf_map_update_elem / bpf_map_delete_elem helpers, and from the syscall path under classic rcu_read_lock(). In the writer paths the trie is actually protected by trie->lock (an rqspinlock taken across the walk); we never relied on the RCU read-side lock to keep nodes alive there. A sleepable LSM hook that ends up touching an LPM trie therefore triggers lockdep on debug kernels: ============================= WARNING: suspicious RCU usage 7.1.0-... Tainted: G E ----------------------------- kernel/bpf/lpm_trie.c:249 suspicious rcu_dereference_check() usage! 1 lock held by net_tests/540: #0: (rcu_tasks_trace_srcu_struct){....}-{0:0}, at: __bpf_prog_enter_sleepable+0x26/0x280 Call Trace: dump_stack_lvl lockdep_rcu_suspicious trie_lookup_elem bpf_prog_..._enforce_security_socket_connect bpf_trampoline_... security_socket_connect __sys_connect do_syscall_64 This is lockdep-only -- no UAF, since Tasks Trace RCU does serialize against the trie's reclaim path -- but it spams the console once per distinct callsite on every debug kernel running a sleepable BPF LSM that touches an LPM trie, which is increasingly common. For the lookup path, switch the rcu_dereference_check() annotation from rcu_read_lock_bh_held() to bpf_rcu_lock_held(), which accepts all three contexts (classic, BH, Tasks Trace). Other map types already follow this convention. For trie_update_elem() and trie_delete_elem(), annotate the walks as rcu_dereference_protected(*p, 1) -- matching trie_free() in the same file -- since trie->lock is held across the walk. rqspinlock has no lockdep_map, so the predicate degenerates to '1' rather than lockdep_is_held(&trie->lock); the protection is real but not machine-verifiable. trie_get_next_key() also uses bare rcu_dereference() but is reachable only from the BPF syscall, which holds classic rcu_read_lock() before dispatching, so it is left untouched.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12linux6.1.180-1DEBIAN-CVE-2026-64352
Debian:13linux6.12.100-1DEBIAN-CVE-2026-64352
Debian:14linux7.1.4-1DEBIAN-CVE-2026-64352
Debian:12linux-6.126.12.100-1~deb12u1DEBIAN-CVE-2026-64352
Ubuntu:22.04:LTSlinux5.15.0-198.208UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux6.8.0-147.147UBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux7.0.0-31.31UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-allwinner-5.19no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-aws5.15.0-1117.124UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-aws6.8.0-1067.70UBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux-aws7.0.0-1012.12UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-aws-5.19no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-aws-6.14no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-aws-6.17no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-aws-6.2no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-aws-6.5no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-aws-6.8no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-aws-7.07.0.0-1012.12~24.04.1UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-azure5.15.0-1123.132UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-azure6.8.0-1071.79UBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux-azure7.0.0-1014.14UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-azure-5.19no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-azure-6.11no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-azure-6.14no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-azure-6.17no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-azure-6.2no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-azure-6.5no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-azure-6.8no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-azure-7.07.0.0-1014.14~24.04.1UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-azure-fde5.15.0-1122.131UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-azure-fde6.8.0-1069.76UBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux-azure-fde7.0.0-1013.13UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-azure-fde-5.19no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-azure-fde-6.14no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-azure-fde-6.17no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-azure-fde-6.2no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-azure-fde-6.8no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-azure-fde-7.07.0.0-1013.13~24.04.1UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-azure-nvidiano fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-azure-nvidia-6.14no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-gcp5.15.0-1118.128UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-gcp6.8.0-1071.79UBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux-gcp7.0.0-1011.11UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-gcp-5.19no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-gcp-6.11no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-gcp-6.14no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-gcp-6.17no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-gcp-6.2no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-gcp-6.5no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-gcp-6.8no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-gcp-7.07.0.0-1011.11~24.04.1UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-gke5.15.0-1113.119UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-gke6.8.0-1066.74UBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux-gke7.0.0-1006.7UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-gkeop5.15.0-1100.108UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-gkeop6.8.0-1052.56UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-hwe-5.19no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-hwe-6.11no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-hwe-6.14no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-hwe-6.17no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-hwe-6.2no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-hwe-6.5no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-hwe-6.8no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-hwe-7.07.0.0-31.31~24.04.1UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-ibm5.15.0-1111.115UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-ibm6.8.0-1067.68UBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux-ibm7.0.0-1013.13UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-ibm-6.8no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-intel-iot-realtimeno fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-intel-iotg5.15.0-1112.118UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-kvm5.15.0-1109.114UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-lowlatency5.15.0-195.205UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-lowlatency6.8.0-147.147.1UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-lowlatency-hwe-5.19no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-lowlatency-hwe-6.11no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.2no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.5no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.8no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-nvidia5.15.0-1112.113UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-nvidiano fix listedUBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux-nvidia7.0.0-1018.18UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-nvidia-6.11no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-nvidia-6.17no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-nvidia-6.2no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-nvidia-6.5no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-nvidia-6.8no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-nvidia-7.07.0.0-1018.18~24.04.1UBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux-nvidia-bos7.0.0-2018.18UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-nvidia-lowlatencyno fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-nvidia-tegra5.15.0-1070.72UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-nvidia-tegra6.8.0-1038.42UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-nvidia-tegra-igx5.15.0-1059.59UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-oem-5.17no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-oem-6.0no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-oem-6.1no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-oem-6.11no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-oem-6.14no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-oem-6.17no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-oem-6.5no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-oem-6.8no fix listedUBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux-oem-7.07.0.0-1013.13UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-oracle5.15.0-1114.120UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-oracle6.8.0-1064.67UBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux-oracle7.0.0-1011.11UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-oracle-6.14no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-oracle-6.17no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-oracle-6.5no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-oracle-6.8no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-oracle-7.07.0.0-1011.11~24.04.1UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-raspino fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-raspino fix listedUBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux-raspi7.0.0-1019.19UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-raspi-realtimeno fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-realtimeno fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-realtimeno fix listedUBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux-realtime7.0.0-31.31.1UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-riscvno fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-riscvno fix listedUBUNTU-CVE-2026-64352
Ubuntu:26.04:LTSlinux-riscv7.0.0-31.31.1UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-riscv-5.19no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-riscv-6.14no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-riscv-6.17no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-riscv-6.5no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-riscv-6.8no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-riscv-7.07.0.0-31.31.1~24.04.1UBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-starfive-5.19no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-starfive-6.2no fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-starfive-6.5no fix listedUBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-vmware6.8.0-1008.8UBUNTU-CVE-2026-64352
Ubuntu:24.04:LTSlinux-xilinxno fix listedUBUNTU-CVE-2026-64352
Ubuntu:22.04:LTSlinux-xilinx-zynqmp5.15.0-1080.84UBUNTU-CVE-2026-64352

Affected products (as reported)

VendorProductVersions
Linux Linux 694cea395fded425008e93cd90cfdf7a451674af – before f0967d4f1ba4323a3cb7dc8fdba74dd3a8caaf04694cea395fded425008e93cd90cfdf7a451674af – before 304ca50582f0c047370f85e13caec456f78c9fcc694cea395fded425008e93cd90cfdf7a451674af – before ec662a8b2cde01e76b37ccd4b992d0342299e69c694cea395fded425008e93cd90cfdf7a451674af – before 9bfdf4b81b0e56d47bc6c46c34a46638be716695694cea395fded425008e93cd90cfdf7a451674af – before 57454944737f3ad9a8703aecbbb79713b513a94b694cea395fded425008e93cd90cfdf7a451674af – before bd6ad9a6b30498d845413e863fb95c6fab3babe3694cea395fded425008e93cd90cfdf7a451674af – before 2f884d371fafea137afea504d49ee4a7c8d7985b
Linux Linux 5.14

References