Linux users who have Secure Boot enabled on their systems knowingly or unknowingly rely on a key from Microsoft that is set to expire in September. After that point, Microsoft will no longer use that key to sign the shim first-stage UEFI bootloader that is used by Linux distributions to boot the kernel with Secure Boot. But the replacement key, which has been available since 2023, may not be installed on many systems; worse yet, it may require the hardware vendor to issue an update for the system firmware, which may or may not happen. It seems that the vast majority of systems will not be lost in the shuffle, but it may require extra work from distributors and users.
I know Ill get flak for this, but you shouldn’t be using end-of-life hardware, including motherboards. Once the vendor stops providing firmware updates, its time to look at replacing that hardware. It doesn’t matter what operating system you use, if there are hardware vulnerabilities, then your OS isn’t able to properly protect you.
If your hardware is still supported, you should regularly be updating the firmware.
This implies a world in which motherboard vendors actually regularly publish updates for their boards, or publish information about a board being officially end-of-life, which, for many consumer boards, just isn’t the case.
Some vendors still have a red flag on their support page discouraging uefi updates unless you’re actively experiencing problems.
Some vendors still have a red flag on their support page discouraging uefi updates unless you’re actively experiencing problems.
I dont know which vendor you are referring to, but that is a horrible practice. There should be active support and release notes stating that “This release is a security fix” at a bare minimum. If your motherboard manufacturer does not offer that, then I could never recommend them to someone. They need to be held to a higher standard.
At least from my experience, ASUS, Dell, and Apple will publish that information.
I’m pretty sure that warning used to be on the UEFI download page for Biostar boards, but they’ve completely redesigned it, so if it was them, it isn’t there anymore.
I’ve seen some Asus and MSI Boards getting only uefi updates marked as beta, with the next update, months later, also being marked as beta. With Asus, there have been allegation that they try to get out of warranty claims this way.
I’ve had less problems with Dell and Lenovo, which probably comes from them being more enterprise focused. I think the problem is that the for the average consumer, uefi updates are last on their mind when picking a board.
Apple, and, to a lesser degree, Lenovo and Dell, seem hardly comparable, since their focus isn’t selling mainboards as a stand-alone component.
Sounds like a good reason to demand coreboot or libreboot support for all computers you buy
As much as I would like to agree with that, each piece of hardware is going to have its own niche set of problems that the coreboot/libreboot team is not going to research and maintain. It wont be because they dont want to. They just dont have the resources and source code from the vendors. You will get your standardized updates, but it will not cover a lot of the proprietary blobs necessary for the hardware to operate.
Once the vendor stops supporting it, thats it. Its a ticking time bomb. Its how we get articles like the one in the OP. The vendor and user are not going to put in work to keep this updated. Even if they had coreboot/libreboot, it wont get updated.
Its a shitty thing that isn’t easy to solve except by tying in hardware and software into single, unified products that are written in perfect code. Its not possible.
Well, no.
There are only a handful of hardware manufacturers for each component on a motherboard that might require firmware and once a motherboard is supported by coreboot, it can be maintained at a component level across all vendors who use that component (thus being cheaper than rolling their own proprietary firmware and cheaper to maintain over the lifetime of support) and we only need 1 single person in the whole world to keep it maintained.
Generally, motherboard manufacturers source their components from other companies. They do not manufacture the entire board themselves. This includes CPUs, Wifi cards, USB controllers, bluetooth, audio, display controllers, etc. Each and every one of them create new products, maintain their own firmware for all those new products, and push updates to the motherboard manufacturers when there are updates.
Coreboot/libreboot do not update those components themselves. They also must be provided that source code.
Just for coreboot alone, the last release had more than 120 contributors push over 900 commits. One person is not able to maintain that piece of software, as it is an enormous task.
If the problem was getting it to work in the first place, then you would be right.
But once code is there and working, maintenance is an easier problem especially since git is involved.
Binary blobs on the other hand are just endless pain and only get worse with time.
In the words of Bryan Cantrill, we are at war with proprietary firmware and unfortunately at this moment in the war we are losing.
Even if the code is there, you will need someone to maintain that code. Easier or not, even in a git repository, those individual components will eventually not have the support necessary to patch it.
If an eight year old usb controller has flaws, and the manufacturer is not maintaining that git repository anymore because they cannot possibly afford to hire someone to look at that code after so long, then it is going to keep those flaws. It wont matter if that code is proprietary or open source and included in coreboot. Its just simply not feasible to support hardware properly once most of the world has moved on to other products.
Are there any hardware manufacturers that aren’t completely shit at providing firmware updates? My motherboard does still get updates but they can take a while to arrive even when there’s a known exploit for my CPU which requires a firmware update to fix (made even worse by the fact that AMD are awful at providing fixes in the first place)
AMD are generally quick with providing microcode updates. Once they have them, they provide them to your motherboard manufacturer to include in a firmware update. This is the part that usually takes a while, if done at all.
What would you recommend as a schedule for “regularly”?
IMO, keep an rss feed of your vendors firmware updates being released on their website or periodically check it yourself. As soon as its released, go ahead and install it. If you want to be cautious, maybe give it a week or two to make sure they dont pull the update due to issues with that particular release.
Even better, if the manufacturer offers a utility to keep updates installed, just run that periodically.
I haven’t discovered any manufacturer’s RSS feed. Is that a common thing?
No idea. You can use something like jackett to generate an RSS feed for you if they dont have one.
Maybe they have a newsletter for updates, or a registration card, social media account, or maybe a security team that announces security updates.
All im suggesting is look into how your manufacturer announces these updates and actively listen to that communication.
Gotcha. 👍