Vulnerability in blk-cgroup: blk_cgroup_bio_start()
Summary
UVI-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 package is a crucial component of the Linux operating system, responsible for managing the system's core functionality. It provides an interface between the hardware and software layers, allowing applications to communicate with the underlying hardware. The blk-cgroup module within the Kernel package is responsible for managing block devices and their associated control groups. Control groups allow for resource allocation and monitoring of block devices. However, a vulnerability has been identified in the blk_cgroup_bio_start() function, which can lead to potential security risks.
Vulnerability Detail
The vulnerability in blk-cgroup's blk_cgroup_bio_start() function arises from the improper use of irq-unsafe operations on the blkg->iostat_cpu variable. This can result in race conditions and data corruption when multiple threads or interrupts access the same block group concurrently. An attacker could potentially exploit this vulnerability to gain unauthorized access, escalate privileges, or cause denial-of-service conditions. The vulnerability was introduced in version v5.13 of the Linux Kernel 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 workaround, users can apply a patch or backport the fix to the affected version of the Kernel. The patch can be obtained from the commit 5370b0f49078203acf3c064b634a09707167a864 in the Linux Kernel repository. The patch should be applied carefully, following the instructions provided in the repository. It is recommended to thoroughly test the patched Kernel before deploying it in a production environment.
Conclusion
The vulnerability in blk-cgroup's blk_cgroup_bio_start() function can pose significant security risks if left unaddressed. It is crucial to update the Linux Kernel package to version v5.15 or later to mitigate these risks. Applying the provided patch or backporting the fix can serve as a temporary workaround. For further support and assistance in vulnerability remediation, please contact DevNack.com.
See every vulnerability recorded for Kernel →
FAQ
This vulnerability can potentially be exploited by attackers to gain unauthorized access, escalate privileges, or cause denial-of-service conditions.
You can use the Vulert Playground (https://vulert.com/scanner) to check if your system is affected by this vulnerability. Simply upload your package-lock.json file to the playground, and it will analyze the dependencies and alert you if any vulnerabilities are found.
At the time of this report, there is no known exploit for this vulnerability. However, it is important to apply the necessary updates or patches to mitigate the risk.
This vulnerability requires local access to the system. However, if an attacker gains local access, they can potentially exploit this vulnerability to compromise the system.
If updating the Kernel is not immediately feasible, applying the provided patch or backporting the fix can serve as a temporary mitigation. However, it is strongly recommended to update to the latest version as soon as possible.
Related vulnerabilities
Recent vulnerabilities recorded for Kernel.