CVE-2026-93174

bpf: Copy per-CPU map value padding in copy_map_value_long()

State
Published
Severity
Not scored
Published
Sep 17, 2026
Updated
Oct 30, 2026
Reserved
Sep 17, 2026

Read the record on cve.org

Description

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

bpf: Copy per-CPU map value padding in copy_map_value_long()

In kernel, per-CPU map elements are stored with round_up(map->value_size, 8) bytes. On UAPI lookup paths, it copies the rounded size for each CPU into a temporary buffer.

However, copy_map_value_long() passes 'map->value_size' to bpf_obj_memcpy(). When the map has special fields, bpf_obj_memcpy() copies around those fields with memcpy(), and does not copy the tail padding between 'map->value_size' and round_up(map->value_size, 8).

The temporary UAPI lookup buffers are allocated without __GFP_ZERO. As a result, when the per-CPU map's value size is not equal to round_up(map->value_size, 8), UAPI LOOKUP_ELEM and its variants can return stale heap contents from that padding to user space. The same issue applies to bpf_iter for per-CPU maps.

Pass round_up(map->value_size, 8) to bpf_obj_memcpy() from copy_map_value_long(), so per-CPU maps both with and without special fields copy the entire per-CPU slot. Remove the now redundant round_up() from bpf_obj_memcpy()'s long_memcpy path.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 448325199f574d33824dbf9121efb03558412966 to before e0653c8f718109d140e806daac166c43e2b2b8bdAffected
  • 448325199f574d33824dbf9121efb03558412966 to before 953e85da53541a8dc3e7ad4e8532f29a34a32eaeAffected
  • 448325199f574d33824dbf9121efb03558412966 to before 003bf840ed3326bd01396ce7d5b431cef0d371e7Affected
  • 448325199f574d33824dbf9121efb03558412966 to before 5e9f69829835521aa2942d1d14bd0990fbc6991eAffected
  • 448325199f574d33824dbf9121efb03558412966 to before ff3f22ed8d2f350b4c24ee26e33daea5f08d58efAffected
  • 448325199f574d33824dbf9121efb03558412966 to before 7cf9cd98cf6f0df3befc167ca6b54c07014d71deAffected
LinuxLinux
  • 6.1Affected
  • before 6.1Not affected
  • 6.1.191 through 6.1.*Not affected
  • 6.6.157 through 6.6.*Not affected
  • 6.12.110 through 6.12.*Not affected
  • 6.18.52 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.