From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kees Cook Subject: Re: [kernel-hardening] Re: [PATCH v9 1/4] syscalls: Verify address limit before returning to user-mode Date: Tue, 9 May 2017 09:50:32 -0700 Message-ID: References: <20170428153213.137279-1-thgarnie@google.com> <20170508073352.caqe3fqf7nuxypgi@gmail.com> <20170508124621.GA20705@kroah.com> <20170509064522.anusoikaalvlux3w@gmail.com> <20170509085659.GA32555@infradead.org> <20170509130250.GA11381@infradead.org> <20170509160322.GA15902@infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Return-path: In-Reply-To: <20170509160322.GA15902@infradead.org> Sender: linux-kernel-owner@vger.kernel.org To: Christoph Hellwig Cc: Andy Lutomirski , Mark Rutland , Kernel Hardening , Greg KH , Heiko Carstens , LKML , David Howells , Dave Hansen , "H . Peter Anvin" , Ingo Molnar , Pavel Tikhomirov , Peter Zijlstra , linux-s390 , the arch/x86 maintainers , Russell King , Will Deacon , Christian Borntraeger , =?UTF-8?Q?Ren=C3=A9_Nyffenegger?= , Catalin Marinas List-Id: linux-api@vger.kernel.org On Tue, May 9, 2017 at 9:03 AM, Christoph Hellwig wrote: > On Tue, May 09, 2017 at 06:02:50AM -0700, Christoph Hellwig wrote: >> On Tue, May 09, 2017 at 06:00:01AM -0700, Andy Lutomirski wrote: >> > fs/splice.c has some, ahem, interesting uses that have been the source >> > of nasty exploits in the past. Converting them to use iov_iter >> > properly would be really, really nice. Christoph, I don't suppose >> > you'd like to do that? >> >> I can take care of all the fs code including this one. > > I spent the afternoon hacking up where I'd like this to head. It's > completely untested as of now: > > http://git.infradead.org/users/hch/vfs.git/shortlog/refs/heads/setfs-elimination Ooooh yes! Nice work. I love this: http://git.infradead.org/users/hch/vfs.git/commitdiff/51e83f50f824ca23f5584c172138e6b7c2ff786d but I wonder what it'll cause out-of-tree code to do. I mean, I'd rather nothing out-of-tree be calling these, but I'd hate 3rd party hacks even more. http://git.infradead.org/users/hch/vfs.git/commitdiff/018e0e9030777121fe87e89d43066691e7366587 This accidentally(?) removes the kernel-doc comments. http://git.infradead.org/users/hch/vfs.git/commitdiff/78b62c730254fc39fa888cdbdca08fde6e09a798 Could this be made defensive? (Return 0 if ret wraps, for example?) I see what the comment says, but not everyone will read that. :( http://git.infradead.org/users/hch/vfs.git/commitdiff/a106276ca0294be054bc89ce97219933fe543df1 Perhaps unconditionally set USER_DS on exit instead of retaining whatever was there? -Kees -- Kees Cook Pixel Security