← CVE Intelligence

CVE-2026-74522

ksmbd: fix use-after-free in __close_file_table_ids() PUBLISHED

Description (CNA)

In the Linux kernel, the following vulnerability has been resolved: ksmbd: fix use-after-free in __close_file_table_ids() A ksmbd_file can remain alive after logical close while another session holds a temporary reference obtained through ksmbd_lookup_fd_inode(). ksmbd_close_fd() currently marks the file closed and drops the idr-owned reference, but leaves the pointer published in the closing session's idr until the final reference is dropped. If the foreign holder performs the final ksmbd_fd_put(), __put_fd_final() supplies the foreign session's file table to __ksmbd_close_fd(). The object is then freed without being removed from its owner's idr, and the owner session later dereferences the stale pointer during file-table teardown. Remove the volatile id from the owner's idr while ksmbd_close_fd() still holds that table's lock, and clear volatile_id before dropping the idr-owned reference. A later foreign final put then only performs physical destruction and cannot remove the object from the wrong table.

Affected (CNA)

Vendor / productVersions
Linux / Linuxaffected 8510a043d334ecdf83d4604782f288db6bf21d60 before 19bfd90d5aaf63217735d81964585c5306158e5f; affected 8510a043d334ecdf83d4604782f288db6bf21d60 before 67aaec2a1fdce3e1dde46c45b5d1ef8cf22f65cd; affected 8510a043d334ecdf83d4604782f288db6bf21d60 before 0c3918c2cee62ec6c9de8d5c73ebfe6f833961ac; affected 8510a043d334ecdf83d4604782f288db6bf21d60 before 9be4a66f019ea90bd9deca70511f4f9ffebf5c6f; affected 8510a043d334ecdf83d4604782f288db6bf21d60 before cffbdc86393b0235383a20c8c59bc32f16036459; affected 8510a043d334ecdf83d4604782f288db6bf21d60 before e7188199eff46a636f3436356f0aae039be6dd66; affected df30cbfd3d8a70e61ce59f63ce5ed2261799ac10; affected aaf1d5ebb358f546414965b39da90107a7ca7ce5; affected 5.15.38 before 5.16; affected 5.17.6 before 5.18
Linux / Linuxaffected 5.18; unaffected 0 before 5.18; unaffected 6.1.183 through 6.1.*; unaffected 6.6.151 through 6.6.*; unaffected 6.12.103 through 6.12.*; unaffected 6.18.44 through 6.18.*; unaffected 7.1.8 through 7.1.*; unaffected 7.2 through *

CWE

No CWE identifiers supplied.

References