boxscore/security
CVE · referencelatest edition

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.

CVE-2025-38502HIGH
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).
CWE-125 · CNA: Linux · CVSS v3.1 · 8 references · NVD status: Modified

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
DateEventDetail
April 16, 2025ReservedReserved by Linux
August 16, 2025PublishedPublished (CNA: Linux)
July 30, 2026RESCOREDRESCORED — CVE-2025-38502 (Linux). CVSS 7.8 → 7.1 (NVD).

Affected

Affected products and packages — 2 rows
VendorProduct / PackageEcosystemVersion introducedFixed
LinuxLinux7d9c3427894fe70d1347b4820476bf37736d2ff0
LinuxLinux5.95.15.192

Weaknesses

CWE-125

References (8)

Related

Authoritative record: CVE-2025-38502 at cve.org

Vendors: linux

Weaknesses: CWE-125

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.