CVE-2026-53383 in Linux
Zusammenfassung
von VulDB • 19.07.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
ksmbd: Ablehnung einer ungültigen Sitzung in einem COMPOUND-Anfrage-Zweig
smb2_check_user_session() nimmt einen Umweg für jede Operation, die nicht die erste in einer COMPOUND-Anfrage ist: Es wird work->sess (die durch die erste Operation gebundene Sitzung) wiederverwendet und nur die SessionId überprüft, dann wird „gültig“ zurückgegeben. Es findet keine erneute Überprüfung von work->sess->state == SMB2_SESSION_VALID statt, und eine SessionId von 0xFFFFFFFFFFFFFFFF (ULLONG_MAX, der MS-SMB2-bezogene Wert für related-operation) überspringt sogar den ID-Vergleich. Der eigenständige Pfad (ksmbd_session_lookup_all() plus der SESSION_SETUP-Zustandsautomat) erzwingt jedoch den VALID-Status; der COMPOUND-Zweig umgeht dies vollständig.
Eine SESSION_SETUP, die nur einen NTLM Type-1-Blob (NtLmNegotiate) enthält, veröffentlicht eine frische SMB2_SESSION_IN_PROGRESS-Sitzung, deren sess->user noch NULL ist (->user wird später von ntlm_authenticate() zugewiesen). Wird dies als Operation 1 einer COMPOUND-Anfrage mit Operation 2 = TREE_CONNECT (related, SessionId=ULLONG_MAX, \\host\IPC$) verwendet, führt der Tree-Connect dann auf dieser IN_PROGRESS-Sitzung aus und erreicht ksmbd_ipc_tree_connect_request(), das user_name(sess->user) dereferenziert, wobei sess->user == NULL ist (transport_ipc.c:687/701/704) -> Remote-Dereferenzierung eines Nullzeigers und ein Kernel-Oops, der den ksmbd-Worker für alle Clients blockiert.
Ablehnung jeder COMPOUND-Operation, die nicht an erster Stelle steht und auf eine Sitzung trifft, die nicht SMB2_SESSION_VALID ist, um die Gültigkeit zu spiegeln, die vom eigenständigen Lookup-Pfad erzwungen wird. SESSION_SETUP selbst läuft legitim auf einer IN_PROGRESS-Sitzung, aber sie wird niemals als COMPOUND-Operation nach der ersten Position ausgeführt, sodass die Multi-Leg-Authentifizierung durch diese Überprüfung nicht beeinträchtigt wird.
If you want to get best quality of vulnerability data, you may have to visit VulDB.