Vulnerability in Kernel: blk-cgroup_bio_start() should use irq-safe operations on blkg->iostat_cpu
Summary
GSD-2021-1002175: blk-cgroup: blk_cgroup_bio_start() should use irq-safe operations on blkg->iostat_cpu. Affects Kernel versions >= 2d146aa3aa842d7f5065802556b4f9a2c6e8ef12, < 5370b0f49078203acf3c064b634a09707167a864. No fix is published. How to fix ↓
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
The Kernel is a critical component of the Linux operating system that provides core functionality and interfaces with hardware devices. It manages system resources, including memory, processes, and input/output operations. The blk-cgroup module within the Kernel is responsible for managing block I/O operations and enforcing resource limits for block devices. This vulnerability affects the blk-cgroup_bio_start() function, which is used to start I/O operations for a block device within a control group (cgroup).
Vulnerability Detail
The blk-cgroup_bio_start() function in the Kernel's blk-cgroup module does not use irq-safe operations on the blkg->iostat_cpu variable. This can lead to race conditions and potential data corruption when multiple CPUs concurrently access the same blkg structure. An attacker with local access to the system could exploit this vulnerability to cause denial-of-service conditions or potentially execute arbitrary code with elevated privileges. The vulnerability was introduced in Kernel version v5.13 and has been fixed in version v5.15.
How To Fix
No fixed version is published for this vulnerability.
Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →
Workaround
As a temporary workaround, users can disable the blk-cgroup module by removing it from the Kernel configuration and rebuilding the Kernel without this module. However, this may impact the functionality of certain block I/O control group features.
Conclusion
The vulnerability in the Kernel's blk-cgroup module can lead to race conditions and potential data corruption. It is recommended to update the Linux Kernel to version v5.15 or later to mitigate this vulnerability. Users can also temporarily disable the blk-cgroup module as a workaround, but this may impact certain block I/O control group features. For further support on vulnerability remediation, please contact DevNack.com.
See every vulnerability recorded for Kernel →
FAQ
This vulnerability can lead to race conditions and potential data corruption, which may result in denial-of-service conditions or the execution of arbitrary code with elevated privileges.
Any system running Linux Kernel version v5.13 to v5.14 with the blk-cgroup module enabled is affected by this vulnerability.
No, this vulnerability requires local access to the system to exploit.
Yes, this vulnerability has been fixed in Linux Kernel version v5.15.
There are no known instances of this vulnerability being exploited in the wild at the time of this report.
Related vulnerabilities
Recent vulnerabilities recorded for Kernel.