Skip to content

Commit da7c622

Browse files
minhbq-99Alexander Gordeev
authored andcommitted
s390/cio: Ensure the copied buf is NUL terminated
Currently, we allocate a lbuf-sized kernel buffer and copy lbuf from userspace to that buffer. Later, we use scanf on this buffer but we don't ensure that the string is terminated inside the buffer, this can lead to OOB read when using scanf. Fix this issue by using memdup_user_nul instead. Fixes: a4f17cc ("s390/cio: add CRW inject functionality") Signed-off-by: Bui Quang Minh <[email protected]> Reviewed-by: Heiko Carstens <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Alexander Gordeev <[email protected]>
1 parent b961ec1 commit da7c622

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

drivers/s390/cio/cio_inject.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ static ssize_t crw_inject_write(struct file *file, const char __user *buf,
9595
return -EINVAL;
9696
}
9797

98-
buffer = vmemdup_user(buf, lbuf);
98+
buffer = memdup_user_nul(buf, lbuf);
9999
if (IS_ERR(buffer))
100100
return -ENOMEM;
101101

0 commit comments

Comments
 (0)