|
|
Log in / Subscribe / Register

Secure Boot certificate expiration is here

July 1, 2026

This article was contributed by Brian "bex" Exelbierd

Linux users who have Secure Boot enabled on their systems rely on certificates issued by Microsoft to verify the software used to boot a system is trusted by the user. One of those certificates expired recently, but that will not cause systems that are able to boot to stop doing so. There are situations where the expiration may cause problems, however, and the window for relying on existing signed binaries is shorter than it might appear. Users and administrators will want to stay on top of these changes. Over the last year, part of my job at Microsoft has been to work on this problem. LWN wrote about the certificate expiration in July 2025, and this article follows up with where we are now.

How Linux boots under Secure Boot

UEFI Secure Boot requires firmware to refuse to execute boot code that has not been signed by a certificate in the firmware's trust database. The majority of computing hardware capable of Secure Boot is manufactured to meet Microsoft guidelines that include loading the Microsoft UEFI certificates into the firmware trust database for use as trust anchors.

Microsoft does not sign the GRUB bootloader. Instead, it signs the shim binary, which is the first-stage bootloader that then loads the distribution's own bootloader (typically GRUB), which then validates and loads the kernel.

From shim onward, the chain of trust runs through the distribution's own infrastructure. Distributions manage their own signing keys and can publish updates to GRUB and the kernel without involving Microsoft. Shim is designed to change infrequently, so that Microsoft's signing role does not become part of distribution-release or security-update processes, except in situations where shim itself needs to be signed.

The code for shim is open source. The community runs a shim-review process that serves as the primary gate to signing. A distributor, such as Debian or Red Hat, creates an issue in the GitHub repository that includes the shim.efi binary to be signed, the build logs, and additional information to review a request for a signature. After the community approves a submission, then the distributor may request the signature; Microsoft then verifies the submitter's relationship to the distribution, runs its own checks, and applies the cryptographic signature. This arrangement lets the community manage review without running signing infrastructure or requesting all of the firmware vendors to include their certificates. Part of my job has been to bridge the communication between the shim-review community and the team at Microsoft that signs the shim binary during this transition.

The Microsoft Corporation UEFI CA 2011 certificate expired on June 26, 2026 (or June 27, depending on time zone). It is being replaced by the Microsoft UEFI CA 2023 certificate, which does not expire until 2038. This will not cause existing systems (e.g., those that have booted successfully before the expiration) to stop booting; however, a system can fail to boot if it does not have the new certificate in its trust store and receives a new shim (via a system upgrade or new installation) that is signed with that certificate.

Note that there are multiple 2011 certificates used as trust anchors for various trust paths. As a family, the certificates begin expiring in June with the Windows Secure Boot certificates expiring last, in October. For Linux, the certificate that matters is the one that expired on June 26.

How expiration impacts Linux

Firmware is generally designed to ignore certificate expiration when evaluating whether a signature is valid. The UEFI specification's image-validation process bases the trust decision on whether the image's signing certificate is present in the authorized database (db) and absent from the forbidden database (dbx). It does not check a certificate's validity period. The intermediate certificates used to sign UEFI binaries have already expired without consequence. Any shim that is signed with the 2011 certificate will continue to work as it did before, barring a bug in a system's specific firmware implementation.

In October 2025, Microsoft began returning two signed binaries for each shim submission. One is signed with the 2011 certificate, and the other one is signed with the 2023 certificate. That overlap ended with the certificate expiration. Future submissions can only receive the 2023 signature, leaving distributors to decide whether to ship a dual-signed shim while they still can, or to move directly to a 2023-only shim. The latter choice is safe only for systems whose firmware already trusts the 2023 certificate.

The focus of this article is on shim, however, option ROMs—UEFI binaries that are loaded into peripherals such as graphics cards and executed during the preboot phase—have a similar exposure.

Forced update

The UEFI boot environment has attracted increasing security scrutiny. Vulnerabilities are occasionally discovered in shim, GRUB, and other boot-chain components just like other software. If a vulnerability is discovered in shim itself that requires a code change and a new binary, that new binary can only be signed with the 2023 certificate.

Therefore, the practical window for relying on the old 2011-signed shim is the time between now and the next security vulnerability or distribution release that forces a shim respin. Matthew Garrett has argued that the transition is less urgent than some descriptions suggest: in many cases, a system could boot older media, update its trust database, and then install or boot newer media. That path exists, but it is not sufficient for every environment. Systems with strict uptime requirements, restricted boot-media policies, or remote-only access may not have that option.

For most users running a maintained distribution on maintained hardware or a maintained virtualization layer, the distribution will manage this transition. The Linux Vendor Firmware Service (LVFS) and fwupd provide a mechanism for delivering firmware updates, including Secure Boot trust-database updates.

The systems that need attention are those where that path does not work: hardware where the vendor no longer supports the model or has stopped publishing LVFS updates, and virtual machines provisioned before cloud or virtualization providers enrolled with the 2023 certificate that have not received subsequent firmware updates. For those systems, mokutil can report whether the 2023 certificate is enrolled, and tools such as pesign or sbverify can show which certificate signed an installed shim. See this post for information on upgrading.

LVFS maintains its own compatibility data and can target updates to specific hardware configurations. Microsoft has published a dataset of device configurations where the 2023 certificate update has been confirmed to apply successfully, derived from Windows fleet telemetry and made available for Linux distributions and other non-Windows operating systems to use.

That compatibility work matters because forced trust database updates are not safe on all hardware. Forced updates have left some machines unbootable. On certain hardware, recovery requires physical access, and in some cases we have observed that systems were permanently damaged.

The distribution and the compute vendor are the best sources of current status and guidance. The shim-review community is not a support channel for individual systems, and Microsoft can only assist with its own compute platforms and operating systems.

Overall, the result is less an immediate, deadline-driven outage and more of a preventative-maintenance problem; system administrators need to take action to avoid running into a situation where a system may eventually stop booting, but the certificate expiry does not automatically mean systems will no longer boot the instant the certificate expired.

The systems most likely to have trouble are not the newest or most carefully managed systems; they are the ones stranded outside the normal firmware-update machinery when a future shim update becomes necessary.


Index entries for this article
GuestArticles(bex) Exelbierd, Brian


to post comments

Grumble about your vendor here!

Posted Jul 1, 2026 13:40 UTC (Wed) by cortana (subscriber, #24596) [Link] (13 responses)

The amount of ewaste that this expiry is going to create is criminal. Anyway, I'm disappointed that Lenovo haven't produced any updates for the ST250 which has an End of Service date of 2028-09-30. And yes I should be complaining to Lenovo but I bought this thing for my home lab so I have no relationship with the vendor. :)

Grumble about your vendor here!

Posted Jul 1, 2026 13:58 UTC (Wed) by bluca (subscriber, #118303) [Link] (12 responses)

The amount of ewaste that this is going to create is zero

Grumble about your vendor here!

Posted Jul 1, 2026 14:03 UTC (Wed) by cortana (subscriber, #24596) [Link] (11 responses)

I'm pretty sure where I work will have to throw hardware out rather than being allowed to disable secure boot.

Grumble about your vendor here!

Posted Jul 1, 2026 14:16 UTC (Wed) by bluca (subscriber, #118303) [Link] (10 responses)

Why would you have to disable secure boot?

Grumble about your vendor here!

Posted Jul 1, 2026 14:22 UTC (Wed) by cortana (subscriber, #24596) [Link] (7 responses)

At some point an update will install a newer shim, signed by the 2023 certificate's key, which is not in db. Won't that cause a boot failure unless Secure Boot is disabled?

Grumble about your vendor here!

Posted Jul 1, 2026 14:30 UTC (Wed) by bluca (subscriber, #118303) [Link] (6 responses)

You just need to install the DB update provided by LVFS signed with the current KEK, and then you'll be fine until 2038. At that point if the hardware is still alive, you can simply self-sign a PK and use it to sign the new KEK and self-enroll

Grumble about your vendor here!

Posted Jul 1, 2026 14:40 UTC (Wed) by cortana (subscriber, #24596) [Link] (5 responses)

fwupdmgr doesn't show any updates though...

UEFI DB:
    Device ID:        dca358041f30e64fc29bd7f8303c3a551b238544
    Current version:  2017
    Vendor:           Lenovo (UEFI:Lenovo)
    GUIDs:            5df2ad36-b109-5322-ad18-e391c04bf1c8 ← UEFI\VENDOR_Lenovo&NAME_Lenovo-UEFI-DB
                      e0ac0b27-dfe3-5490-b334-39ad9f708454 ← UEFI\CRT_14BDB0D3A3992F705F61DCE14722D05C042070B2
    Device Flags:     • Internal device
                      • Updatable
                      • Needs a reboot after installation
                      • Signed Payload
                      • Can tag for emulation

My interpretation (and maybe I'm just missing something here) is that Lenovo don't push firmware updates to the LVFS, rather you have to use their own forsaken onecli tool, which has yet to provide an update with the newer certificate.

And maybe Red Hat are being overly cautious, but their advice is consistently to rely on the vendor to provide an update rather than making any attempt to install anything into db yourself.

Grumble about your vendor here!

Posted Jul 1, 2026 14:45 UTC (Wed) by hughsient (guest, #52199) [Link] (4 responses)

> 5df2ad36-b109-5322-ad18-e391c04bf1c8 ← UEFI\VENDOR_Lenovo&NAME_Lenovo-UEFI-DB

It's the `26f42cba-9bf6-5365-802b-e250eb757e96 ← UEFI\VENDOR_Microsoft&NAME_Microsoft-UEFI-CA` one you need to update -- not the Lenovo one.

Grumble about your vendor here!

Posted Jul 1, 2026 14:54 UTC (Wed) by cortana (subscriber, #24596) [Link] (3 responses)

Aah ok. This one is...

UEFI CA:
    Device ID:        5bc922b7bd1adb5b6f99592611404036bd9f42d0
    Current version:  2011
    Vendor:           Microsoft (UEFI:Microsoft)
    GUIDs:            26f42cba-9bf6-5365-802b-e250eb757e96 ← UEFI\VENDOR_Microsoft&NAME_Microsoft-UEFI-CA
                      c34a7e6a-bd86-5244-8bd0-7db66fd3c073 ← UEFI\CRT_E30CF09DABEAB32A6E3B07A7135245DE05FFB658
    Device Flags:     • Internal device
                      • Updatable
                      • Needs a reboot after installation
                      • Signed Payload
                      • Can tag for emulation

I can open an issue if that's a useful place to debug this...

Grumble about your vendor here!

Posted Jul 1, 2026 15:00 UTC (Wed) by hughsient (guest, #52199) [Link] (2 responses)

> I can open an issue if that's a useful place to debug this...

A new issue in https://github.com/fwupd/fwupd/issues would be wonderful. If you're on HP or Fujitsu hardware it's a known issue as you need new firmware (which helpfully, usually *isn't* on the LVFS) before you can deploy the db update.

Grumble about your vendor here!

Posted Jul 1, 2026 15:10 UTC (Wed) by cortana (subscriber, #24596) [Link] (1 responses)

... got it. The lvfs remote is disabled by default. Thanks for pointing me in the right direction. I can see the update now. I'll apply it later & send a report via fwupdmgr.

(I didn't realise it was disabled because I'd previously updated dbx via fwupdmgr; I now see that those updates came from the vendor-directory remote, from a .cab included in the fwupd package itself...)

Grumble about your vendor here!

Posted Jul 1, 2026 15:14 UTC (Wed) by hughsient (guest, #52199) [Link]

> The lvfs remote is disabled by default

RHEL? If so, please grumble to your TAM or account manager and I can try and get Red Hat to mirror the LVFS on their CDN. When I last asked it was NAKd, but that was 100,000,000 downloads ago.

Grumble about your vendor here!

Posted Jul 1, 2026 14:33 UTC (Wed) by eru (subscriber, #2753) [Link] (1 responses)

Seems to me the article implies an answer near the end: On some hardware, updating the trust database may brick the machine.

(Again wondering if secure boot really is worth the added risk of denial of service to legitimate users).

Grumble about your vendor here!

Posted Jul 1, 2026 14:37 UTC (Wed) by bluca (subscriber, #118303) [Link]

> Seems to me the article implies an answer near the end: On some hardware, updating the trust database may brick the machine.

Then the cause for e-waste is broken firmware, not the expiration date which was baked in right when the certs were created in 2011, which is _fifteen_ years ago, giving vendors plenty of time to ensure the products they push out are worth the money they charge for it

> (Again wondering if secure boot really is worth the added risk of denial of service to legitimate users).

Yes

2038

Posted Jul 1, 2026 16:14 UTC (Wed) by willy (subscriber, #9762) [Link] (3 responses)

An auspicious date for the certificate expiry! But now it's ambiguous when we talk about "The Y2038 problem"

2038

Posted Jul 3, 2026 7:25 UTC (Fri) by taladar (subscriber, #68407) [Link]

Since this one is pretty much all on Microsoft maybe we should call this one the Y2038 Micro-problem?

2038

Posted Jul 6, 2026 9:28 UTC (Mon) by geert (subscriber, #98403) [Link] (1 responses)

Someone found it unfair that Y2038 would only affect 32-bit systems? ;-)

2038

Posted Jul 6, 2026 11:42 UTC (Mon) by anselm (subscriber, #2796) [Link]

There's probably a 32-bit timestamp somewhere in the certificate.

Secure Boot certificate expiration is here - another expert explanation

Posted Jul 1, 2026 19:11 UTC (Wed) by amacater (subscriber, #790) [Link]

Since you mentioned Debian and shim - can I recommend Steve McIntyre's blog at https://blog.einval.com/ where
he covers this with his usual flair, also the wiki pages on the Debian wiki on this subject.

Steve is the shim maintainer for Debian and a leader of the team of shim maintainers from various Linux distributions
[Full disclosure: I work with him on two Debian teams and regard him as significantly knowledgeable on this
and several other subjects.]

On some platforms, just updating the firmware and rebooting isn't enough

Posted Jul 3, 2026 11:00 UTC (Fri) by hmh (subscriber, #3838) [Link]

If you have installed an UEFI/system firmware update from your system vendor that was supposed to update the Secure Boot CA keys but "didn't", chances are you need to go to UEFI setup and reset the Secure Boot key store to the [updated] hard-coded defaults. It happened on some Dells here, and I can easily understand why it was done this way.

Also, on these very same Dell models and system firmware versions, fwupd 2.0.20 from the upcoming Debian trixie point release *did* update the kek, and db CA keys just fine, as well as the dbx. But it took two fwupdmgr get-updates + reboot cycles.

It all worked out very well, at least here.

Why not just keep using the expired certificate?

Posted Jul 5, 2026 17:35 UTC (Sun) by gray_-_wolf (subscriber, #131074) [Link] (4 responses)

I do not understand why we even need the new certificate. Article mentions that pretty much nothing actually verifies the expiry, so why Microsoft just cannot keep dual-signing with the Microsoft Corporation UEFI CA 2011 chain? What problem does this whole rotation even aims to solve?

Also, separate question, since the expiration time is ignored, and everything seems to run on revoke lists, why do these certificates even have expiration time set?

Why not just keep using the expired certificate?

Posted Jul 24, 2026 14:43 UTC (Fri) by cpitrat (subscriber, #116459) [Link] (3 responses)

I wish this comment had received an answer, because I'm asking myself the same question!

Why not just keep using the expired certificate?

Posted Jul 24, 2026 22:20 UTC (Fri) by neggles (subscriber, #153254) [Link] (2 responses)

Microsoft will not sign new binaries with an expired certificate, so all new shim releases have to be signed with the new one.

Why not just keep using the expired certificate?

Posted Jul 25, 2026 3:10 UTC (Sat) by Fowl (subscriber, #65667) [Link] (1 responses)

Then of course the question moves to *why* won’t Microsoft sign anything with the expired certificate? Does something actually cross check? As far as I know there’s no additional time stamping as is used in other code signing.

Why not just keep using the expired certificate?

Posted Jul 25, 2026 9:33 UTC (Sat) by cpitrat (subscriber, #116459) [Link]

> Then of course the question moves to *why* won’t Microsoft sign anything with the expired certificate?

This was actually the question from the beginning of the comment thread, as can be seen in the title and the first comment. And the second question was "why expire the certificate in the first place?" as it doesn't seem to provide anything in this particular case.


Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds