bpf, riscv: Fix extable handling for arena load_acquire
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.18.52, 7.2.6
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
In the Linux kernel, the following vulnerability has been resolved: bpf, riscv: Fix extable handling for arena load_acquire emit_atomic_ld_st() returns 1 to have build_body() skip the zext after a sub-word load_acquire. The caller does "ret = ret ?: add_exception_handler(...)", which skips add_exception_handler() on any non-zero ret, so the extable entry is missing and a faulting PROBE_ATOMIC load_acquire oopses. REG_DONT_CLEAR_MARKER leaves rd stale on fault, and the verifier still thinks the load overwrote it, so a program can leak it through a map. Check ret >= 0 before calling add_exception_handler(), and pass rd for LOAD_ACQ so the fault zeroes rd like a PROBE_MEM load. Return ret unchanged for the zext skip.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From fb7cefabae8117c203155ef169a386bec43bbba9 · fixed in 26d9496c826586338d1b8c27edfec4a19a89f462; From fb7cefabae8117c203155ef169a386bec43bbba9 · fixed in 08fe2eaa609180c1baeb76c2629a9c82263b0427; From fb7cefabae8117c203155ef169a386bec43bbba9 · fixed in 5eb8921371c6fd117d4a328b6053dfda38707df8
- Linux Linux
6.18
- KernelLinux
From 6.18.0 · fixed in 6.18.52; From 6.19.0 · fixed in 7.2.6