Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1422637AbbEVMmV (ORCPT ); Fri, 22 May 2015 08:42:21 -0400 Received: from e28smtp08.in.ibm.com ([122.248.162.8]:48990 "EHLO e28smtp08.in.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756441AbbEVMmT (ORCPT ); Fri, 22 May 2015 08:42:19 -0400 Message-ID: <1432298525.2450.66.camel@linux.vnet.ibm.com> Subject: Re: [PATCH 0/8] MODSIGN: Use PKCS#7 for module signatures [ver #4] From: Mimi Zohar To: David Howells Cc: Andy Lutomirski , "Luis R. Rodriguez" , Andy Lutomirski , Rusty Russell , Michal Marek , Matthew Garrett , keyrings@linux-nfs.org, Dmitry Kasatkin , "linux-kernel@vger.kernel.org" , Seth Forshee , LSM List , David Woodhouse Date: Fri, 22 May 2015 08:42:05 -0400 In-Reply-To: <32619.1432281384@warthog.procyon.org.uk> References: <20150520162059.GC10473@localhost> <20150521213829.GH23057@wotan.suse.de> <20150521230105.GL23057@wotan.suse.de> <32619.1432281384@warthog.procyon.org.uk> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.12.10 (3.12.10-1.fc21) Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 15052212-0029-0000-0000-00000610D372 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1664 Lines: 34 On Fri, 2015-05-22 at 08:56 +0100, David Howells wrote: > Andy Lutomirski wrote: > > > Without tagging the purpose of the signed file, you simply don't have > > a cryptographic guarantee of that. The bad guy can load something > > else that was signed for an entirely different purpose into the wrong > > device, possibly crashing it, causing buffer overflows because the > > format is wrong, or doing any number of other bad things. > > One suggestion David Woodhouse made with regard to tagging is that the tag > could just be added into the digest before it is signed/verified and not > actually stored in the signature. > > This means that if you try loading the firmware for the wrong request, the > signature verification will fail. > > It's an interesting approach that's simple to achieve, but it has the downside > that the signature will be invalid in the mismatch situation and you can't > tell whether it's because the module is being misused or the signature is just > wrong. However, that might be livable with. With transitive trust, any key on the system keyring would be able to add keys with any tag, whether the tag is in the cert or the digest. If I trust cert A to sign keys that add kernel modules or other certs that add kernel modules, it doesn't mean that I trust that cert to also sign keys that add firmware, for example, or other keys that add firmware. Mimi -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/