Received: by 10.213.65.68 with SMTP id h4csp526326imn; Tue, 27 Mar 2018 04:09:53 -0700 (PDT) X-Google-Smtp-Source: AIpwx4/eyeIGVGax8kQr4TkvQv6WcyncCJG5mEFEHdR/uGWTWeCsMNMRjUOw1IyuX3T0kIEZFuuE X-Received: by 10.98.59.139 with SMTP id w11mr9113450pfj.96.1522148993589; Tue, 27 Mar 2018 04:09:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522148993; cv=none; d=google.com; s=arc-20160816; b=sntLD2JhTaA60nYqWo1wzvbfWpkXChNxqYRAwVQmpwlZlwClhsQmAh+SrjZ1bDsDbN FdqbRfaod4sUTbsPcKnZrSQYJ9WjvgEIw789Hl8Us28wvjKOK2RXMtpMYDgJunOcT7qx lEmluRj9oZak8QTs9xTkuGM8ZJiEq/DJ+3RyykyHx2V2LKLUktOl3apjfpcH06fV3M/z 8FfLFJFunW/CSy8lJ9jmXjzUn2o8BD+iN2Lj68KV+RR6U8JzwKBTclSbz2zx147OMYbX s33VwJgzgJECz5Xwztm2dIKY9ynIyjZ4AO4TlCmjlWl0fEqZ4vp9vDcYNgEAr7WJDcd0 SZIw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-transfer-encoding:content-disposition:mime-version :references:message-id:subject:cc:to:from:date :arc-authentication-results; bh=mLkIwfR0vdan850PIdpZBIc7xdMkNjNsGfvkzW7Syrc=; b=L2pUYu3h1pE/3RFmoEi3x76xn/yBqDgclGm8GPrDFmqP9VRhU5VEOVL6YDvR05dMFI NxwomGTgDBlZBLhYfxCzgqfnLxzgExApZoo9kkxruZP0gGNKsmLSHZz+pZBFvMFvN0HV Tc6u5OYxhEQ/2+RveK/mqB6v7PN7RR5BFCC8S79ogS5OpLcyT8QXgY2vkA3wjU/VSNAo ZgGIvmBN/KR9cMjQuekICCaNDSLFzRJuVDAmr0/VdDMoLku4TJqgNGTvrbZyQGfFSuht 0zYIWYHw9dVUCo4y8bqhS/l+ueQI0yvaRZ7uFfNOmOVmgVBXaOoq7RkjMbIgciLpFlCg gAjA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h190si705574pge.13.2018.03.27.04.09.37; Tue, 27 Mar 2018 04:09:53 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751192AbeC0LI3 (ORCPT + 99 others); Tue, 27 Mar 2018 07:08:29 -0400 Received: from smtp.nue.novell.com ([195.135.221.5]:57675 "EHLO smtp.nue.novell.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751026AbeC0LI1 (ORCPT ); Tue, 27 Mar 2018 07:08:27 -0400 Received: from linux-l9pv.suse (unknown.telstraglobal.net [134.159.103.118]) by smtp.nue.novell.com with ESMTP (TLS encrypted); Tue, 27 Mar 2018 13:08:22 +0200 Date: Tue, 27 Mar 2018 19:08:14 +0800 From: joeyli To: Mimi Zohar Cc: James Bottomley , Jiri Slaby , David Howells , keyrings@vger.kernel.org, matthew.garrett@nebula.com, linux-security-module@vger.kernel.org, linux-efi@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 0/9] KEYS: Blacklisting & UEFI database load Message-ID: <20180327110814.GC5669@linux-l9pv.suse> References: <147931984418.16460.6639993676886095760.stgit@warthog.procyon.org.uk> <6eabbb43-295e-9ba0-c0d9-120f48aa0e1d@suse.cz> <1520428682.10396.445.camel@linux.vnet.ibm.com> <1520436517.5558.2.camel@HansenPartnership.com> <20180311032022.GA31059@linux-l9pv.suse> <1521468723.3503.171.camel@linux.vnet.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1521468723.3503.171.camel@linux.vnet.ibm.com> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Mimi, On Mon, Mar 19, 2018 at 10:12:03AM -0400, Mimi Zohar wrote: > On Sun, 2018-03-11 at 11:20 +0800, joeyli wrote: > > On Wed, Mar 07, 2018 at 07:28:37AM -0800, James Bottomley wrote: > > > On Wed, 2018-03-07 at 08:18 -0500, Mimi Zohar wrote: > > > > On Tue, 2018-03-06 at 15:05 +0100, Jiri Slaby wrote: > > > > > what's the status of this please? Distributors (I checked SUSE, > > > > > RedHat and Ubuntu) have to carry these patches and every of them > > > > > have to forward-port the patches to new kernels. So are you going > > > > > to resend the PR to have this merged? > > > [...] > > > > Just because I trust the platform keys prior to booting the kernel, > > > > doesn't mean that I *want* to trust those keys once booted.  There > > > > are, however, places where we need access to those keys to verify a > > > > signature (eg. kexec kernel image). > > > > > > Which is essentially the reason I always give when these patches come > > > back > > > > > > > Josh Boyer's "MODSIGN: Allow the "db" UEFI variable to be suppressed" > > patch checks MokIgnoreDB variable to ignore db: > > > > https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/commit/?h=keys-uefi&id=7c395b30a33a617c5cc2cdd419300af71277b79a > > > > I think that we can consider to use MokAllowDB. Which means that kernel > > ignores DB by default. > > Not all systems have a shim layer.  This design is really x86 > specific.  Allowing shim keys, but ignoring DB, does not address those > systems. > Actually shim is EFI specific but not x86 specific. I agree with you that not all system has shim. But at least shim provides a way to interact with user to detect the physical accessing. For the system doesn't have shim, kernel can provide a boot option for user to trust the keys in DB. But it also means that the boot option can be enabled without physical accessing. > > > > Nayna Jain's "certs: define a trusted platform keyring" patch set > > > > introduces a new, separate keyring for these platform keys. > > > > > > Perhaps, to break the deadlock, we should ask Jiří what the reason is > > > the distros want these keys to be trusted.  Apart from the Microsoft > > > key, it will also give you an OEM key in your trusted keyring.  Is it > > > something to do with OEM supplied modules? > > > > > > > As I remember that some manufacturers uses certificate in db to > > sign their kernel module. We need to discuss with them for switching > > to mok. Currently I do not know all use cases for using db. > > > > There have some benefits for using db: > > > > - User does not need to deal with shim-mokmanager to enroll mok. > > Target machine doesn't need to reboot and user doesn't need to > > face to mokmanager UI. > > The reason for trusting enrolled shim keys is because it requires > physical presence.  (I kind of remember hearing that this changed. >  There is some method of accepting enrolled keys that does not require > physical presence.) > Could you please provide more detail for those methods? Thanks! > > - The db is a authenticated variable, it's still secure when secure > > boot is disabled. > > The db is a authenticated variable that it can only be modified > > by manufacturer's key. Kernel can trust it when secure boot > > is disabled. It's useful for we do not need to taint kernel > > for loading a manufacturer's kernel module even secure boot is > > disabled. > > > > - Do not need to worry about the space of NVRAM and the EFI firmware > > implementation for writing a boot time variable. > > > > But I also agree that we should not trust all keys (like Microsoft key) > > in db by default. > > Between requiring a shim layer and relying on physical presence, I'm > not convinced this is the best solution.  Do we really want to support > different methods for different architectures? > It's not the best solution because it relies on other layers. But it's currently the only solution for general EFI firmware. Or you have other solution can be used for all architectures? Thanks a lot! Joey Lee