On Mon, Nov 21, 2016 at 04:42:45PM +0000, Ard Biesheuvel wrote: > On 21 November 2016 at 16:26, Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxx> wrote: > > On Mon, Nov 21, 2016 at 11:18 AM, Ard Biesheuvel > > <ard.biesheuvel@xxxxxxxxxx> wrote: > >> On 16 November 2016 at 18:11, David Howells <dhowells@xxxxxxxxxx> wrote: > >>> From: Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxx> > >>> > >>> If a user tells shim to not use the certs/hashes in the UEFI db variable > >>> for verification purposes, shim will set a UEFI variable called > >>> MokIgnoreDB. Have the uefi import code look for this and ignore the db > >>> variable if it is found. > >>> > >> > >> Similar concern as in the previous patch: it appears to me that you > >> can DoS a machine by setting MokIgnoreDB if, e.g., its modules are > >> signed against a cert that resides in db, and shim/mokmanager are not > >> being used. > > > > If shim/mokmanager aren't used, then you can't actually modify > > MokIgnoreDB. Again, it requires physical access and a reboot into > > mokmanager to actually take effect. > > > > This does the trick as well > > printf "\x07\x00\x00\x00\x01" > > /sys/firmware/efi/efivars/MokIgnoreDB-605dab50-e046-4300-abb6-3dd810dd8b23 So that really means two things. First, kernel should only honor any of the Mok* variables if they're Boot Services-only variables. Second, to avoid the DoS, shim should create them all as Boot Services-only the first time it boots. That'll prevent them from being created post-boot. -- Peter -- To unsubscribe from this list: send the line "unsubscribe linux-efi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html