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

bpf: Reject resilient lock operations in rbtree callbacks

__bpf_rbtree_add() keeps parent and link pointers live across calls to the
program-supplied comparison callback. The verifier therefore requires the
root's lock to remain held throughout the callback.

The helper path enforces this rule for bpf_spin_lock() and
bpf_spin_unlock(), but the resilient lock kfunc argument path does not.
Since resilient locks may protect BPF rbtree roots, a callback can release
the root lock and let another CPU remove and free the node referenced by
the in-progress tree walk. The walk then resumes using freed pointers.

Reject resilient lock kfuncs in an rbtree comparison callback, matching
the existing policy for the spin lock helpers. Resilient-lock-protected
trees remain valid when their comparison callbacks leave lock state alone.
Published: 2026-09-25
Score: 7.0 High
EPSS: < 1% Very Low
KEV: No
Impact: Use after free in kernel leading to potential arbitrary kernel code execution
Action: Immediate patch
AI Analysis

Impact

The vulnerability arises in the Linux kernel's BPF subsystem, where a rbtree callback may execute a resilient lock operation that fails to keep the root lock held during callback execution. This oversight allows the callback to release the lock, enabling another CPU to remove and free the node currently being walked. The traversal then continues using freed pointers, creating a use-after-free condition. A successful exploitation could corrupt kernel memory and, in the kernel context, provide an attacker with the possibility of arbitrary code execution.

Affected Systems

All Linux kernel configurations that incorporate BPF rbtree callbacks without the recent patch are affected. The vulnerability is present in any Linux kernel version prior to the commit that rejects resilient lock operations in rbtree comparison callbacks. Specific version ranges are not documented in the supplied data.

Risk and Exploitability

The CVSS score is 7.0, indicating high severity. The EPSS score is < 1%, suggesting a very low but nonzero exploitation probability. The vulnerability is not listed in the CISA KEV catalog. Likely attack vectors involve running a malicious BPF program that performs a resilient lock operation within a rbtree comparison callback. Such a program would require local kernel access or elevated privileges, pointing to a potential local privilege escalation or kernel exploit path.

Generated by OpenCVE AI on September 30, 2026 at 06:02 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the latest Linux kernel update that contains the patch rejecting resilient lock operations in rbtree callbacks, ensuring the verifier enforces the lock policy for all lock helpers.
  • If a kernel upgrade cannot be applied immediately, disable the use of resilient lock operations within any BPF rbtree callbacks by enforcing stricter verifier checks or by recompiling the kernel without support for resilient locks in BPF contexts.
  • Deploy kernel memory protection mechanisms such as KASAN or eBPF ring buffer monitoring to detect use‑after‑free events and contain potential exploitation until a permanent fix is deployed.

Generated by OpenCVE AI on September 30, 2026 at 06:02 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

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

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

None

cvssV3_1

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

threat_severity

Moderate


Fri, 25 Sep 2026 16:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

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 resilient lock operations in rbtree callbacks __bpf_rbtree_add() keeps parent and link pointers live across calls to the program-supplied comparison callback. The verifier therefore requires the root's lock to remain held throughout the callback. The helper path enforces this rule for bpf_spin_lock() and bpf_spin_unlock(), but the resilient lock kfunc argument path does not. Since resilient locks may protect BPF rbtree roots, a callback can release the root lock and let another CPU remove and free the node referenced by the in-progress tree walk. The walk then resumes using freed pointers. Reject resilient lock kfuncs in an rbtree comparison callback, matching the existing policy for the spin lock helpers. Resilient-lock-protected trees remain valid when their comparison callbacks leave lock state alone.
Title bpf: Reject resilient lock operations in rbtree callbacks
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-09-25T10:24:05.380Z

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

Link: CVE-2026-98060

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Awaiting Analysis

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

Modified: 2026-09-30T14:10:59.253

Link: CVE-2026-98060

cve-icon Redhat

Severity : Moderate

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

Links: CVE-2026-98060 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-09-30T06:15:18Z

Weaknesses