Re: [RFD] linux-firmware key arrangement for firmware signing

Mimi Zohar
2015-05-19T21:48:54Z

On Tue, 2015-05-19 at 22:02 +0200, Luis R. Rodriguez wrote:
> David Howells has posted v4 of his series of supporting PKCS#7 for module
> signing. I'm in my v3 series now on RFCs for firmware PKCS#7 support, and after
> some review and patch shuffling I think this is ready for patch form. My own
> series however depend on quite a bit of other pending changes, one series which
> will go through Rusty's tree, another series of fixes on firmware_class which
> should go through Greg's tree. I'll wait until all this and David's own patches
> get merged before posting firmware PKCS#7 support. Before all this though in
> preparation for fw signing one thing we should start to talk about more broadly
> however is how linux-firmware binary file signing would work in practice and
> what we need, and make sure folks are OK with all this.

Commit 13752fe "security: introduce kernel_fw_from_file hook" introduced
a new security hook. (IMA is on this hook as well.) Have you
considered using this hook?
Are there other places that this hook would need to be called?

> I think we need one change here, we'd need to ensure that such key could only
> be used for vetting firmware files, not modules loaded. The firmware_class
> could for instance still use all the keys in system_trusted_keyring, which
> would include the UEFI key db, but it does not seems reasonable to expect keys
> used for fw signing to also go into system_trusted_keyring to also be used for
> module signing.

I agree totally! For this reason, IMA defined a separate trusted
keyring to be used for verifying file signatures.

Mimi

> Other than this last nitpick, any other concerns or recommendations ?
>
> [0] https://wireless.wiki.kernel.org/en/developers/regulatory/crda
>
> Luis