From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751672AbdF1RDT (ORCPT ); Wed, 28 Jun 2017 13:03:19 -0400 Received: from mail-io0-f178.google.com ([209.85.223.178]:33309 "EHLO mail-io0-f178.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751574AbdF1RDL (ORCPT ); Wed, 28 Jun 2017 13:03:11 -0400 MIME-Version: 1.0 In-Reply-To: <20170620040403.GA610@zzz.localdomain> References: <1497915397-93805-1-git-send-email-keescook@chromium.org> <1497915397-93805-22-git-send-email-keescook@chromium.org> <20170620040403.GA610@zzz.localdomain> From: Kees Cook Date: Wed, 28 Jun 2017 10:03:09 -0700 X-Google-Sender-Auth: PC1jpV_UKsS3pc3HFidqfLbJPUM Message-ID: Subject: Re: [kernel-hardening] [PATCH 21/23] usercopy: Restrict non-usercopy caches to size 0 To: Eric Biggers Cc: "kernel-hardening@lists.openwall.com" , David Windsor , Linux-MM , LKML Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Jun 19, 2017 at 9:04 PM, Eric Biggers wrote: > Hi David + Kees, > > On Mon, Jun 19, 2017 at 04:36:35PM -0700, Kees Cook wrote: >> With all known usercopied cache whitelists now defined in the kernel, switch >> the default usercopy region of kmem_cache_create() to size 0. Any new caches >> with usercopy regions will now need to use kmem_cache_create_usercopy() >> instead of kmem_cache_create(). >> > > While I'd certainly like to see the caches be whitelisted, it needs to be made > very clear that it's being done (the cover letter for this series falsely claims > that kmem_cache_create() is unchanged) and what the consequences are. Is there Well, in the first patch it is semantically unchanged: calls to kmem_cache_create() after the first patch whitelist the entire cache object. Only from this patch on does it change behavior to no longer whitelist the object. > any specific plan for identifying caches that were missed? If it's expected for The plan for finding caches needing whitelisting is mainly code audit and operational testing. Encountering it is quite loud in that it BUGs the kernel during the hardened usercopy checks. > people to just fix them as they are found, then they need to be helped a little > --- at the very least by putting a big comment above report_usercopy() that > explains the possible reasons why the error might have triggered and what to do > about it. That sounds reasonable. It should have a comment even for the existing protections. Thanks! -Kees -- Kees Cook Pixel Security