Cloudanix VulnDB

CVE-2026-98380

None

CVSS

—

EPSS

0.2%

Published

Oct 9, 2026

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A timing flaw in the Linux kernel can let a local attacker crash the whole computer while it manages network traffic rules.

Exploitation
Local Privilege
Attacker needs
Local User
Complexity
Moderate
Impact
Denial Of Service
Component
OS kernel
Class
Race Condition
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Race condition in Linux kernel net/sched action deletion allows tcf_idr_delete_index to receive an ERR_PTR(-EBUSY) reservation instead of a valid tc_action, causing dereference of tcfa_bindcnt and a kernel NULL pointer dereference or general protection fault.

Why it matters to the business

Local users or compromised processes can trigger kernel panics on Linux systems performing traffic control operations, resulting in denial of service and potential loss of availability for network services or the entire host.

How an attack unfolds

An attacker with the ability to concurrently manipulate classifiers and delete actions races tcf_action_delete against tcf_idr_delete_index, inserting an error pointer into the IDR slot; the missing error-pointer check then dereferences invalid memory and crashes the kernel.

How to fix it

Apply the upstream kernel commit that adds explicit error-pointer checks in tcf_idr_delete_index before any dereference; rebuild and reboot to the patched kernel. Until patches are available, restrict unprivileged access to traffic-control netlink interfaces.

How to confirm the fix worked

Confirm the presence of the guard that returns -ENOENT on error pointers by inspecting act_api.c around tcf_idr_delete_index; re-run the original reproducer and verify it now returns -ENOENT without KASAN reports or panics.

Typical attack path

  1. Obtain local execution or sufficient privileges to load kernel modules or use netlink interfaces for tc actions
  2. Create and bind classifiers that reference actions
  3. Trigger concurrent deletion and re-reservation of the same action index to place ERR_PTR(-EBUSY) in the IDR
  4. Invoke tcf_action_delete to dereference the error pointer and trigger the fault

How to detect it

Search kernel logs and crash dumps for KASAN null-ptr-deref or general protection faults originating from tca_action_gd, tcf_idr_delete_index, or tcf_action_delete; correlate with netlink activity involving action deletion.

  • BUG: KASAN: null-ptr-deref in tca_action_gd
  • tcf_idr_delete_index at net/sched/act_api.c
  • R15 contains ERR_PTR(-EBUSY)
  • general protection fault, probably for non-canonical address

What your security team should do

  • Prioritize kernel updates for any system exposing net/sched interfaces to untrusted users
  • Monitor for KASAN or oops reports matching tca_action_gd and tcf_idr_delete_index
  • Harden hosts by limiting CAP_NET_ADMIN to trusted processes only

The record

In the Linux kernel, the following vulnerability has been resolved: net/sched: reject IDR error pointers when deleting actions tcf_action_delete() drops the reference held by its lookup before calling tcf_idr_delete_index() with the saved action index. An unlocked classifier can remove that action and reserve the same IDR slot with ERR_PTR(-EBUSY) in between. tcf_idr_delete_index() only checks the lookup result for NULL. It therefore treats the reservation as a tc_action and dereferences tcfa_bindcnt. A hardware execution breakpoint was used to schedule the interleaving without changing the kernel source. KASAN reported this decoded trace: BUG: KASAN: null-ptr-deref in tca_action_gd+0x5b9/0x1010 Read of size 4 at addr 0000000000000010 by task poc/150 Oops: general protection fault, probably for non-canonical address 0xdffffc0000000002 RIP: tca_action_gd+0x5c0/0x1010: arch_atomic_read at arch/x86/include/asm/atomic.h:23 raw_atomic_read at include/linux/atomic/atomic-arch-fallback.h:457 atomic_read at include/linux/atomic/atomic-instrumented.h:33 tcf_idr_delete_index at net/sched/act_api.c:766 tcf_action_delete at net/sched/act_api.c:1859 tcf_del_notify at net/sched/act_api.c:2014 tca_action_gd at net/sched/act_api.c:2064 R13: 0000000000000010 R15: fffffffffffffff0 Kernel panic - not syncing: Fatal exception R15 contains ERR_PTR(-EBUSY), and adding the tcfa_bindcnt offset produces the address in R13. With the guard applied, the same reproducer returned -ENOENT without a KASAN report or panic. Treat error pointers as absent and return -ENOENT.

Affected packages

Ecosystem Package Introduced Fixed