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

bpf: Reject non-scalar bpf_loop iteration counts

bpf_loop() declares its nr_loops argument as ARG_ANYTHING. Privileged
programs may pass pointer values to such arguments, so check_func_arg()
lets a pointer-valued R1 reach the helper-specific checks.

Since commit bb124da69c47 ("bpf: keep track of max number of bpf_loop
callback iterations"), the verifier marks R1 precise and reads its upper
bound to limit callback simulation. Precision backtracking only accepts
scalar registers, so passing a pointer instead triggers the "backtracking
misuse" verifier warning. Kernels with panic_on_warn enabled subsequently
panic.

Introduce ARG_SCALAR for helper arguments that only accept scalar values
and use it for bpf_loop() nr_loops. Generic helper argument validation then
rejects pointers before loop inlining and precision processing.
Published: 2026-09-25
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Kernel panic (Denial of Service)
Action: Apply Patch
AI Analysis

Impact

The vulnerability arises when a privileged program passes a pointer as the nr_loops argument to the bpf_loop eBPF helper. The verifier mistakenly treats the pointer as a scalar, leading to a backtracking misuse warning that compiles into a kernel panic on systems with panic_on_warn enabled. The result is an abrupt system crash, effectively denying service. This flaw is a classic case of improper input validation, allowing an attacker to trigger a crash by supplying an unexpected data type.

Affected Systems

The flaw is present in the Linux kernel, affecting all kernel releases that do not contain the commit that introduces ARG_SCALAR enforcement for bpf_loop. Specific affected versions are not listed; any kernel compiled before the fix is potentially vulnerable. Modern kernels from mainstream distributions now include the patch, but older or custom builds may still be impacted.

Risk and Exploitability

The CVSS score of 5.5 indicates moderate severity. The EPSS score of < 1% suggests a very low probability of exploitation, and the vulnerability is not listed in the CISA KEV catalog. The issue remains locally exploitable by code running with elevated privileges (e.g., CAP_SYS_ADMIN) that can load eBPF programs. Based on the description, it is inferred that the attacker needs local privileges to trigger the vulnerability. When exploited, the kernel will panic, causing a denial of service to the affected host. Because the attack vector requires local code execution, the threat surface is limited to privileged users or compromised applications that can inject eBPF programs.

Generated by OpenCVE AI on September 30, 2026 at 14:20 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the Linux kernel to a version containing commit bb124da69c47, which enforces scalar-only arguments for bpf_loop.
  • If an immediate kernel update is not feasible, restrict eBPF program execution to trusted code or disable bpf_loop usage in untrusted eBPF programs until the patch is applied.
  • Monitor kernel logs for verifier warnings about backtracking misuse and investigate any anomalous activity that could indicate exploitation attempts.

Generated by OpenCVE AI on September 30, 2026 at 14:20 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4817-1 linux-6.12 security update
Debian DSA Debian DSA DSA-6528-1 linux security update
History

Sat, 03 Oct 2026 11:15:00 +0000


Wed, 30 Sep 2026 10:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-20

Tue, 29 Sep 2026 13:15:00 +0000

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

None

cvssV3_1

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

threat_severity

Low


Fri, 25 Sep 2026 17:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-20

Fri, 25 Sep 2026 10:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: bpf: Reject non-scalar bpf_loop iteration counts bpf_loop() declares its nr_loops argument as ARG_ANYTHING. Privileged programs may pass pointer values to such arguments, so check_func_arg() lets a pointer-valued R1 reach the helper-specific checks. Since commit bb124da69c47 ("bpf: keep track of max number of bpf_loop callback iterations"), the verifier marks R1 precise and reads its upper bound to limit callback simulation. Precision backtracking only accepts scalar registers, so passing a pointer instead triggers the "backtracking misuse" verifier warning. Kernels with panic_on_warn enabled subsequently panic. Introduce ARG_SCALAR for helper arguments that only accept scalar values and use it for bpf_loop() nr_loops. Generic helper argument validation then rejects pointers before loop inlining and precision processing.
Title bpf: Reject non-scalar bpf_loop iteration counts
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:12:12.779Z

Reserved: 2026-09-25T10:19:56.068Z

Link: CVE-2026-98007

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-25T11:17:28.967

Modified: 2026-10-19T10:17:52.070

Link: CVE-2026-98007

cve-icon Redhat

Severity : Low

Publid Date: 2026-09-25T00:00:00Z

Links: CVE-2026-98007 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-09-30T14:30:18Z

Weaknesses