CVE-2022-50305
BaseFortify
Publication date: 2025-09-15
Last updated on: 2025-12-04
Assigner: kernel.org
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| linux | linux_kernel | From 6.0.11 (inc) to 6.0.16 (exc) |
| linux | linux_kernel | From 6.1.1 (inc) to 6.1.2 (exc) |
| linux | linux_kernel | 6.1 |
| linux | linux_kernel | 6.1 |
| linux | linux_kernel | 6.1 |
| linux | linux_kernel | 6.1 |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-416 | The product reuses or references memory after it has been freed. At some point afterward, the memory may be allocated again and saved in another pointer, while the original pointer references a location somewhere within the new allocation. Any operations using the original pointer are no longer valid because the memory "belongs" to the code that operates on the new pointer. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability is a use-after-free issue in the Linux kernel's sof_es8336 driver. The sof_es8336_remove() function calls cancel_delayed_work(), which does not wait for the delayed work's callback function to finish. As a result, the callback may still run after the driver has been removed, leading to use-after-free, where the code accesses memory that has already been freed. The fix involves using cancel_delayed_work_sync() to ensure the work is fully cancelled and not running after removal.
How can this vulnerability impact me? :
This vulnerability can lead to use-after-free conditions, which may cause system instability, crashes, or potentially allow an attacker to execute arbitrary code or escalate privileges by exploiting the improper memory handling in the driver.
What immediate steps should I take to mitigate this vulnerability?
Update the Linux kernel to a version that includes the fix for the sof_es8336 driver, where cancel_delayed_work() is replaced with cancel_delayed_work_sync() in sof_es8336_remove(). This ensures proper cancellation of delayed work and prevents use-after-free issues.