CVE-2026-90317

bpf: Invalidate RCU pointers after final spin unlock

State
Published
Severity
7.8 High
Published
Sep 17, 2026
Updated
Oct 19, 2026
Reserved
Sep 11, 2026

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

bpf: Invalidate RCU pointers after final spin unlock

In a sleepable BPF program, a spin lock can provide the only RCU protection for a kptr. The final bpf_spin_unlock() ends that protection, but the verifier leaves the pointer valid. Another CPU can then free the object before the pointer is used. A capability-limited runtime PoC triggered a task_struct use-after-free in __bpf_get_task_stack().

Record whether the program is in an RCU-protected context before releasing the lock. Invalidate RCU-protected pointers only when the unlock leaves the final such context. This preserves valid pointers in non-sleepable programs and inside an explicit RCU read-side section.

Scores

CVSSScoreVectorSource
3.17.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 5861d1e8dbc4e1a03ebffb96ac041026cdd34c07 to before f81972b235f3ebfa40bdce8bcfee3f242fb24065Affected
  • 5861d1e8dbc4e1a03ebffb96ac041026cdd34c07 to before 7ae71629357d0a6d0bdadb929c7b296d5b7e61c2Affected
  • 5861d1e8dbc4e1a03ebffb96ac041026cdd34c07 to before 180c7000712db77063b3a26f4c97e7dd9038f449Affected
LinuxLinux
  • 6.6Affected
  • before 6.6Not affected
  • 6.18.57 through 6.18.*Not affected
  • 7.2.6 through 7.2.*Not affected
  • 7.3 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.