* CVE-2026-89641: cifs: clear tcon after cifsFileInfo_put() in cifs_file_set_size()
@ 2026-09-11 19:45 Greg Kroah-Hartman
0 siblings, 0 replies; only message in thread
From: Greg Kroah-Hartman @ 2026-09-11 19:45 UTC (permalink / raw)
To: linux-cve-announce; +Cc: Greg Kroah-Hartman
From: Greg Kroah-Hartman <gregkh@kernel.org>
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
cifs: clear tcon after cifsFileInfo_put() in cifs_file_set_size()
When the else branch of cifs_file_set_size() finds a writable file handle
via find_writable_file(), it borrows tcon and server from the handle's
tlink, attempts the handle-based set_file_size() RPC, and then releases
the handle with cifsFileInfo_put().
If set_file_size() fails, execution falls through to the path-based
fallback, which reuses the borrowed tcon and server under the
"if (tcon == NULL)" guard. Since tcon is not NULL at that point, the
guard is skipped. If cifsFileInfo_put() dropped the last reference on a
tlink that was already removed from the tlink tree (TCON_LINK_IN_TREE
cleared, as happens during reconnection or session teardown),
cifs_put_tlink() will have freed tcon; the subsequent set_path_size()
call is then a use-after-free.
Setting tcon = NULL after cifsFileInfo_put() causes the existing guard
to take the cifs_sb_tlink() path, which acquires a fresh reference for
the path-based operation or fails cleanly if the session is gone.
The Linux kernel CVE team has assigned CVE-2026-89641 to this issue.
Affected and fixed versions
===========================
Issue introduced in 6.18 with commit 110fee6b9bb58a5c50047fc2594d415f741b591e and fixed in 6.18.50 with commit 4f18c9e7ee464aaae5cd9fccdb943b3fcb4655d4
Issue introduced in 6.18 with commit 110fee6b9bb58a5c50047fc2594d415f741b591e and fixed in 7.2.4 with commit 4bea15d9c7683218f57b8c1f5f0aa75cab76af8d
Issue introduced in 6.18 with commit 110fee6b9bb58a5c50047fc2594d415f741b591e and fixed in 7.3-rc1 with commit b96db32fed8dfb2478d7c208f89bf383beed1535
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-89641
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/client/inode.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/4f18c9e7ee464aaae5cd9fccdb943b3fcb4655d4
https://git.kernel.org/stable/c/4bea15d9c7683218f57b8c1f5f0aa75cab76af8d
https://git.kernel.org/stable/c/b96db32fed8dfb2478d7c208f89bf383beed1535
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-09-11 20:00 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-11 19:45 CVE-2026-89641: cifs: clear tcon after cifsFileInfo_put() in cifs_file_set_size() Greg Kroah-Hartman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox