CVE-2024-53176
MediumIn the Linux kernel, the following vulnerability has been resolved: smb: During unmount, ensure all cached dir instances drop their dentry The unmount process (cifs_kill_sb() calling close_all_cached_dirs()) can race with various cached directory operations, which ultimately results in dentries not being dropped and these kernel BUGs: BUG: Dentry ffff88814f37e358{i=1000000000080,n=/} still in use (2) [unmount of cifs cifs] VFS: Busy inodes after unmount of cifs (cifs) ------------[ cut here ]------------ kernel BUG at fs/super.c:661! This happens when a cfid is in the process of being cleaned up when, and has been removed from the cfids->entries list, including: - Receiving a lease break from the server - Server reconnection triggers invalidate_all_cached_dirs(), which removes all the cfids from the list - The laundromat thread decides to expire an old cfid. To solve these problems, dropping the dentry is done in queued work done in a newly-added cfid_put_wq workqueue, and close_all_cached_dirs() flushes that workqueue after it drops all the dentries of which it's aware. This is a global workqueue (rather than scoped to a mount), but the queued work is minimal. The final cleanup work for cleaning up a cfid is performed via work queued in the serverclose_wq workqueue; this is done separate from dropping the dentries so that close_all_cached_dirs() doesn't block on any server operations. Both of these queued works expect to invoked with a cfid reference and a tcon reference to avoid those objects from being freed while the work is ongoing. While we're here, add proper locking to close_all_cached_dirs(), and locking around the freeing of cfid->dentry.
CVSS 3.1 score
4.7
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
Affected versions
Linux kernel versions
6.1
and later are affected. Fixed in
6.6.64,
6.11.11,
6.12.2,
6.13
and their respective stable series.
References
The following references provide additional information about CVE-2024-53176 including vendor advisories, patch commits, exploit details, and third-party analysis. Links are sourced from the NIST NVD database.
-
PatchKernel patch commithttps://git.kernel.org/stable/c/3fa640d035e5ae526769615c35cb9ed4be6e3662
-
PatchKernel patch commithttps://git.kernel.org/stable/c/548812afd96982a76a93ba76c0582ea670c40d9e
-
PatchKernel patch commithttps://git.kernel.org/stable/c/73934e535cffbda1490fa97d82690a0f9aa73e94
Frequently asked questions
-
What is CVE-2024-53176?
CVE-2024-53176 is a Medium severity Linux kernel vulnerability with a CVSS score of 4.7 out of 10 . It affects Linux kernel versions from 6.1 onward and has been patched in 6.6.64, 6.11.11, 6.12.2 and others. CVE-2024-53176 has not been confirmed as actively exploited and is not listed in the CISA KEV catalog.
-
What is the CVSS score for CVE-2024-53176?
CVE-2024-53176 has a CVSS score of 4.7 out of 10, rated Medium severity (CVSS 3.1). The vector string is
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H. -
Is there a patch available for CVE-2024-53176?
Yes — CVE-2024-53176 has been patched. Fixed versions include 6.6.64, 6.11.11, 6.12.2 and others. If you are running Linux kernel 6.1 or later up to the fix versions, apply the relevant patch for your kernel branch.
-
Is CVE-2024-53176 actively exploited?
No — CVE-2024-53176 has not been confirmed as actively exploited. It is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog.