
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2023-54271 is a race condition vulnerability in the Linux kernel's block I/O cgroup (blk-cgroup) subsystem that causes a NULL pointer dereference in the blk-iocost component. The flaw exists in blkcg_activate_policy(), which allocates, initializes, and onlines policy data in separate phases without adequate locking, allowing a concurrent ioc_weight_write() call to encounter uninitialized policy data. It was publicly disclosed on December 30, 2025, and affects the Linux kernel across multiple stable branches. The vulnerability carries a CVSS v3.1 base score of 7.0 (High) (Red Hat CVE, Red Hat Bugzilla).
The root cause is a race condition (CWE-362) in blkcg_activate_policy(), which performs three sequential operations — allocating blkg_policy_data (pd) for all existing block groups (blkg), initializing them, and onlining them — without holding blkcg->lock across all phases. Because blkcg_activate_policy() only holds queue_lock (and may release it during allocation), a concurrent ioc_weight_write() call that holds blkcg->lock and iterates all blkgs can encounter a pd that has been installed (step 1) but not yet initialized (step 2), resulting in iocg->ioc being NULL. The crash manifests as a kernel NULL pointer dereference at address 0xe0 inside _raw_spin_lock, triggered when the uninitialized field is accessed. The fix reorganizes blkcg_activate_policy() to allocate, initialize, and online each blkg's pd individually while holding blkcg->lock over initialization and onlining, eliminating the race window (Red Hat Bugzilla).
Successful exploitation causes a kernel NULL pointer dereference (BUG), crashing the system and resulting in a Denial of Service. The crash occurs in the _raw_spin_lock function when accessing uninitialized memory at offset 0xe0, leading to system instability and service disruption. While the CVSS score reflects high confidentiality, integrity, and availability impact (consistent with kernel-level crashes), the primary observed consequence is availability loss; no data exfiltration or privilege escalation has been demonstrated in practice (Red Hat CVE, Red Hat Bugzilla).
/sys/fs/cgroup/cgroup.subtree_control to enable the io controller (e.g., echo +io > /sys/fs/cgroup/cgroup.subtree_control).io.cost.qos cgroup file to activate the blk-iocost policy (e.g., echo '8:0 enable=1' > /sys/fs/cgroup/io.cost.qos &), which calls blkcg_activate_policy() and begins allocating uninitialized blkg_policy_data structures.io.weight cgroup file (e.g., echo 100 > /sys/fs/cgroup/system.slice/io.weight), triggering ioc_weight_write() which iterates blkgs and accesses the partially-initialized pd.ioc_weight_write() accesses iocg->ioc while it is still NULL, causing a kernel NULL pointer dereference crash (BUG) and system reboot/panic (Red Hat Bugzilla).BUG: kernel NULL pointer dereference, address: 00000000000000e0 with a call trace including ioc_weight_write, cgroup_file_write, kernfs_fop_write_iter, and _raw_spin_lock./var/log/kern.log entries showing CR2: 00000000000000e0 and RIP: 0010:_raw_spin_lock+0x17/0x30 at the time of crash./sys/fs/cgroup/io.cost.qos and /sys/fs/cgroup/*/io.weight from low-privileged processes in close temporal proximity.Apply the upstream Linux kernel patch that reorganizes blkcg_activate_policy() to allocate, initialize, and online each blkg's policy data individually while holding blkcg->lock, eliminating the race window. Patches are available in multiple stable kernel branches via the upstream kernel git repository. As a temporary workaround, restrict write access to cgroup I/O weight (io.weight) and QoS (io.cost.qos) configuration files to trusted administrators only, reducing the likelihood of triggering the race. Systems not using cgroup-based I/O resource management with the blk-iocost policy are not at risk (Red Hat CVE, Red Hat Bugzilla).
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."