Thread (146 messages) 146 messages, 15 authors, 2017-12-07

Firmware signing -- Re: [PATCH 00/27] security, efi: Add kernel lockdown

From: Mimi Zohar <hidden>
Date: 2017-11-13 11:50:10
Also in: linux-efi, lkml

On Sat, 2017-11-11 at 02:32 +0000, Alan Cox wrote:
quoted
My assumption here is:
1) there are some less important and so security-insensitive firmwares,
   by which I mean that such firmwares won't be expected to be signed in
   terms of vulnerability or integrity.
   (I can't give you examples though.)
2) firmware's signature will be presented separately from the firmware
   blob itself. Say, "firmware.bin.p7s" for "firmware.bin"
For x86 at least any firmware on any system modern enough to support
'secure' boot should already be signed. The only major exception is
likely to be for things like random USB widgets.
Does this mean that the firmware signature is contained within the
firmware? ?On Linux, is anything verifying this signature? ?Or is this
the hw verifying the firmware's signature?
Even things like input controller firmware loaded over i2c or spi
is usually signed because you could do fun things with input faking
otherwise.

The other usual exception is FPGAs, but since the point of an FPGA is
usually the fact it *can* be reprogrammed it's not clear that signing
FPGA firmware makes sense unless it is designed to be fixed function.

You can't subvert the bus protocols on the x86 FPGA I am aware of as
those bits are signed (or hard IP), but without IOMMU I am not sure FPGA
and 'secure' boot is completely compatible.
Ok, but why differentiate between "fixed" and research/development
FPGA functions? ?In both cases, the FPGA firmware would need to be
signed locally. ?Wouldn't this be similar to kernel developers
building their own kernels and signing the kernel modules?

Mimi

--
To unsubscribe from this list: send the line "unsubscribe linux-security-module" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help