Reference page — cumulative record through Wednesday, August 19, 2026 UTC. Reference pages update as the archive grows; only dated daily editions are immutable pages of record.
Linux Linux — bpf: Fix oob access in cgroup local storage
AV AC PR UI S C I A CVSS EPSS %ile KEV
L L L N U H N H 7.1 .0016 5.8 —
AFFECTED
Product Versions Fixed
Linux 7d9c3427894fe70d1347b4820476bf37736d2ff0 – —
Linux 5.9 – 5.15.192
TIMELINE
Apr 16 Reserved by Linux
Aug 16 Published (CNA: Linux)
Jul 30 RESCORED — CVE-2025-38502 (Linux). CVSS 7.8 → 7.1 (NVD).
Description
In the Linux kernel, the following vulnerability has been resolved:
bpf: Fix oob access in cgroup local storage
Lonial reported that an out-of-bounds access in cgroup local storage
can be crafted via tail calls. Given two programs each utilizing a
cgroup local storage with a different value size, and one program
doing a tail call into the other. The verifier will validate each of
the indivial programs just fine. However, in the runtime context
the bpf_cg_run_ctx holds an bpf_prog_array_item which contains the
BPF program as well as any cgroup local storage flavor the program
uses. Helpers such as bpf_get_local_storage() pick this up from the
runtime context:
ctx = container_of(current->bpf_ctx, struct bpf_cg_run_ctx, run_ctx);
storage = ctx->prog_item->cgroup_storage[stype];
if (stype == BPF_CGROUP_STORAGE_SHARED)
ptr = &READ_ONCE(storage->buf)->data[0];
else
ptr = this_cpu_ptr(storage->percpu_buf);
For the second program which was called from the originally attached
one, this means bpf_get_local_storage() will pick up the former
program's map, not its own. With mismatching sizes, this can result
in an unintended out-of-bounds access.
To fix this issue, we need to extend bpf_map_owner with an array of
storage_cookie[] to match on i) the exact maps from the original
program if the second program was using bpf_get_local_storage(), or
ii) allow the tail call combination if the second program was not
using any of the cgroup local storage maps.
Lifecycle
Complete event history — 3 events, chronological
| Date | Event | Detail |
| April 16, 2025 | Reserved | Reserved by Linux |
| August 16, 2025 | Published | Published (CNA: Linux) |
| July 30, 2026 | RESCORED | RESCORED — CVE-2025-38502 (Linux). CVSS 7.8 → 7.1 (NVD). |
Affected
Affected products and packages — 2 rows
| Vendor | Product / Package | Ecosystem | Version introduced | Fixed |
| Linux | Linux | — | 7d9c3427894fe70d1347b4820476bf37736d2ff0 | — |
| Linux | Linux | — | 5.9 | 5.15.192 |
About this page
This is a reference page, not a dated page of record. It assembles the complete lifecycle of CVE-2025-38502 from the CVE Program record, NVD enrichment, the CISA KEV catalog, EPSS, and OSV advisories. The box score's numbers (CVSS, EPSS, KEV status) are current as of Wednesday, August 19, 2026 UTC and are re-derived as the archive grows; only dated daily editions are immutable pages of record. The authoritative source for this identifier is cve.org.