CVE-2023-54194
Memory Allocation Failure in Linux exFAT Driver Causes Mount Issues
Publication date: 2025-12-30
Last updated on: 2025-12-30
Assigner: kernel.org
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| linux | linux_kernel | 4.19 |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-UNKNOWN |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability occurs in the Linux kernel's exfat file system implementation where memory allocation uses kmalloc_array, which requires continuous physical memory. Due to system memory fragmentation, this allocation can fail when a u-disk formatted with exfat is inserted, causing the device not to be recognized. The fix replaces kmalloc_array/kfree with kvmalloc_array/kvfree, which does not require continuous physical memory, thus preventing allocation failures during mounting of exfat file systems.
How can this vulnerability impact me? :
The impact of this vulnerability is that when a u-disk using the exfat file system is inserted into a Linux system with fragmented memory, the system may fail to allocate memory properly, causing the device not to be recognized or mounted. This can lead to loss of access to the inserted storage device and potential disruption in workflows relying on such devices.
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This vulnerability can be detected by monitoring kernel logs for memory allocation failures related to exfat filesystem mounting. Specifically, look for messages indicating 'page allocation failure' and call traces involving kmalloc_array failures when inserting exfat-formatted USB devices. You can use the command 'dmesg | grep -i exfat' or 'journalctl -k | grep -i exfat' to check for such errors in kernel logs.
What immediate steps should I take to mitigate this vulnerability?
Immediate mitigation involves updating the Linux kernel to a version where the exfat filesystem uses kvmalloc_array/kvfree instead of kmalloc_array/kfree, as this change addresses memory allocation failures due to system memory fragmentation. Until the update is applied, avoid inserting exfat-formatted USB devices into long-running systems that may have fragmented physical memory.