CVE-2026-23292
Recursive Locking Vulnerability in Linux Kernel SCSI Target Component
Publication date: 2026-03-25
Last updated on: 2026-03-25
Assigner: kernel.org
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| linux | 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 exists in the Linux kernel's SCSI target code, specifically in the function __configfs_open_file(). The issue arises due to recursive locking of a semaphore called frag_sem. During the execution of flush_write_buffer, the frag_sem semaphore is acquired, and then the function target_core_item_dbroot_store() is called. This function attempts to open a file path using filp_open(), but it ends up trying to open the same configfs file it is already working on. This causes the semaphore frag_sem to be acquired again in a nested manner, leading to recursive locking.
The fix involves changing target_core_item_dbroot_store() to use kern_path() instead of filp_open(), avoiding the use of the filesystem-specific __configfs_open_file() function and thus preventing the recursive locking scenario.
How can this vulnerability impact me? :
This vulnerability can lead to recursive locking of a semaphore within the Linux kernel's SCSI target code. Recursive locking can cause deadlocks or system instability, potentially leading to kernel hangs or crashes. Such behavior can disrupt normal system operations, affecting availability and reliability.
What immediate steps should I take to mitigate this vulnerability?
The vulnerability is fixed by modifying the Linux kernel code, specifically by changing target_core_item_dbroot_store() to use kern_path() instead of filp_open() to avoid recursive locking.
Therefore, the immediate step to mitigate this vulnerability is to update your Linux kernel to a version that includes this fix.