Am 25. Oktober 2017 20:53:49 MESZ schrieb Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx>: >On Wed, Oct 25, 2017 at 07:17:17AM -0700, Matthew Garrett wrote: >> On Wed, Oct 25, 2017 at 6:44 AM, Jarkko Sakkinen >> <jarkko.sakkinen@xxxxxxxxxxxxxxx> wrote: >> > I'm implementing a fix for CVE-2017-15361 that simply blacklists >> > vulnerable FW versions. I think this is the only responsible action >from >> > my side that I can do. >> >> I'm not sure this is ideal - do Infineon have any Linux tooling for >> performing firmware updates, and if so will that continue working if >> the device is blacklisted? It's also a poor user experience to have >> systems using TPM-backed disk encryption keys suddenly rendered >> unbootable, and making it as easy as possible for people to do an >> upgrade and then re-seal secrets with new keys feels like the correct >> approach. > >I talked today with Alexander Steffen in the KS unconference and we >concluded that this would be a terrible idea. > >Alexander stated the following things about FW updates (Alexander, >please correct me if I state something incorrectly or if you have >something to add): > >* FW update can be constructed either in a way that the keys in the > NVRAM are not cleared or in a way that they are cleared. >* FW update cannot be directly applied to the TPM but must come as > part of the firmware update from the vendor. > >I proposed the following as an alternative: > >* Print a message to the klog (which log level would be appropriate?). Info? Maybe warn, definitely not err >* Possibly sleep for few seconds. Is this a good idea? Helps how? > >While writing this email yet another alternative popped into my mind: >what if we allow only in-kernel use but disallow the use of /dev/tpm0? >You could still use trusted keys. > No, same terrible idea since you block the upgrade path. Upgrade tools work from userspace via the kernel driver. So /dev/tpm0 is necessary. >Here are all the ideas that I have and I am open for better >alternatives. > >/Jarkko -- Sent from my mobile