CVE-2023-52621
CVE.org · Published
- Record status
- Published
- Identifier year (not publication year)
- 2023
- Source publication
- Source updated
- Imported by cveboard
- Source snapshot
- cve_2026-10-24_midnight_baseline ·
CNA source text (English)
bpf: Check rcu_read_lock_trace_held() before calling bpf map helpers
In the Linux kernel, the following vulnerability has been resolved: bpf: Check rcu_read_lock_trace_held() before calling bpf map helpers These three bpf_map_{lookup,update,delete}_elem() helpers are also available for sleepable bpf program, so add the corresponding lock assertion for sleepable bpf program, otherwise the following warning will be reported when a sleepable bpf program manipulates bpf map under interpreter mode (aka bpf_jit_enable=0): WARNING: CPU: 3 PID: 4985 at kernel/bpf/helpers.c:40 ...... CPU: 3 PID: 4985 Comm: test_progs Not tainted 6.6.0+ #2 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996) ...... RIP: 0010:bpf_map_lookup_elem+0x54/0x60 ...... Call Trace: <TASK> ? __warn+0xa5/0x240 ? bpf_map_lookup_elem+0x54/0x60 ? report_bug+0x1ba/0x1f0 ? handle_bug+0x40/0x80 ? exc_invalid_op+0x18/0x50 ? asm_exc_invalid_op+0x1b/0x20 ? __pfx_bpf_map_lookup_elem+0x10/0x10 ? rcu_lockdep_current_cpu_online+0x65/0xb0 ? rcu_is_watching+0x23/0x50 ? bpf_map_lookup_elem+0x54/0x60 ? __pfx_bpf_map_lookup_elem+0x10/0x10 ___bpf_prog_run+0x513/0x3b70 __bpf_prog_run32+0x9d/0xd0 ? __bpf_prog_enter_sleepable_recur+0xad/0x120 ? __bpf_prog_enter_sleepable_recur+0x3e/0x120 bpf_trampoline_6442580665+0x4d/0x1000 __x64_sys_getpgid+0x5/0x30 ? do_syscall_64+0x36/0xb0 entry_SYSCALL_64_after_hwframe+0x6e/0x76 </TASK>
Scoped product and version facts
Fix information unknown; no fixed version is derived here. Missing information does not prove that no fix exists.
Exploitation unknown; this catalogue does not assess exploitation.
Linux
- Vendor
- Linux
- Product
- Linux
- Platforms
- Unknown
- Default status
unaffected
| Version (version) | Status (status) | Version scheme (versionType) | Exclusive end (lessThan) | Inclusive end (lessThanOrEqual) | Status changes (at → status) |
|---|---|---|---|---|---|
| 1e6c62a8821557720a9b2ea9617359b264f2f67c | affected | git | 82f2df94dac1aa9b879e74d1f82ba1b631bdc612 | Unavailable | None listed |
| 1e6c62a8821557720a9b2ea9617359b264f2f67c | affected | git | 3516f93cc63d956e1b290ae4b7bf2586074535a0 | Unavailable | None listed |
| 1e6c62a8821557720a9b2ea9617359b264f2f67c | affected | git | d6d6fe4bb105595118f12abeed4a7bdd450853f3 | Unavailable | None listed |
| 1e6c62a8821557720a9b2ea9617359b264f2f67c | affected | git | 483cb92334cd7f1d5387dccc0ab5d595d27a669d | Unavailable | None listed |
| 1e6c62a8821557720a9b2ea9617359b264f2f67c | affected | git | c7f1b6146f4a46d727c0d046284c28b6882c6304 | Unavailable | None listed |
| 1e6c62a8821557720a9b2ea9617359b264f2f67c | affected | git | 169410eba271afc9f0fb476d996795aa26770c6d | Unavailable | None listed |
Linux
- Vendor
- Linux
- Product
- Linux
- Platforms
- Unknown
- Default status
affected
| Version (version) | Status (status) | Version scheme (versionType) | Exclusive end (lessThan) | Inclusive end (lessThanOrEqual) | Status changes (at → status) |
|---|---|---|---|---|---|
| 5.10 | affected | Unavailable | Unavailable | Unavailable | None listed |
| 0 | unaffected | semver | 5.10 | Unavailable | None listed |
| 5.10.237 | unaffected | semver | Unavailable | 5.10.* | None listed |
| 5.15.181 | unaffected | semver | Unavailable | 5.15.* | None listed |
| 6.1.77 | unaffected | semver | Unavailable | 6.1.* | None listed |
| 6.6.16 | unaffected | semver | Unavailable | 6.6.* | None listed |
| 6.7.4 | unaffected | semver | Unavailable | 6.7.* | None listed |
| 6.8 | unaffected | original_commit_for_fix | Unavailable | * | None listed |