Linux CIFS filesystem development
 help / color / mirror / Atom feed
* [PATCH] ksmbd: zero the object ID before filling FS_OBJECT_ID_INFORMATION
@ 2026-08-21 13:58 Aleksandr Khromov
  2026-08-21 14:34 ` ChenXiaoSong
  2026-08-24 10:22 ` [PATCH v2 0/3] ksmbd: fix information leaks in smb2_get_info_filesystem() Aleksandr Khromov
  0 siblings, 2 replies; 11+ messages in thread
From: Aleksandr Khromov @ 2026-08-21 13:58 UTC (permalink / raw)
  To: linkinjeon, sfrench
  Cc: senozhatsky, tom, linux-cifs, linux-kernel, lvc-project, haa, rrv

FS_OBJECT_ID_INFORMATION reports 64 bytes to the client, so all 16 bytes
of object_id_info::objid are sent.  When the volume UUID is not available
only sizeof(stfs.f_fsid) (8 bytes) is copied, and the remaining 8 bytes
are whatever the response buffer holds.

The response buffer is zeroed on allocation (kzalloc()/kvzalloc()), so
for a standalone request the tail is zero.  In a compound request it need
not be: the offset of the next response is advanced by the length pinned
for the previous one, so if a preceding command wrote its reply into the
buffer and then failed, smb2_set_err_rsp() pins only the short error
response and the next reply lands inside the area already written.  Only
the header is cleared there:

	memset((char *)rsp_hdr, 0, sizeof(struct smb2_hdr) + 2);

Clear the field before filling it in.

Fixes: 3a64125730ca ("ksmbd: use volume UUID in FS_OBJECT_ID_INFORMATION")
Cc: stable@vger.kernel.org
Signed-off-by: Aleksandr Khromov <haa@amicon.ru>
---
 fs/smb/server/smb2pdu.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/fs/smb/server/smb2pdu.c b/fs/smb/server/smb2pdu.c
index 76f63f9adc72..6f5f4a399bde 100644
--- a/fs/smb/server/smb2pdu.c
+++ b/fs/smb/server/smb2pdu.c
@@ -6093,6 +6093,7 @@ static int smb2_get_info_filesystem(struct ksmbd_work *work,
 
 		info = (struct object_id_info *)(rsp->Buffer);
 
+		memset(info->objid, 0, sizeof(info->objid));
 		if (path.mnt->mnt_sb->s_uuid_len == 16)
 			memcpy(info->objid, path.mnt->mnt_sb->s_uuid.b,
 					path.mnt->mnt_sb->s_uuid_len);
-- 
2.48.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2026-08-25  3:05 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-21 13:58 [PATCH] ksmbd: zero the object ID before filling FS_OBJECT_ID_INFORMATION Aleksandr Khromov
2026-08-21 14:34 ` ChenXiaoSong
2026-08-24 10:22 ` [PATCH v2 0/3] ksmbd: fix information leaks in smb2_get_info_filesystem() Aleksandr Khromov
2026-08-24 10:22   ` [PATCH v2 1/3] ksmbd: zero the FS_OBJECT_ID_INFORMATION buffer before filling it in Aleksandr Khromov
2026-08-24 12:25     ` Namjae Jeon
2026-08-24 10:22   ` [PATCH v2 2/3] ksmbd: initialize FileSystemControlFlags in FS_CONTROL_INFORMATION Aleksandr Khromov
2026-08-24 12:25     ` Namjae Jeon
2026-08-24 10:22   ` [PATCH v2 3/3] ksmbd: fill in FileSysIdentifier in FS_POSIX_INFORMATION Aleksandr Khromov
2026-08-24 12:10     ` Namjae Jeon
2026-08-24 14:40     ` [PATCH v3] " Aleksandr Khromov
2026-08-25  3:05       ` Namjae Jeon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox