From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-cve-announce@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@kernel.org>
Subject: CVE-2026-74522: ksmbd: fix use-after-free in __close_file_table_ids()
Date: Sat, 15 Aug 2026 21:26:43 +0900 [thread overview]
Message-ID: <2026081545-CVE-2026-74522-bc43@gregkh> (raw)
From: Greg Kroah-Hartman <gregkh@kernel.org>
Description
===========
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.
The Linux kernel CVE team has assigned CVE-2026-74522 to this issue.
Affected and fixed versions
===========================
Issue introduced in 5.18 with commit 8510a043d334ecdf83d4604782f288db6bf21d60 and fixed in 6.6.151 with commit 67aaec2a1fdce3e1dde46c45b5d1ef8cf22f65cd
Issue introduced in 5.18 with commit 8510a043d334ecdf83d4604782f288db6bf21d60 and fixed in 6.12.103 with commit 0c3918c2cee62ec6c9de8d5c73ebfe6f833961ac
Issue introduced in 5.18 with commit 8510a043d334ecdf83d4604782f288db6bf21d60 and fixed in 6.18.44 with commit 9be4a66f019ea90bd9deca70511f4f9ffebf5c6f
Issue introduced in 5.18 with commit 8510a043d334ecdf83d4604782f288db6bf21d60 and fixed in 7.1.8 with commit cffbdc86393b0235383a20c8c59bc32f16036459
Issue introduced in 5.18 with commit 8510a043d334ecdf83d4604782f288db6bf21d60 and fixed in 7.2-rc6 with commit e7188199eff46a636f3436356f0aae039be6dd66
Issue introduced in 5.15.38 with commit df30cbfd3d8a70e61ce59f63ce5ed2261799ac10
Issue introduced in 5.17.6 with commit aaf1d5ebb358f546414965b39da90107a7ca7ce5
Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.
Unaffected versions might change over time as fixes are backported to
older supported kernel versions. The official CVE entry at
https://cve.org/CVERecord/?id=CVE-2026-74522
will be updated if fixes are backported, please check that for the most
up to date information about this issue.
Affected files
==============
The file(s) affected by this issue are:
fs/smb/server/vfs_cache.c
Mitigation
==========
The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes. Individual
changes are never tested alone, but rather are part of a larger kernel
release. Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all. If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
https://git.kernel.org/stable/c/67aaec2a1fdce3e1dde46c45b5d1ef8cf22f65cd
https://git.kernel.org/stable/c/0c3918c2cee62ec6c9de8d5c73ebfe6f833961ac
https://git.kernel.org/stable/c/9be4a66f019ea90bd9deca70511f4f9ffebf5c6f
https://git.kernel.org/stable/c/cffbdc86393b0235383a20c8c59bc32f16036459
https://git.kernel.org/stable/c/e7188199eff46a636f3436356f0aae039be6dd66
reply other threads:[~2026-08-15 12:31 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2026081545-CVE-2026-74522-bc43@gregkh \
--to=gregkh@linuxfoundation.org \
--cc=cve@kernel.org \
--cc=gregkh@kernel.org \
--cc=linux-cve-announce@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.