Double Free of blk_mq_tag_set in dev remove after table load fails
Summary
GSD-2021-1000167: dm rq: fix double free of blk_mq_tag_set in dev remove after table load fails. Affects Kernel versions >= 1c357a1e86a4227a6b6059f2de118ae47659cebc, < a992a283c0b77d0a7c2c348add0e6a21fb1dab67. 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 Linux Kernel is an open-source monolithic Unix-like computer operating system kernel. It provides the essential services for the operating system, such as process management, memory management, device management, and file system management. The dm (device mapper) subsystem is a component of the Linux Kernel that provides a framework for mapping one block device onto another. It is commonly used for creating logical volumes, encryption, and snapshotting. The vulnerability in question affects the dm rq (request queue) module, which is responsible for managing I/O requests for the device mapper.
Vulnerability Detail
The vulnerability arises from a double free issue in the dm rq module when a block multi-queue (blk_mq) tag set is freed twice during the removal of a device after a table load failure. This can lead to a use-after-free condition, potentially allowing an attacker to execute arbitrary code or cause a denial-of-service by crashing the system. The vulnerability was introduced in Linux Kernel version 4.6 and is fixed in version 5.4.118.
How To Fix
No fixed version is published for this vulnerability.
To fix this vulnerability, it is recommended to update the Linux Kernel to version 5.4.118 or later. This can be done by obtaining the latest kernel source code from the official Linux Kernel repository (https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/) and compiling it for the target system. Alternatively, users can check for available updates through their Linux distribution's package manager and install the latest kernel package.
Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →
Workaround
There is no known workaround for this vulnerability. It is essential to update the Linux Kernel to a fixed version as soon as possible.
Conclusion
The double free vulnerability in the dm rq module of the Linux Kernel can lead to a use-after-free condition, potentially allowing an attacker to execute arbitrary code or cause a denial-of-service. It is crucial to update the Linux Kernel to version 5.4.118 or later to mitigate this vulnerability. For further support on vulnerability remediation, please contact DevNack.com.
See every vulnerability recorded for Kernel →
FAQ
The vulnerability can potentially allow an attacker to execute arbitrary code or cause a denial-of-service by crashing the system.
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 known vulnerabilities are found.
At the time of this report, there is no known exploit for this vulnerability. However, it is crucial to update the Linux Kernel to a fixed version to mitigate the risk.
Yes, this vulnerability can be exploited remotely if the affected system is accessible over a network.
Unfortunately, there are no known mitigations available for this vulnerability other than updating the Linux Kernel to a fixed version.
Related vulnerabilities
Recent vulnerabilities recorded for Kernel.
Follow Vulert in Google
Get more Vulert vulnerability and dependency-security updates in Google Search and AI results.