Linux Kernel
CVE-2024-35999
HIGH
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Race condition requires precise timing, so AC:H; no authentication needed on attacker-controlled server side; impact is availability only.
Primary rating from Vendor (416baaa9-dc9f-4396-8d5f-8c081fb06d67).
CVSS VectorVendor: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Lifecycle Timeline
6DescriptionCVE.org
In the Linux kernel, the following vulnerability has been resolved:
smb3: missing lock when picking channel
Coverity spotted a place where we should have been holding the channel lock when accessing the ses channel index.
Addresses-Coverity: 1582039 ("Data race condition (MISSING_LOCK)")
AnalysisAI
Missing spinlock acquisition in the Linux kernel's SMB3 multichannel driver exposes a data race condition when selecting network channels, potentially causing kernel panic or denial of service on affected systems using SMB3 multichannel connections. Affected versions span stable branches through Linux 6.9-rc5, with patches applied to multiple stable trees. No public exploit and no active exploitation confirmed; EPSS of 0.16% (6th percentile) reflects very low real-world exploitation probability, consistent with a race-condition-class flaw requiring precise timing.
Technical ContextAI
The SMB3 (Server Message Block 3) client driver in the Linux kernel supports multichannel connections (SMB3 multichannel / RDMA-capable channels) via a session channel list referenced by the ses structure. The driver must hold the channel lock before reading or modifying the channel index used to select which TCP connection to route I/O over. CWE-667 (Improper Locking) describes the root cause: concurrent kernel threads accessing shared channel state without synchronization, creating a classic TOCTOU data race. Coverity static analysis tool (report 1582039) identified this as a MISSING_LOCK defect. The CPE strings confirm the scope is the upstream Linux kernel itself (cpe:2.3:o:linux:linux_kernel:*) through the 6.9-rc1 through 6.9-rc5 release candidate series, as well as earlier stable branches addressed by the four stable-tree patches.
RemediationAI
Apply the upstream kernel patches available at the four stable-tree commits linked in the references section; distribution maintainers (Red Hat, Ubuntu, SUSE, Debian) will typically backport these to their respective kernels in point releases. Upgrade to a patched kernel version once your distribution releases it, or apply the commits directly if building from source. As a compensating control where patching is not immediately feasible, disabling SMB3 multichannel on the client (by setting 'max_channels=1' in the smb3 mount options or via /etc/samba/smb.conf 'client max channels = 1' for samba-based clients) eliminates the code path that triggers the race, at the cost of losing multichannel throughput benefits. If SMB3 shares are not required, unloading the cifs/smb3 kernel module (modprobe -r cifs) removes the attack surface entirely. No patch version number is independently confirmed beyond the upstream commit hashes.
Same weakness CWE-667 – Improper Locking
View allSame technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today