What’s Vulnerable › Vulnerabilities

CVE-2024-56675: bpf: Fix UAF via mismatching bpf_prog/attachment RCU flavors

Description

In the Linux kernel, the following vulnerability has been resolved: bpf: Fix UAF via mismatching bpf_prog/attachment RCU flavors Uprobes always use bpf_prog_run_array_uprobe() under tasks-trace-RCU protection. But it is possible to attach a non-sleepable BPF program to a uprobe, and non-sleepable BPF programs are freed via normal RCU (see __bpf_prog_put_noref()). This leads to UAF of the bpf_prog because a normal RCU grace period does not imply a tasks-trace-RCU grace period. Fix it by explicitly waiting for a tasks-trace-RCU grace period after removing the attachment of a bpf_prog to a perf_event.

Affected products

How to fix

Upgrade to a fixed version: Linux kernel 6.1.121, 6.12.6, 6.6.67. Check the vendor advisory for mitigations.

References

Get alerted when CVE-2024-56675 or the next vulnerability affects your stack