Skip to content(if available)orjump to list(if available)

Secure boot certificate rollover is real but probably won't hurt you

NelsonMinar

This article notes that "nobody actually enforces these expiry dates". So this is another way that secure boot is proven to be nowhere as secure as it claims to be. Coupled with LogoFAIL and most hardware shipping with insecure debug keys.. has Secure Boot ever provided meaningful security? It sure causes all sorts of practical problems.

https://arstechnica.com/security/2023/12/just-about-every-wi...

https://arstechnica.com/security/2024/07/secure-boot-is-comp...

WhyNotHugo

SecureBoot uses an existing certificate implementation which supported expiration, for a scenario where a having a reliable clock in unfeasible.

SecureBoot would have been better off with certificates that never expire. That's not a problem in cases where users (or organisations) manage their own hosts, since they can just changed the certificate when the previous one is no longer valid or leaked or whatever.

In practice, SecureBoot rolled out with a single CA for everyone, one controlled by Microsoft. This provides little value for anyone—restricting your computer to "only boot stuff signed by a third party" doesn't really protect from attackers in any way. They'll just boot into one of the many programs signed by MS. But because a single CA is used globally, you want expiration so as to roll them over every few years. But remember: there's no way to have a reliable clock. And so, we have the mess that we have.

The grand majority of Linux users could disable SecureBoot tomorrow and their system's security would not change in any meaningful way.

OsrsNeedsf2P

Was Secure Boot supposed to increase security? I thought Microsoft was using it to make it near impossible to install Linux

michaelt

It increases security in certain circumstances. Mostly for Windows users at big corporations.

For example, you want your users' laptop hard drives to be encrypted - but also you have users who regularly forget their passwords? With bitlocker their hard drive can decrypt itself, so they only need to remember their windows login, which you can reset remotely.

You give laptops to your field workers, who have full physical access and would love to play video games or access netflix when work puts them in a hotel over night with nothing to do? With secure boot you can keep your precious spreadsheets locked down, even if they're willing to boot from USB sticks or swap the hard drive.

And perhaps most importantly, it has "secure" in the name. So the corporation's IT security auditors will like to see it turned on even if they have only a vague understanding of what it does.

okanat

Maybe you are too young for this but viruses modifying boot partitions was a big thing back then. It is simply impossible to inject some code without finding an exploit in UEFI with Secure Boot or somehow exploiting the kernel. It is still possible to do this kind of hack but it is 2 orders of magnitude harder.

ahartmetz

No, boot sector viruses were not a big thing, especially after DOS times. They existed, but they weren't the worst problem at any time.

mjg59

Linux distributions have been shipping with secure boot support since 2012, so if that was the goal it had already failed over a decade ago.

zahlman

The Linux Mint support forums keep telling people to try turning it off to fix problems, but I installed Mint just fine with it enabled on my 8 (at the time) year old hardware, before I'd even heard that there was such a thing.

Anyway, it's good to hear that I probably don't have anything to worry about.

jon-wood

Yes, it does, for some values of security. Operated correctly it allows you to know you can trust everything on your system from the UEFI firmware down, because if any part of that chain didn't match what you were expecting to be there the next step in the chain would refuse to execute.

Most people experience this via Windows, which automatically sets up that chain of trust so that you can know you've not had a rootkit injected somewhere. In other cases it may be Linux or something more exotic booting, and it requires some management by whoever is operating the device, but that comes with the benefit of knowing that if one of our devices has got to the point of decrypting it's storage we can be reasonably confident that it hasn't been tampered with, and so we can trust it to send good data.

fuzzfactor

SecureBoot and UEFI were "bundled" with Windows 8.0 PC's to curtail the possibility of users easily installing Windows 7 instead.

Earlier versions of Windows were a much bigger threat to adoption of Windows 8 than Linux was.

Yeul

Is secure boot even enabled by default?

I have never used it on my gaming PC and Windows doesn't seem to care.

jon-wood

Its a requirement on any device sold with Windows 11.

mjg59

The rollover coincides with stronger security policies for signed objects (enforcing code being read-only, that kind of thing) and people with stronger security requirements can remove trust in the old certificate to enforce that.

Code has bugs. There's any number of critical vulnerabilities in Linux, Windows, MacOS that have allowed bypass of all security features - does that mean all security features remain security theatre?

ploxiln

Most security features are, yeah.

The cost in terms of freedom/flexibility and reliability/longevity is very high. But we're told, this is necessary, it's the only way to guarantee the security of the poor user. But if in practice the security wasn't actually guaranteed, for most motherboards over most years, due to pretty big dumb oversights ... was it worth the extreme costs? The cost of losing compatibility with older or newer software/hardware, of losing convenient repairs and recovery? Nope.

You sold your soul for "guaranteed security" of securing the entire boot and runtime from the lowest level hardware up ... and didn't really get it anyway.

sabas123

You make it sound like security is a binary thing, which is not true.

armada651

They clearly didn't want to leave a system unbootable because a certificate expired. In which case you would have no opportunity to update the certificate because you can't boot the system anymore.

They could've used a time stamping service to include a signed timestamp in the binary to compare the expiry date against, but that still leaves the system unbootable after the time stamping certificate expires in the far future.

Besides, a hacking group powerful enough to steal Microsoft's Secure Boot private key will likely be able to steal a timestamping private key from a certificate authority as well.

strstr

With the default key hierarchies, the benefit is more limited. It raises the bar. Implementing known vulnerabilities takes work. And not ever configuration is vulnerable to every issue. And, for a lot of the vulns, the OS vendor shoves things in the dbx to mitigate.

With custom hierarchies, it's a bit more compelling. But it's a lot of work to maintain.

M95D

> [...] systems that only trust the new certificate and not the old one would refuse to boot older Linux, wouldn't support old graphics cards, and also wouldn't boot old versions of Windows. Nobody wants that [...]

EVERYBODY wants that! And I mean ABSOLUTELY EVERYBODY! Updates are now mandatory everywhere, in both Windows and Linux, and GPU manufactureres would LOVE to make the old cards obsolete, even if technically the new cards aren't much better.

So expect to see the old certificate invalidated quickly and automatically, in the name of security, of course!

michaelt

Even if this did happen, there's a trivial workaround available: Just go into your BIOS and switch 'Secure Boot' off.

Secure Boot is a fine thing if you're a huge corporation and want to harden laptops against untrustworthy employees, or you've got such a huge fleet of servers they go missing despite your physical security controls, or you're making a TiVo style product you want to harden against the device owners. But when the user is the device owner? Doesn't do much.

M95D

You won't be able to switch it off for long. See how many phones still have that option! [1]

In the end what matters is always money. Always.

What brings more money? TiVo or buyer-owned device? You think 5% of technically competent potential buyers would make a difference when the 95% illiterate users will just replace the product no questions asked?

It started as a fight against piracy and half-competent users that break their own systems (and the company's systems too, like you said). But slowly the industry sees that there's more money to be made if the same technology can provide a belivable argument in right to repair and planned obsolescence court cases.

[1] https://github.com/melontini/bootloader-unlock-wall-of-shame

II2II

Get back to me when it actually happens, because I've been hearing that line for about 15 years now and it has not happened.

The reality is that PC's address the needs of a fundamentally different market than "TiVo"s or even mobile phones. While most could, and probably should, be using secure boot noone seems to be eager to take away the option to disable it.

trelane

> you're making a TiVo style product you want to harden against the device owners.

This sentence just makes me so sad

observationist

This should be illegal, and anyone caught doing it fined twice the total cost of amortized ownership per each device owner over the total duration of ownership in addition to completely refunding every customer.

Throw in jail time for decision makers. Lets make markets honest with real incentives.

swagmoney1606

You can't play many videogames if you do this, as anticheat won't let the game run unless secure boot is turned on

a96

For values of many being less than one in a million. Yes, the few that do are somewhat popular competitive ones, but they are very very rare in the sea of games that exist.

supportengineer

I'm surprised more huge corporations don't move towards a "Chromebook only" by default. Now you don't have to manage anything. We're all doing our work in browsers anyway.

spydum

There are quite a few who have. Ive worked in a google workspace enabled company on a chromeos device for like that last 6? Years. It works 95% of the things, but that last 5% can be frustrating: especially when it involves interoperability with a customers system. Now multiply that by 40000 employees.. that's a lot of help desk tickets.

citizenpaul

If you are issued a chromebook to me it signal that they consider you a replaceable cog.

Its one of my interview questions these days. What device will I be issued?

If its a chromebook I know that no matter what they say they don't really care about the postion.

crazygringo

It's becoming increasingly popular, albeit slowly. The main barriers are 1) it has to be a corporation that uses Google Workspace rather than MS Office, and 2) there can't be any legacy .exe's that are still required, or else you need to figure out how to support those over some kind of remote desktop to a virtual Windows installation.

bongodongobob

Why on earth do you think Chromebooks wouldn't need to be managed?

keyringlight

I think at some point there will gradually be a line that divides consumer type devices and Workstation with a capital W type devices. If nothing else it'll encourage the PC market to really decide for each use-case how much they value having a huge range of laptop or pre-built configurations or being able to assemble from parts. There's a lot of momentum in the PC mindset, but I also think a lot of people would be satisfied with less 'personal' so long as they were able to identify what they need and match it to capabilities of a model. 20 years ago the idea of a phone/table as the personal computer for most people and not a PC/laptop would be silly, yet here we are

xg15

Even if you can, there might be dark patterns to discourage you, such as showing a "boot screen of shame" if its turned off.

tux3

Go in the BIOS and switch it off?

Certainly. Just one problem: Modern consumer BIOS interfaces are graphical and your GPU is off.

ThePowerOfFuet

That's not how it works; Secure Boot kicks in once EFI hands over control.

mschuster91

> But when the user is the device owner? Doesn't do much.

A decent Secure Boot implementation together with a BIOS/EFI password at least makes the life of US CBP or similar thugs wanting to use my devices against me much more difficult.

And no, that's not an imaginary threat, certainly not under this administration which has come under fire multiple times for first detaining and then deporting random tourists.

tpoacher

Bitlocker

tomhow

> EVERYBODY wants that! And I mean ABSOLUTELY EVERYBODY

Please don't use uppercase for emphasis. If you want to emphasize a word or phrase, put asterisks* around it and it will get italicized.*

https://news.ycombinator.com/newsguidelines.html

M95D

I know about italics, but this is intentional; I'm expressing outrage.

tomhow

Yes, and we need you to not express outrage on HN. It's not what HN is for and it destroys what it's for.

jimmaswell

I certainly do not want old graphics cards to become ewaste for no good reason.

dang

Recent and related:

Linux and Secure Boot certificate expiration - https://news.ycombinator.com/item?id=44601045 - July 2025 (265 comments)

slartibardfast0

the steps to import the new keys from microsoft are here:

https://techcommunity.microsoft.com/blog/windows-itpro-blog/...

worked perfectly on a fully updated Windows 11 24H2 installed on an old Surface Pro LTE i5-7300U that is perhaps unlikely to receive another firmware update...

Arnavion

There is also the option of enrolling your own certs and resigning the bootloader and any Option ROMs you need, if you're really worried / expect to actually be broken by this.

mjg59

Re-signing option ROMs is not trivial (or, well, it's easy to do the signing, it's not necessarily easy to flash that driver back into the card)

Arnavion

I see. I've never had to deal with any Option ROMs myself. In that case the easier option is to add their hash to db?

mjg59

That's the easiest, but it's a pain if you want to switch cards

s_ting765

I have a HP BIOS that doesn't go into setup mode (required to enroll certs) so I have no choice but to deal with the MS shim.

phkahler

The moment I lose access to my computer or data due to this nonsense is the day I have a Stallman moment and refuse to play. I'll use a Chinese risc-v machine with 5 year old performance or whatever. This stuff has lived in the far background of my mind for years with thoughts like "fedora somehow handles this so I don't need to worry." But if it hits I'm done. Won't support such hardware ever.

xg15

> So, uh, what's the story here? Why is there any engineering effort going on at all? [...] Microsoft will shortly start signing things with a new certificate that chains to a new root, and most systems don't trust that new root. [...] If something is signed purely with the new certificate then it won't boot on something that only trusts the old certificate (which shouldn't be a realistic scenario due to the above), but if something is signed purely with the old certificate then it won't boot on something that only trusts the new certificate.

So, dumb question: If the expiry dates are not enforced, why rotate the certificates at all? The only consequences of Microsoft introducing new keys seems to be that compatibility with old software and systems will over time become worse. But what's the upside - or the actual threat model this is defending against?

WhyNotHugo

I suspect new hardware will need to have only the new certificate if they want some sort of compatibility certification.

xg15

That's what I suspect as well. But would this have any actual security benefit or is it just a way to force people to abandon their old hardware like speculated in https://news.ycombinator.com/item?id=44748323 ?

fennec-posix

yeah, that sounds about right for UEFI

TacticalCoder

Can someone knowledgeable on the subject explain if I understand the following right:

    - on a mobo the motherboard provider signs the PK
    - there's only one PK
    - the PK signs one or more KEK, like "Microsoft Corporation UEFI CA 2011"
If that understanding is correct, can I add myself the new "Microsoft Corporation UEFI CA 2023" (the one that expires in 2038: I think that its name) the same way I can enroll new keys in the dbx? (say my own signed keys?)

If I add the new Microsoft key myself, shall it be as a KEK or in the dbx?

Will motherboard manufacturer release new firmware, with the new Microsoft key already signed? In that case, shall be a KEK ?

Basically instead of thinking, as TFA suggests: "Let's not worry about anything, everything shall be fine and keep working because keys expiration date aren't enforced", can I pro-actively enroll the new Microsoft key myself?

P.S: I don't drink the SecureBoot kool-aid but something has to be said about having a Linux unikernel (kernel+initramfs) signed and enforced by SecureBoot. And SecureBoot does at least somehow work. Source: I modified on bit of my kernel and had a SecureBoot error and the kernel refused to boot. You can try it for yourself.

mjg59

Vouched for the parent because it's a reasonable question.

As well as the new root certificates in db, which are used to decide whether signed code will execute or not, there will be a new signed Microsoft key for KEK. This isn't involved in the boot process, but is required for Microsoft to be able to sign further revocation updates. The article is discussing the db case, and if you want to ensure things signed only with the new key will boot on your system, you would want to add them to db.

Microsoft can sign a db update themselves (since there's a valid Microsoft key in KEK and db updates need to be signed with a key in KEK), but KEK updates need to be signed with PK. Microsoft doesn't own PK, so adding the new KEK requires the system vendor produce an update signed with their PK.

If you are in a position to enroll the new keys then you should enroll the new db keys if you want new binaries to be guaranteed to boot, and add the new KEK if you want to be able to apply future Microsoft-signed dbx updates.

ethan_smith

Yes, you can proactively enroll the new Microsoft UEFI CA 2023 certificate in the KEK database using `mokutil --import` on Linux or the UEFI firmware interface directly, though most distros will handle this automatically in upcoming updates.

mjg59

Not like that, you can't. Firstly, that's not a KEK cert - the KEK cert is "Microsoft Corporation KEK CA 2023". And secondly, mokutil manages the MOK database, not the firmware database. MOK keys control what shim will trust, but it's the firmware keys that control whether or not shim will boot in the first place.

Users should absolutely be able to install the db update by hand if they choose to, but it's late and I don't have the commands to hand. I'll write another post on this soon.

null

[deleted]