CVE-2022-50563
BaseFortify
Publication date: 2025-10-22
Last updated on: 2025-10-22
Assigner: kernel.org
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| linux | kernel | * |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-UNKNOWN |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability is a use-after-free (UAF) bug in the Linux kernel's device mapper thin provisioning (dm thin) subsystem. It occurs when dm_resume() and dm_destroy() functions run concurrently, leading to a timer being added after the associated pool has already been freed. When the timer expires, it triggers run_timer_softirq(), which accesses the freed memory, causing a use-after-free error. This happens because dm_destroy() skips cancelling the timer due to the suspend status, and dm_resume() adds the timer again, resulting in a race condition and memory corruption.
How can this vulnerability impact me? :
This vulnerability can lead to kernel crashes or undefined behavior due to use-after-free memory access. Exploiting this flaw could potentially allow an attacker to execute arbitrary code in kernel space or cause denial of service by crashing the system, impacting system stability and security.
What immediate steps should I take to mitigate this vulnerability?
To mitigate this vulnerability, avoid concurrently running dm_resume() and dm_destroy() operations on thin-pools. Specifically, do not resume a thin-pool while simultaneously removing it. Follow the sequence carefully: create the thin-pool, suspend it, resume it, and only then remove it after ensuring no concurrent resume operation is ongoing. Additionally, apply any available patches that fix the use-after-free by cancelling timers properly in __pool_destroy().