Cloudanix VulnDB

CVE-2026-63802

High · 7.8

CVSS

7.8

EPSS

0.1%

Published

Jul 19, 2026

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A bug in how Linux manages groups of storage devices can let someone already on the machine seize complete control or crash everything.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
Low
Impact
Full Compromise
Component
OS kernel
Class
Use After Free
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Use-after-free in __blkcg_rstat_flush() triggered when multiple blkgs in the same blkcg are released concurrently, with one blkg's flush removing another's iostat entries via llist_del_all() while the second blkg frees itself.

Why it matters to the business

Local attackers can achieve kernel-level code execution or cause system crashes on Linux hosts, resulting in full compromise of servers, containers, or embedded devices and potential disruption of workloads.

How an attack unfolds

An attacker with local access creates concurrent blkg release conditions in the block cgroup subsystem; the race allows access to freed iostat structures during rstat flush, leading to memory corruption that can be leveraged for privilege escalation.

How to fix it

Apply a kernel patch that moves the flush operation from the __blkg_release() RCU callback into blkg_release() before the call_rcu invocation; rebuild and deploy the updated kernel across all affected systems.

How to confirm the fix worked

Inspect the blk-cgroup.c source to confirm the flush logic has been relocated before the RCU grace period; boot the patched kernel and exercise blkcg workloads to ensure no UAF reports appear in kernel logs.

Typical attack path

  1. Obtain local user access on a Linux system
  2. Trigger concurrent release of multiple blkgs sharing a blkcg
  3. Race the __blkcg_rstat_flush() and blkg free paths to hit the UAF
  4. Corrupt kernel memory to execute arbitrary code or crash the kernel

How to detect it

Review kernel logs for oops or panic messages involving blk-cgroup or rstat flushing; monitor for unexpected memory corruption indicators during high blkcg churn workloads.

What your security team should do

  • Prioritize kernel updates on all exposed Linux systems
  • Limit untrusted local access and container workloads until patched
  • Enable kernel hardening features such as KASAN in test environments to catch similar issues

The record

In the Linux kernel, the following vulnerability has been resolved: blk-cgroup: fix UAF in __blkcg_rstat_flush() When multiple blkgs in the same blkcg are released concurrently, a use-after-free can occur. The race happens when one blkg's __blkcg_rstat_flush() removes another blkg's iostat entries via llist_del_all(). The second blkg sees an empty list and proceeds to free itself while the first is still iterating over its entries. Move the flush from __blkg_release() (RCU callback) to blkg_release() (before call_rcu). This ensures the RCU grace period waits for any concurrent flush's rcu_read_lock() section to complete before freeing.

Affected packages

Ecosystem Package Introduced Fixed

Related vulnerabilities