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

bpf: Preserve packet pointer class displacement in regsafe()

regsafe() maps packet pointer IDs between states and checks that each
current register range is a subset of the corresponding explored
register range. It does not, however, preserve the displacement between
registers that share a packet pointer ID.

This is unsound because packet range is shared by ID. A bounds check on
one class member updates every member, and a later access can consume the
range through another member. Commit 022ac0750883 ("bpf: use reg->var_off
instead of reg->off for pointers") folded the fixed pointer offset into
r64 and removed the old off equality check, so two individually narrower
registers can prune even when their displacement has changed. The
explored path can then license an out-of-bounds packet access on the
pruned path.

Require matching range bases for packet pointers with an ID. Together
with the existing ID mapping, this preserves the displacement between
members of each packet-pointer class without adding per-ID state.
Packet pointers without an ID remain unaffected.
Published: 2026-10-18
Score: 6.7 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Out-of-bounds packet access leading to memory corruption
Action: Patch kernel
AI Analysis

Impact

The Linux kernel’s bpf subsystem contains a flaw in the regsafe() function, which incorrectly preserves packet pointer displacement across registers sharing the same packet pointer ID. This allows a bounds check performed on one member of a packet‑pointer class to be incorrectly applied to all members, so a subsequent access can read or write beyond the intended packet bounds, potentially corrupting kernel memory. The issue arises only in kernel versions that contain the pre‑fixed regsafe() code and can be leveraged by a malicious user capable of loading BPF programs.

Affected Systems

All Linux kernel releases that include the bpf regsafe() implementation before the commit that introduces the corrected pointer offset (commit 022ac07508…) are affected. In practice any distribution that ships the upstream kernel without that patch is at risk, regardless of vendor. Specific version ranges are not enumerated in the advisory, so systems should verify whether their running kernel series incorporates the fix.

Risk and Exploitability

The CVSS score of 6.7 indicates moderate severity, while the EPSS score of < 1% suggests a low probability of exploitation today. The flaw is not listed in CISA’s KEV catalog. Although exploitation requires the ability to load a BPF program—a privilege typically reserved for system administrators or privileged users—the potential for out-of-bounds access can lead to kernel memory corruption, which could grant elevated privileges or cause denial of service, making the vulnerability dangerous if an attacker manages to inject malicious BPF code.

Generated by OpenCVE AI on October 23, 2026 at 07:00 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the kernel to a release that includes commit 022ac07508 or later, or backport the regsafe() displacement fix manually.
  • If a kernel upgrade cannot be performed immediately, limit BPF program loading to trusted users only or disable loading of untrusted BPF programs via kernel configuration or sysctl knobs.
  • Continuously monitor distribution advisories for kernel patches and apply them promptly when available.

Generated by OpenCVE AI on October 23, 2026 at 07:00 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 23 Oct 2026 00:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119
CWE-787

Thu, 22 Oct 2026 12:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-125
References
Metrics threat_severity

None

cvssV3_1

{'score': 6.7, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H'}

threat_severity

Moderate


Sun, 18 Oct 2026 23:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119
CWE-787

Sun, 18 Oct 2026 15:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: bpf: Preserve packet pointer class displacement in regsafe() regsafe() maps packet pointer IDs between states and checks that each current register range is a subset of the corresponding explored register range. It does not, however, preserve the displacement between registers that share a packet pointer ID. This is unsound because packet range is shared by ID. A bounds check on one class member updates every member, and a later access can consume the range through another member. Commit 022ac0750883 ("bpf: use reg->var_off instead of reg->off for pointers") folded the fixed pointer offset into r64 and removed the old off equality check, so two individually narrower registers can prune even when their displacement has changed. The explored path can then license an out-of-bounds packet access on the pruned path. Require matching range bases for packet pointers with an ID. Together with the existing ID mapping, this preserves the displacement between members of each packet-pointer class without adding per-ID state. Packet pointers without an ID remain unaffected.
Title bpf: Preserve packet pointer class displacement in regsafe()
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-19T09:22:55.260Z

Reserved: 2026-09-25T10:25:14.361Z

Link: CVE-2026-98627

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-18T16:17:15.760

Modified: 2026-10-19T10:19:26.953

Link: CVE-2026-98627

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-10-18T00:00:00Z

Links: CVE-2026-98627 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-23T07:00:17Z

Weaknesses