Microsoft reports several bootloader vulnerabilities
microsoft.com
microsoft.com
When does Microsoft open their source for searching vulnerabilities?
The creator of SystemD recommends systemd-boot? Seems legit and unbiased.
...and what systemd-boot is? A UEFI only boot menu which gets its data from UEFI only.
I mean comparing two different things and claiming the more featured one too big is mental gymnastics to put it politely.
GRUB having vulnerabilities is not surprising, esp. when the thing is written at an age where computers were completely different things, programming and requirements wise, but insinuating that systemd-boot is the ultimate replacement is, eh, a bit underhanded. Esp. when it comes from Lennart, whose systemd is too big and encompassing for an init system.
It's the pot calling the kettle black, heh.
And btw, not that long ago it was released by researchers than more than 200 platforms from diverse but main laptops and servers manufacturers were still using leaked keys for signing their boot loaders...
I understand some computers may not support this as well, so YMMV.
Is Apple a joke because they sign the root of trust for their devices? Someone has to be the root authority. Honestly I trust MS more than I do Google or VerisignDigicert. They are the least likely to intentionally break things.
The reason MS controls the root and not Red Hat etc. is because the Linux camp spent years arguing back and forth about exactly how much they hate secure boot - like an HOA arguing over paint colors - instead of presenting solutions.
> So anyone with they certificate key can do whatever they want.
this is literally how PKI works
Somehow I think MS put a little more thought into their PKI design than whatever you're trying to convey here. What were the other options? Store it on a Yubikey sewn into rms's beard?
People are quick to dismiss secure boot simply because they refuse to understand it.
No-one has to be, and it certainly doesn't need to be anyone but the owner of the machine.
Technically the web should work with self-signed certificates. But that is likewise impractical.
Just to be clear, I'm not saying you shouldn't be able to boot something you trust on a device you own, just that it's completely reasonable to have Microsoft's certificate preloaded.
People may use pendrives, but even if they literally google "Linux install" and click on the first result they are getting the media from the correct website. One could even claim it is in practice even a better situation than getting it from a random, even if reputable magazine as it was common 20 years ago.
The certificate is not meaningless; it still identifies the same publisher. E.g. if you already trusted Suse once, you do not get the same prompt again.
If you really cannot reliably identify the contents of your install media for the very first installation, what do you want to do here? And why is Windows having the advantage even improving the situation at all? With no dbx, you have a myriad of exploitable Windows versions ready to be used in your 'compromised' Windows install media. And due to the draconianess of the secure boot lockdown, most Linux users will either disable secure boot entirely, add the MS UEFI CA (with the extra bazillion of now non-MS backdoors that entails), or roll their own PK/MOK. In all 3 cases, your compromised install media 'wins' and secure boot has been useless. These are not dumb users precisely...
As usual with secure boot, the threat vectors it 'defends' against are very farfetched, made redundant with a plenitude of easier attack vectors that secure boot will not protect against, and anyway whatever protection SB may give is defeated entirely by comically easy methods (e.g. using a legit windows install media to simply boot the pc with your fake fullscreen windows install/logon dialog while you clone the bitlocker encrypted disk. Bonus points if you use that same computers' recovery partition instead of external install media, which was still an unpatched hole just a couple years ago) precisely because SB basically defaults to "trust anything from MS" instead of trusting only what the user wants it to trust. It also happens that MS not only benefits significantly from this current implementation but also has repeateadly used it to push other OSes away.
The default trust list can certainly be expanded beyond just Microsoft, but as the vast majority of PC users are running Windows, obviously Microsoft should be in there. In the real world, install media gets shared around and reused as much as it gets freshly downloaded for every install. And even a fresh download on a pwned PC can be modified in situ or when imaged so it can't necessarily be trusted anyway. Even if default-trusting Microsoft has allowed exploits like you describe, that is not a regression compared to not using Secure Boot, and most (all?) of those machines had Windows installed already so would've been trusting Microsoft anyway.
There's an avenue of argument here about whether Secure Boot as currently architected is really offering enough benefit to even justify its existence, but that seems tangential at best to the question of whose certificates to trust. The ideological and anticompetitive issues about Microsoft are not relevant to the point I'm making.
But in the case of secure boot, this is worse, because Microsoft is just a "software" editor. But its root certificate and probably a few random others are distributed in countless of devices produced by manufacturers unrelated to them, but also, a few number of software distributors will also have subkeys to be able to sign their os/software. All of that, with zero transparency.
And in the end, if I buy a Lenovo laptop, to have Linux OS running on it, there is no reason and no trust to have my OS be signed by Microsoft, that has the key to run whatever they want on my laptop. Think about it and you will see that it makes no sense at all, if you don't trust Microsoft for your OS, to have to trust them for ensuring a secure boot...
Then manually sign your bootloader.
This feature is available at least in my Gigabyte mainboard, but is not particularly easy to use, which is why bootloaders come pre-signed with a known root of trust. There's nothing stopping the installer from generating the root of trust on the fly, except for the default settings in many machines.
Can also preload measurements for hardware while at it so that nobody swaps a PCIe device for an evil twin.
Not like there's any question.
Overwhelmingly more so than for "security" purposes.
Any lesser understanding of Microsoft SecureBoot, well, I understand.
I've seen that kind of that kind of refusal before.
Gee, how clever and thoughtful.
Odd. I wonder if the article was written by AI.
With the resources they have, and these unique findings AI has helped them discover, they should now be in the ideal position to rapidly correct this deficiency in their own bootloader, so that nobody will ever need to use Grub again.
With this level of expertise, now enhanced by AI, and so much effort already behind them so far, it shouldn't take much to push this over the finish line, provided they have an effective enough organization when it comes to enhancing the security of PC users overall. After all, they don't even have to worry about addressing Macs.
I know the engineers are brilliant enough by far, and with nothing holding them back, we should be able to expect a minor revision of of the NT bootloader like this to be arriving any day now.
According to what I see in the article, this would be one of the most timely & useful security patches to show up on Windows Update, I hope they don't drop the ball on this one.
Patch Tuesday is next week but they seem so close they could probably push this critical correction out before that, so watch for it :)
That's why we got secure boot and why windows absolutely clobbers any other bootloaders during install, updates, and random points in between. It's why we have WSL.
I'll bet good money that Microsoft never even considers what you propose. It's antithetical to the mission of "lock all possible users into ad revinue streams". Microsoft won't get their windows ad impressions if they allow you to use a different OS on the hardware you own.
Are you wanting bootmgr.efi to learn how to read arbitrary Linux filesystems, bootloader configurations, and EFISTUB? Why?
Windows supports setting a one time boot using a UEFI BootNext NVRAM variable, directly boots shim.efi, doesn't involve bootmgr.efi
Good example of a nonideal approach, but I would settle for that since at least it's better than how UEFI has developed so far.
I think the "default" sequence for new (naturally Windows-preinstalled) PC's is simply UEFI > NT6 bootloader > Windows.
On mainstream PC's like this, for users to include Linux if they want to (without disturbing Windows) it should be a straightforward option to install Linux to its own partition, and end up with UEFI > NT6 bootloader > Windows or Linux. Your choice by paying attention to the built-in NT6 bootmenu upon power up, whenever you don't want to boot automatically to the default OS.
With exactly the same workflow as you used to be able to with BIOS. I know there are subsurface differences, but always hold out hope that maybe someone will be advanced enough to handle this much abstraction ;)
This deficiency was not a factor before UEFI struck, since the NT6 bootloader would start Linux under BIOS with no problem. Still will, and Grub will still start Windows, working smoother than ever even in UEFI. NT5 bootloader was even good enough, and you can probably go back to NT3.
>Windows supports setting a one time boot using a UEFI BootNext NVRAM variable, directly boots shim.efi, doesn't involve bootmgr.efi
Even better than that, both Windows and Linux are complete enough as an OS, that if either of their bootloaders are properly installed & configured, then no NVRAM variables need to be depended on whatsoever. Those variables are functionally just a shortcut or fallback which can compensate for lingering defects.
Plus I never thought Grub was required, I always prefer Syslinux.
No matter what, there's not supposed to be any need for a shim.
I don't see any advantage to involving Microsoft in the boot process.
>paying attention to the built-in NT6 bootmenu
UEFI firmware vendors provide a boot manager (the UI) for choosing what installed OS to boot. Apple has offered a graphical boot manager (option key at the boot chime) since forever.
NT6 isn't free or open source software so I don't see the various Linux projects wanting NT6 involved at all, in either the single or dual boot use case.
But in effect you're proposing different boot paths, and different UI/UX depending on whether the system is Linux-only or dual boot Windows Linux.
>This deficiency was not a factor before UEFI struck
I can't tell what deficiency you think UEFI has that BIOS didn't have. But maybe you don't like specs? Or are you referring to the much latter added UEFI Secure Boot?
>No matter what, there's not supposed to be any need for a shim.
You seem to think Microsoft wants to be in the business of executing arbitrary and unsigned code, despite all efforts proving the opposite.
Good point. Me neither, never have,
But if they're already there within the PC in some way or another, ideally they should gracefully be able to accomodate Linux under UEFI as easily as it still works when using BIOS.
>in effect you're proposing different boot paths, and different UI/UX depending on whether the system is Linux-only or dual boot Windows Linux.
Not proposing. Been living it for decades. It's only broken under UEFI.
Even on my average pure Windows machine, I normally have about 4 distinct boot paths for each OS using various instances of the NT6 bootloader. Not counting the option of whipping up an emergency boot floppy which can still be made for modern Windows use if all else failed.
Experience has shown, the more viable boot paths, and the fewer obstacles, the greater reliability.
>You seem to think Microsoft wants to be in the business of executing arbitrary and unsigned code
Nope, that's just how they started out and ended up outgrowing IBM. I remember it well, those days are long over.
Likewise, there should never have been any need for Linux to involve any Microsoft code or signing, like SecureBoot, in order to perform on the most secure new PC's without requiring any different default UEFI settings than Windows.
I mean, I replaced Grub with systemd-boot awhile back...
Makes me trust open source operating systems more!
AI is in he title, but the content is not entirely revolving around it.
but if they sent the AI through all that ancient code and that's all they found it's not a good advertisement