CVE Catalog

CVE-2025-38580

HighCVSS 7.8
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.16%

5th percentile - higher than 5% of all known CVEs

Summary

In the ext4 filesystem in the Linux kernel, a use-after-free vulnerability exists in ext4_end_io_rsv_work(). The issue occurs when an io_end is added to the i_rsv_conversion_list without checking if conversion is needed, and the inode may be freed before the work executes, leading to use-after-free.

Risk Assessment

The vulnerability could allow an attacker to exploit use-after-free for privilege escalation or filesystem destabilization, potentially causing data loss or crashes.

Recommendation

Apply the Linux kernel patch that adds a check on io_end->list_vec and refactors ext4_put_io_end_defer() to prevent unnecessary addition of io_end to the conversion list.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: ext4: fix inode use after free in ext4_end_io_rsv_work() In ext4_io_end_defer_completion(), check if io_end->list_vec is empty to avoid adding an io_end that requires no conversion to the i_rsv_conversion_list, which in turn prevents starting an unnecessary worker. An ext4_emergency_state() check is also added to avoid attempting to abort the journal in an emergency state. Additionally, ext4_put_io_end_defer() is refactored to call ext4_io_end_defer_completion() directly instead of being open-coded. This also prevents starting an unnecessary worker when EXT4_IO_END_FAILED is set but data_err=abort is not enabled. This ensures that the check in ext4_put_io_end_defer() is consistent with the check in ext4_end_bio(). Otherwise, we might add an io_end to the i_rsv_conversion_list and then call ext4_finish_bio(), after which the inode could be freed before ext4_end_io_rsv_work() is called, triggering a use-after-free issue.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS