Mashing Enter to bypass full disk encryption with TPM, Clevis dracut and systemd
Meh, it&#x27;s an interesting exploit for sure (the USB key simulating Enter key being pressed every 15ms is cute).<p>But IMO unless you run a <i>very</i> hardened setup, protecting against evil maid attacks (wherein the attacker has physical access to your machine in its entirety) is really hard, and possibly always will be. In a hardened setup you lock down the emergency initrd shell - either it&#x27;s not allowed at all, or it uses a password which <i>hopefully</i> is a little more secure against an attacker pressing the Enter key a lot ;)<p>The real eye opener for me is what Ventoy can do. You can plug it into a computer with Secure Boot enabled, and it will give you a nice user-friendly way to just ... completely and trivially bypass Secure Boot protection. Yes, really: <a href="https:&#x2F;&#x2F;www.ventoy.net&#x2F;en&#x2F;doc_secure.html" rel="nofollow noreferrer">https:&#x2F;&#x2F;www.ventoy.net&#x2F;en&#x2F;doc_secure.html</a><p>It won&#x27;t work for every mobo&#x2F;firmware combo. It worked first try for me on some used Lenovo ThinkCentre M710q I bought on eBay, though. Even with the latest June 2023 BIOS installed.<p>Ventoy does this by using a known exploit in a GRUB shim that is signed with the official Microsoft certs (that ones that are embedded in virtually every mobo sold with Secure Boot support), in order to pop the KeyEnroll UEFI application and then enroll its own keys in there. Or something like that.<p>Sure, M$ put out a windows update ages ago that updates the DBX to prevent <i>this</i> particular signed shim with known vulnerabilities: <a href="https:&#x2F;&#x2F;support.microsoft.com&#x2F;en-us&#x2F;topic&#x2F;kb5012170-security-update-for-secure-boot-dbx-72ff5eed-25b4-47c7-be28-c42bd211bb15" rel="nofollow noreferrer">https:&#x2F;&#x2F;support.microsoft.com&#x2F;en-us&#x2F;topic&#x2F;kb5012170-security...</a> ... but who knows how many more are out there in the wild?<p>Once you&#x27;ve pwned Secure Boot (and I&#x27;m making the case here that any script kiddy can do this on a vast majority of commonly available&#x2F;used mobos, let alone a professional cybercrime gang&#x2F;local LE division or, god-forbid, 3 letter agency), then you can simply pop in your favourite (Arch, obviously) Linux live USB and `cryptsetup open` your favourite encrypted drive in seconds.<p>For unattended machines, especially if you&#x27;ve already bothered to stick a Clevis in there, you really ought to blend your TPM ping with a SSS (min 2) one-two combo-punch of a Tang pin.<p>But again, if the attacker is literally sitting at your desk typing in your computer connected to your trusted networks and such, you&#x27;re always gonna be pretty screwed.