CVE-2024-56675

Summary

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 Software

VendorProductVersion RangeStatus
LinuxLinux8c7dcb84e3b744b2b70baa7a44a9b1881c33a9c9 < 9245459a992d22fe0e92e988f49db1fec82c184aaffected
LinuxLinux8c7dcb84e3b744b2b70baa7a44a9b1881c33a9c9 < f9f85df30118f3f4112761e6682fc60ebcce23e5affected
LinuxLinux8c7dcb84e3b744b2b70baa7a44a9b1881c33a9c9 < 9b53d2c2a38a1effc341d99be3f99fa7ef17047daffected
LinuxLinux8c7dcb84e3b744b2b70baa7a44a9b1881c33a9c9 < ef1b808e3b7c98612feceedf985c2fbbeb28f956affected
LinuxLinux6.0affected
LinuxLinux0 < 6.0unaffected
LinuxLinux6.1.121 <= 6.1.*unaffected
LinuxLinux6.6.67 <= 6.6.*unaffected
LinuxLinux6.12.6 <= 6.12.*unaffected
LinuxLinux6.13 <= *unaffected

Weaknesses

ADP Enrichment

CISA ADP Vulnrichment

  • SSVC:
  • Exploitation: none
    • Automatable: no
    • Technical Impact: total

CVE Program Container

Additional References

References