[PATCH 5.15.y] smb: client: fix potential UAF in smb2_is_valid_oplock_break()
Robert Garcia <[email protected]> Fri, 17 Apr 2026 14:34:26 +0800
| Newsgroups | gmane.linux.kernel.stable,gmane.linux.kernel.cifs,gmane.network.samba.internals,gmane.linux.kernel |
|---|---|
| Message-ID | <[email protected]> |
From: Paulo Alcantara <[email protected]> [ Upstream commit 22863485a4626ec6ecf297f4cc0aef709bc862e4 ] Skip sessions that are being teared down (status == SES_EXITING) to avoid UAF. Cc: [email protected] Signed-off-by: Paulo Alcantara (Red Hat) <[email protected]> Signed-off-by: Steve French <[email protected]> [ Appropriate path used. ] Signed-off-by: Robert Garcia <[email protected]> --- fs/cifs/smb2misc.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fs/cifs/smb2misc.c b/fs/cifs/smb2misc.c index b84e682b4cae..da32b3f6686b 100644 --- a/fs/cifs/smb2misc.c +++ b/fs/cifs/smb2misc.c @@ -679,6 +679,8 @@ smb2_is_valid_oplock_break(char *buffer, struct TCP_Server_Info *server) /* look up tcon based on tid & uid */ spin_lock(&cifs_tcp_ses_lock); list_for_each_entry(ses, &server->smb_ses_list, smb_ses_list) { + if (cifs_ses_exiting(ses)) + continue; list_for_each_entry(tcon, &ses->tcon_list, tcon_list) { spin_lock(&tcon->open_file_lock); -- 2.34.1