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

bpf: Restrict CO-RE poisoning to relocatable instructions

CO-RE relocation records can name any instruction offset. When a
relocation cannot be resolved, bpf_core_patch_insn() currently poisons its
target before checking whether that instruction is a valid relocation
target. Malformed metadata can therefore replace jumps, calls, exits,
register-source arithmetic, or non-immediate loads instead of failing at
the relocation step.

Handle poisoning only after the instruction has passed the same class and
operand-form checks used for a resolved relocation. Route invalid forms
through the existing diagnostic and return a hard error. Keep poisoning
supported instructions, including both halves of a plain ldimm64, so an
unresolved relocation in dead code remains valid.

Extend bpf_core_poison_insn() to poison both halves of ldimm64, and return
its status directly from each validated instruction case. This avoids
routing the success path through a common label and leaves the helper free
to report errors.

The shared relocation code applies this restriction to both libbpf and
in-kernel CO-RE.
Published: 2026-10-18
Score: n/a
EPSS: n/a
KEV: No
Impact: Potential arbitrary instruction modification leading to code execution
Action: Apply Update
AI Analysis

Impact

The Linux kernel BPF subsystem allows custom bytecode to be executed in kernel space. This vulnerability enables malicious metadata to alter relocatable instructions such as jumps, calls, and loads before the target is validated, effectively poisoning the program counter or other critical CPU state. An attacker could force a victim program to execute unintended instructions, potentially leading to privilege escalation or arbitrary code execution.

Affected Systems

All Linux kernel releases that contain the bpf CO-RE relocation logic are affected. No specific version range was provided, so any kernel build using the default BPF bytecode loader is considered vulnerable until the patch is applied.

Risk and Exploitability

The CVSS score is not listed, and EPSS information is unavailable, so an exact risk ranking cannot be quantified. The vulnerability is not listed in the CISA KEV catalog at this time. The likely attack vector would involve an attacker feeding crafted BPF programs or metadata to a vulnerable host; once processed by the kernel, the poisoned instructions could be executed. Because the flaw affects low‑level kernel code, exploitation could occur without user interaction if the attacker can inject malformed BPF programs into the system.

Generated by OpenCVE AI on October 18, 2026 at 18:19 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the latest kernel update that includes the bpf CO-RE poisoning fix
  • Disable or limit the use of CO-RE relocations for BPF programs if not required, for example by disabling BPF CO-RE support in the kernel configuration
  • Ensure that only trusted sources can load BPF programs, enforcing strict capability checks and using kernel security modules such as SELinux or CBAC

Generated by OpenCVE AI on October 18, 2026 at 18:19 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

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: Restrict CO-RE poisoning to relocatable instructions CO-RE relocation records can name any instruction offset. When a relocation cannot be resolved, bpf_core_patch_insn() currently poisons its target before checking whether that instruction is a valid relocation target. Malformed metadata can therefore replace jumps, calls, exits, register-source arithmetic, or non-immediate loads instead of failing at the relocation step. Handle poisoning only after the instruction has passed the same class and operand-form checks used for a resolved relocation. Route invalid forms through the existing diagnostic and return a hard error. Keep poisoning supported instructions, including both halves of a plain ldimm64, so an unresolved relocation in dead code remains valid. Extend bpf_core_poison_insn() to poison both halves of ldimm64, and return its status directly from each validated instruction case. This avoids routing the success path through a common label and leaves the helper free to report errors. The shared relocation code applies this restriction to both libbpf and in-kernel CO-RE.
Title bpf: Restrict CO-RE poisoning to relocatable instructions
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:54.307Z

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

Link: CVE-2026-98626

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

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

Modified: 2026-10-18T16:17:15.640

Link: CVE-2026-98626

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-19T08:15:14Z

Weaknesses

No weakness.