CVE-2026-98261

Summary

In the Linux kernel, the following vulnerability has been resolved:

cifs: Fix server use-after-free in cifs_chan_skip_or_disable()

When a secondary channel is no longer supported by the server, cifs_chan_skip_or_disable() drops the channel reference with cifs_put_tcp_session() and then continues to use the server pointer by calling cifs_signal_cifsd_for_reconnect() on it and reading its primary_server pointer. cifs_put_tcp_session() can drop the last reference of the channel and tear it down, so both the channel and the primary server (whose reference is also dropped by cifs_put_tcp_session()) can be freed before they are signaled for reconnect.

Signal the channel and the primary server and capture the primary server pointer before dropping the channel reference with cifs_put_tcp_session().

Affected Software

VendorProductVersion RangeStatus
LinuxLinux50e8363ecc85da49764781da90ebffe1a657b370 < 0338489960ddad6368bce55e8adbc176c523093daffected
LinuxLinuxf591062bdbf4742b7f1622173017f19e927057b0 < edd52eae5fcfb8433b6bb0e7cd98db438fe01227affected
LinuxLinuxf591062bdbf4742b7f1622173017f19e927057b0 < fcc0a935bb6e37ecbf7e4335061309f896f35780affected
LinuxLinuxf591062bdbf4742b7f1622173017f19e927057b0 < 7a1b27780b113583a94256d58dabfe7c0d9286e7affected
LinuxLinuxf591062bdbf4742b7f1622173017f19e927057b0 < 717e0a25036b6c92cecace30913b2d874a4c22b8affected
LinuxLinuxd61ba1d71ea6039eca7ada870bf3f0c3c8fc12e4affected
LinuxLinux6.6.15 < 6.6.158affected
LinuxLinux6.7.3 < 6.8affected
LinuxLinux6.8affected
LinuxLinux0 < 6.8unaffected
LinuxLinux6.6.158 <= 6.6.*unaffected
LinuxLinux6.12.112 <= 6.12.*unaffected
LinuxLinux6.18.54 <= 6.18.*unaffected
LinuxLinux7.2.8 <= 7.2.*unaffected
LinuxLinux7.3-rc4 <= *unaffected

Weaknesses

References