Re: [kernel-hardening] Re: [PATCH v9 1/4] syscalls: Verify address limit before returning to user-mode
From: Al Viro <hidden>
Date: 2017-05-10 03:22:25
Also in:
linux-arm-kernel, linux-s390, lkml
From: Al Viro <hidden>
Date: 2017-05-10 03:22:25
Also in:
linux-arm-kernel, linux-s390, lkml
On Wed, May 10, 2017 at 04:12:54AM +0100, Al Viro wrote:
Broken commit: "net: don't play with address limits in kernel_recvmsg". It would be OK if it was only about data. Unfortunately, that's not true in one case: svc_udp_recvfrom() wants ->msg_control. Another delicate place: you can't assume that write() always advances file position by its (positive) return value. btrfs stuff is sensitive to that. ashmem probably _is_ OK with demanding ->read_iter(), but I'm not sure about blind asma->file->f_pos += ret. That's begging for races. Actually, scratch that - it *is* racy.
kvec_length(): please, don't. I would rather have the last remaining iov_length() gone... What do you need it for, anyway? You have only two users and both have the count passed to them (as *count and *cnt resp.)