This is the reference post for the Secure Boot 2023 and ConfigMgr Boot Images series. It is not part of the walkthrough. If you are working through the boot infrastructure, follow the deep dives in order. Come here when you need to look up which device can boot which image, decode a version screen, check a file, or work out why a PXE boot went nowhere.
I measured every value here in September and October 2026, against the September 2026 and October 2026 cumulative updates. Those are KB5129195, which has the same boot files as Patch Tuesday’s KB5124008, and KB5127648. The ADK values apply to both the December 2024 (10.1.26100.2454) and September 2026 (10.1.26100.9457) ADKs, which ship the same winpe.wim. The numbers move monthly, but the method does not.
Who can boot what
Firmware verifies the boot files a client runs against its DB and DBX. Those are the PXE network boot program and boot manager, or EFI\Boot\bootx64.efi from USB. Each file also checks its own version against the floor. The serving side knows nothing about the client, so the image or media determines the outcome for every client that uses it.
| Client firmware state | 2011-signed | 2023-signed, old version | 2023-signed, current version |
|---|---|---|---|
| Only the 2011 CAs in DB | Boots | Refused (expected, not observed) | Refused (expected, not observed) |
| 2023 CA in DB | Boots | Boots | Boots |
| Step 3 applied | Refused by signature | Refused by version (1.0 vs 3.0, 2.0 vs 5.0, 3.0 vs 5.0). Older months’ files boot | Boots |
| Step 4 applied | Refused by signature | Refused by version (1.0 vs 3.0, and 2.0, 3.0, 9.0, or 11.0 vs the floor) | Boots while at or above the floor |
| Secure Boot disabled | Boots (no signature check) | Boots (no version check either) | Boots |
How to read the table:
- “Old version” is the unpatched ADK’s
_EXfiles, an older ISO rootbootmgr.efi, Windows Server 2025’sboot_EXcopies, or a previous month’s image. “Current” is patched with the month’s cumulative update. - Only the 2011 CAs means the device has not had Step 1, or its firmware rejected it. The 2023 CA arrives with Step 1, Steps 1 and 2, or the OEM’s firmware defaults.
- Step 3 puts PCA 2011 in the DBX and sets a boot manager floor of 5.0 (3.0 for the PXE loader and the DVD boot stub). Older months’ files, such as a 9.0
boot_EXcopy or an August OS image, still boot. - Step 4’s floor is the SVN of the boot manager installed when it last ran, 11.0 on September 2026 builds and 12.0 after a re-run on October’s. Updates don’t move it, but the next re-run does, and then the image must be at least that SVN.
A signature refusal is silent. From PXE and from a DVD, the firmware moves on to the next boot entry, and from USB the Dell fell into SupportAssist. Configuration Manager CD/DVD sets are refused this way on Step 3 devices, even when every boot file on them is 2023-signed, because the ISO’s El Torito loader is PCA 2011. The decoder below says which file printed each pair of version numbers.
A task sequence reaches revoked devices too. Apply Operating System runs bcdboot, which put the OS image’s 2023-signed boot manager on the disk of every device that trusted the 2023 CA. The first restart then only needs the image’s SVN to clear the floor. An August 2026 image (9.0) started on a Step 3 device and stopped with “9.0 vs 12.0” on a Step 4 device at 12.0. The Steps 3 and 4 post has the details.
I verified the table on one Dell client and on three Hyper-V VMs, at Steps 1 and 2, Step 3 only, and Steps 3 and 4. The first row is the exception, because I could not observe it.
I observed the last row on the Steps 3 and 4 VM at floor 12.0. With Secure Boot off, it booted the 2011 loaders and the unpatched ADK’s 2023 loaders with no version screen, and it kept its floor. The SVN check is part of Secure Boot.
The DB lives in firmware NVRAM. Reimaging does not remove the 2023 CA, but a firmware “restore factory keys” can.
On HP the sources differ. HP’s support page (July 10th, 2026) says the defaults on models from 2021 and earlier hold only PCA 2011. HP’s answers at Microsoft’s OEM Secure Boot office hours five days later say the latest BIOS adds the 2023 CA to the defaults on commercial models from 2019 on. The exception is the EliteBook 840 G5 and older. Check dbDefault on the device before a reset (the command is under Verification commands below).
The version screen decoder
Every “Secure boot version check failed” screen is printed by the file that failed, and the PXE loader and the boot manager are checked separately with their own numbers. The full screen reads:
Security Error: Secure boot version check failed.
Your system security may be compromised!
Current version: 2.0 - Minimum allowed version: 11.0
Visit https://aka.ms/secure-boot-version-violation for more information.
The system will shutdown in 10 seconds.
The first number is the failing file’s own version. 1.0 is always the ADK’s PXE loader. Any other number is the SVN of the update era the file came from, and the moment says which file it is:
- Before the “Press ENTER” prompt, it is the PXE loader.
- After the prompt, over PXE or from USB, it is the boot manager.
- From a DVD, it is the
bootmgr.efiat the ISO root. - At the first restart after Apply Operating System, it is the boot manager
bcdboottook from the OS image.
| Current version | The file came from | Fix |
|---|---|---|
| 1.0 (minimum always 3.0) | The ADK’s wdsmgfw_EX.efi, the PXE network boot program, whatever the month | Patch the WIM with the current CU, swap, reload (patching post) |
| 2.0 | The Windows 11 24H2 release build: the ADK’s bootmgfw_EX.efi over PXE behind a current loader or on standalone media, or release media | Same. For standalone media, replace bootbins before MakeWinPEMedia |
| 3.0 | The July to December 2024 updates: the December 2024 ADK’s Media\bootmgr.efi at the root of an ISO booted as a DVD, or a 2024 OS image | For ISOs, copy the patched WIM’s EFI\bootmgr.efi over media\bootmgr.efi before MakeWinPEMedia (ConfigMgr media takes it from the WIM by itself). For an OS image, service it with the current CU |
| 5.0 | January to May 2025 | Bring that boot image, media, or OS image to the floor’s update |
| 6.0 | The May 28th, 2025 preview to June 2025 | Same |
| 7.0 | July 2025 to March 2026 (24 updates, the longest run) | Same |
| 8.0 | April to May 2026 | Same |
| 9.0 | June to August 2026: Windows Server 2025’s RemInst\boot_EX copy, or an August OS image at the first restart after Apply Operating System | Take PXE loaders from a CU-patched WinPE, not the server (WDS post). Service the OS image with the current CU |
| 11.0 | September 2026, the September 2026 ADK’s ISO root bootmgr.efi included | Same |
| 12.0 and later | October 2026 on. The SVN history has every update | Same |
The second number, the minimum, is the device’s floor for that file. It is 5.0 after Step 3 alone on a device with an April 2026 or later update (KB5025885). After Step 4, it is the SVN of the boot manager installed when Step 4 last ran, 11.0 on September 2026 builds and 12.0 after a re-run on October’s. It doesn’t rise with the device’s updates.
The PXE loader’s 3.0 reads the same on Step 3 and Step 4 devices because it is a separate entry. The SVN payload Step 4 writes carries three floors, the boot manager’s SVN plus 3.0 each for the PXE loader and the DVD boot stub. The two 3.0 entries have not changed since the first payload in July 2024.
The payload has lagged the boot manager once, on the 6.0 builds of May and June 2025, which shipped with a 5.0 payload. A device that ran Step 4 on them has a 5.0 floor.
File sizes, versions, and signers
Sizes are the fastest tell in a folder listing. The 2023-signed file is smaller than its 2011 twin at the same patch level. The difference is 48 to 280 bytes for the boot manager and 144 to 672 for the PXE loader, across the ADK and every update since July 2024.
| File | ADK 10.1.26100 (2011) | ADK 10.1.26100 (2023, _EX) | September 2026 CU (2023) |
|---|---|---|---|
bootmgfw.efi | 2,756,512 | 2,756,232 | 3,087,200 |
wdsmgfw.efi | 1,093,952 | 1,093,280 | 1,171,224 |
| Fixed-file version | 10.0.26089.1001 / 10.0.26100.1 | 10.0.26089.1001 / 10.0.26100.1 | 10.0.28000.367 / 10.0.26100.30227 |
| Boot manager SVN | 2.0 | 2.0 | 11.0 |
Windows Server 2025 RemInst\boot_EX\x64 (July/August 2026 CU) | 3,086,728 / 1,171,224, version 10.0.28000.352, SVN 9.0 | ||
Root bootmgr.efi on ISOs (PCA 2011 only) | 2,755,504, 10.0.26100.1085, SVN 3.0 (December 2024 ADK Media copy) | 3,070,456, 10.0.28000.367, SVN 11.0 (also the September 2026 ADK’s Media copy and the 26H2 ISO’s) | |
ISO El Torito loader (efisys.bin / efisys_EX.bin, with no readable SVN but a floor of its own, 3.0 in every SVN payload, which both ADKs’ 2023 stubs pass) | 1,040,800, 10.0.26100.1061 | 1,040,696, 10.0.26100.1061 | September 2026 ADK and KB5101684, 10.0.26100.30227: efisys.bin 1,118,152 (2011), efisys_EX.bin 1,118,008 |
October 2026 (KB5127648) moved the 2023 boot manager to 3,086,680 bytes, 10.0.28000.376, SVN 12.0, and the root bootmgr.efi to 3,072,024 bytes, SVN 12.0. The PXE loader didn’t change. Later months are in the tracker.
Read the version from FileVersionRaw, never from the FileVersion string, which a neighboring .mui file can supply (the same boot manager reads 10.0.28000.342 inside the WIM and .367 once staged). Read the signer from the file’s embedded signature, never from Get-AuthenticodeSignature, which returns the catalog signer on a host with the same cumulative update installed.
Where the two verified files live
| Serving path | Location | 2023 loaders come from |
|---|---|---|
| PXE responder | SMSBoot\<PackageID>\<arch>\ beside sccmpxe.exe (<install>\bin\X64\ on a site server, <drive>\SMS_DP$\sms\bin\ on a remote DP). One folder per image | The 2023 checkbox (PkgFlags bit 0x100) or the in-WIM swap |
| WDS-mode DP | <RemoteInstall>\SMSBoot\<arch>\, shared by all images, kept at the highest boot manager version among them | The in-WIM swap only |
| Task sequence media | EFI\Boot\bootx64.efi and EFI\Microsoft\Boot\bootmgfw.efi. As a DVD, the El Torito loader (PCA 2011 from the wizard) and the root bootmgr.efi | The in-WIM swap. For DVDs, an oscdimg rebuild with efisys_EX.bin |
| Standalone WinPE media | Same. As a DVD, the efisys_EX.bin loader and the root bootmgr.efi from the ADK’s Media folder | MakeWinPEMedia /bootex with current bootbins. For ISOs, a current media\bootmgr.efi |
| Inside the WIM | Windows\Boot\EFI\bootmgfw.efi and PXE\wdsmgfw.efi (2011) beside EFI_EX\bootmgfw_EX.efi and PXE_EX\wdsmgfw_EX.efi (2023) | The CU raises both to the current version. The swap copies _EX over the standard names |
| Disk after a task sequence | EFI\Microsoft\Boot\bootmgfw.efi and EFI\Boot\bootx64.efi on the EFI partition, written by bcdboot during Apply Operating System | The OS image’s own EFI_EX\bootmgfw_EX.efi, chosen without /bootex, at the OS image’s SVN |
Package flags
SMS_BootImagePackage.PkgFlags on a boot image, as seen in my lab:
| Bit | Meaning |
|---|---|
0x100 | Use Windows Boot Loader signed with Windows UEFI CA 2023 |
0x400 | Deploy this boot image from the PXE-enabled distribution point |
The 0x100 bit survives a site upgrade. The rebuilt default images kept it on both of my lab sites going from 2603 to 2609.
Get-CimInstance -Namespace "root\sms\site_<SiteCode>" -ClassName SMS_BootImagePackage |
Select-Object PackageID, Name, @{n='Flags';e={'0x{0:X}' -f $_.PkgFlags}},
@{n='Loader2023';e={($_.PkgFlags -band 0x100) -ne 0}}, @{n='PXE';e={($_.PkgFlags -band 0x400) -ne 0}}
Verification commands
Staged loaders on the responder.
$svc = (Get-CimInstance Win32_Service -Filter "Name='SccmPxe'").PathName -replace '^"([^"]+)".*$','$1'
$SmsBoot = Join-Path (Split-Path $svc) 'SMSBoot' # beside sccmpxe.exe on a site server DP and on a remote DP alike; never from the Identification key
Get-ChildItem $SmsBoot -Recurse -Filter *.efi | ForEach-Object {
[pscustomobject]@{
Path = $_.FullName.Substring($SmsBoot.Length)
Size = $_.Length
Version = [string]$_.VersionInfo.FileVersionRaw
Signer = ([System.Security.Cryptography.X509Certificates.X509Certificate2]::CreateFromSignedFile($_.FullName)).Issuer -replace ', O=.*$', ''
SHA256 = (Get-FileHash $_.FullName -Algorithm SHA256).Hash.Substring(0, 8)
}
} | Format-Table -AutoSize
Shared loaders on a WDS DP.
$RemInst = (Get-ItemProperty 'HKLM:\SYSTEM\CurrentControlSet\Services\WDSServer\Providers\WDSTFTP').RootFolder
Get-ChildItem "$RemInst\SMSBoot\x64\*.efi" | Select-Object Name, Length, @{n='Version';e={[string]$_.VersionInfo.FileVersionRaw}},
@{n='Signer';e={([System.Security.Cryptography.X509Certificates.X509Certificate2]::CreateFromSignedFile($_.FullName)).Issuer -replace ', O=.*$',''}}
What the responder served (the script takes the newest SMSPXE.log of the two possible locations).
$Install = (Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\SMS\Identification' -ErrorAction SilentlyContinue).'Installation Directory'
$dirs = @(if ($Install) { Join-Path $Install 'Logs' }) + @(Get-PSDrive -PSProvider FileSystem | ForEach-Object { Join-Path $_.Root 'SMS_DP$\sms\logs' })
$log = Get-ChildItem -Path $dirs -Filter smspxe.log -ErrorAction SilentlyContinue | Sort-Object LastWriteTime -Descending | Select-Object -First 1 -ExpandProperty FullName
Select-String -Path $log -Pattern 'BootFile: [^,]|end of file|cannot open|redirected to' | Select-Object -Last 8
A cannot open smsboot\<PackageID>\x64\boot.stl line is normal. Every 26100-era boot manager asks for EFI\Microsoft\Boot\boot.stl, Configuration Manager never stages it, and the boot continues.
What WDS served.
Get-WinEvent -LogName 'Microsoft-Windows-Deployment-Services-Diagnostics/Operational' -MaxEvents 400 |
Where-Object { $_.Id -in 4099, 4100 } |
Select-Object TimeCreated, Id, @{n='Transfer';e={ ($_.Message -replace '\s+',' ') -replace '^.*Client IP:','Client IP:' }} |
Select-Object -First 12
Media.
$iso = 'C:\Temp\media.iso'
$drv = (Mount-DiskImage -ImagePath $iso -PassThru | Get-Volume).DriveLetter
Get-ChildItem "${drv}:\EFI" -Recurse -Filter *.efi | Select-Object FullName, Length,
@{n='Signer';e={([System.Security.Cryptography.X509Certificates.X509Certificate2]::CreateFromSignedFile($_.FullName)).Issuer -replace ', O=.*$',''}}
Get-Item "${drv}:\bootmgr.efi", "${drv}:\EFI\Microsoft\Boot\boot.stl" | Select-Object FullName, Length, @{n='Version';e={[string]$_.VersionInfo.FileVersionRaw}} # the ISO root loader (read its SVN with the cjee21 tool) and boot.stl
Dismount-DiskImage -ImagePath $iso | Out-Null
For an ISO, also pull the El Torito loader, the only file the firmware checks on a DVD boot. 7z l -tIso <iso> lists [BOOT]\2-Boot-NoEmul.img. Its first 1,474,560 bytes are the efisys*.bin floppy image, and 7z x -tFat on that slice yields EFI\BOOT\BOOTX64.EFI, the cdboot loader. Read its signer the same way. If it is PCA 2011, the ISO is refused as a DVD on Step 3 devices, whatever the other files say.
Security Version Number. The SVN lives in a BOOTMGRSECURITYVERSIONNUMBER resource inside the boot manager. cjee21’s Check-UEFISecureBootVariables includes a Get-BootMgrSecurityVersion module and a “Check EFI file info” script that read it along with the embedded signature. The reader finds nothing in wdsmgfw.efi, which has no such resource, because its number is compiled in.
The floors themselves are readable. The update’s SVN payload, C:\Windows\System32\SecureBootUpdates\DBXUpdateSVN.bin, is a signed dbx write holding three entries. They are the boot manager’s SVN, 3.0 for the PXE loader, and 3.0 for the DVD boot stub, and Get-SecureBootSVN reports the first as StagedSVN.
The device.
[System.Text.Encoding]::ASCII.GetString((Get-SecureBootUEFI db).bytes) -match 'Windows UEFI CA 2023' # Step 1 done
[System.Text.Encoding]::ASCII.GetString((Get-SecureBootUEFI dbx).bytes) -match 'Windows Production PCA 2011' # Step 3 done
[System.Text.Encoding]::ASCII.GetString((Get-SecureBootUEFI dbDefault).bytes) -match 'Windows UEFI CA 2023' # a factory-key reset keeps the 2023 CA
Get-ItemProperty 'HKLM:\SYSTEM\CurrentControlSet\Control\SecureBoot\Servicing' | Select-Object UEFICA2023Status, WindowsUEFICA2023Capable
Get-SecureBootSVN # FirmwareSVN 5.0 after Step 3 alone; after Step 4, the SVN it last wrote
Do not use Get-AuthenticodeSignature X:\Windows\Boot\EFI\bootmgfw.efi inside WinPE as evidence. That file is the WIM’s copy and says nothing about the boot manager the firmware executed.
Registry bits and events for the revocation steps
Bit in AvailableUpdates | Action | Success event (System log, source TPM-WMI) |
|---|---|---|
0x5944 | Steps 1 and 2: 2023 KEK and CAs into the firmware, 2023 boot manager installed | 1043, 1036, 1044, 1045, and 1799, then 1808 when done |
0x80 | Step 3: PCA 2011 into the DBX | 1037 |
0x200 | Step 4: the update’s SVN payload into the firmware, the installed boot manager’s SVN as the floor plus 3.0 each for the PXE loader and the DVD boot stub. Re-run it once boot media and OS images carry a newer SVN | 1042 |
Relevant errors:
- 1795 - the firmware rejected the write.
- 1797 - the revocation was blocked because the 2023 CA is not in DB.
- 1798 - the revocation was blocked because the boot manager is not 2023-signed.
- 1801 - the certificates are available but not applied, and admin action is needed.
Symptom table
On the client or the device
| Symptom | Cause | Action |
|---|---|---|
| PXE on a Step 3 or 4 device: NBP downloads, the screen flashes, no “Press ENTER” prompt, no error, back to the boot list | Firmware refused the network boot program’s signature (a 2011 wdsmgfw.efi). The prompt is printed by that file | Serve 2023 loaders: checkbox on the responder, in-WIM swap plus Reload on WDS. Proof: a completed transfer for wdsmgfw.efi followed by nothing |
| Red “Secure boot version check failed” screen with two numbers, shutdown in 10 seconds | The file that printed it is below the device’s floor for that file | Look up the first number in the decoder |
| The same screen at the first restart after a task sequence’s Apply Operating System | bcdboot copied the OS image’s own 2023-signed boot manager to the disk, and its SVN is below the floor | Service the OS image with the current CU and redeploy. bcdboot already picks the 2023-signed file on any device that revoked PCA 2011 or trusts the 2023 CA, so leave its switches alone |
Get-SecureBootSVN says “Not compliant (Firmware does not match boot manager)” | The floor is below the installed boot manager’s SVN: always on a Step 3-only device (5.0), and on a Step 4 device after an update raised the SVN | Step 3 only: nothing. Step 4: bring WinPE, media, and OS images to the new SVN, then re-run Step 4 (0x200) |
Get-SecureBootSVN says “Not compliant (Staged SVN does not match firmware SVN)” on a device without Step 3 or 4 | No floor has been written (FirmwareSVN 0.0) | Nothing, unless Step 3 or 4 is planned |
| “PXE-E23: Client received TFTP error from server” right after the station IP | The offered network boot program does not exist on the server (WDS shared loaders deleted without a restart) | Restart-Service WDSServer. The provider re-extracts the missing files from the PXE-enabled images |
PXE client “PXE-E16: No valid offer received”, and SMSPXE.log has PXE::MP_GetList failed; 0x80070490 | The DP’s ManagementPoints value is empty: a self-signed DP certificate with HTTPS-only management points, seen after a site server promotion | Import a PKI client certificate on the DP (General tab) |
| USB or ISO fails silently and OEM diagnostics launch, or a DVD / virtual DVD is skipped without a message | The device has Step 3, and the media’s boot manager is PCA 2011, or on a DVD its El Torito loader is (ConfigMgr CD/DVD sets, and the 26H2 install ISO throughout) | Rebuild media from a swapped image, or patch the media. Rebuild ISOs with oscdimg and the ADK’s efisys_EX.bin |
| BitLocker recovery on every boot after Step 3 | PXE first in the boot order | Move PXE below the OS disk, or disable network boot |
| Device will not boot after a firmware “restore factory keys” | The default DB lacks the 2023 CA and the disk’s boot manager is 2023-signed. The reset also removed Steps 3 and 4 | SecureBootRecovery.efi from USB, or re-enroll keys in firmware setup. Then re-run the steps that were in place |
On the distribution point
| Symptom | Cause | Action |
|---|---|---|
| PXE or media back on the old loaders after an ADK or site upgrade, a site server move, or a reload, while the console still shows the patched OS version | The image was rebuilt from an unpatched winpe.wim on whichever SMS Provider or site server did the work | Patch winpe.wim on every SMS Provider host, Update Distribution Points with Reload from a console on a patched host (SmsAdminUI.log names its provider), and verify the staged files |
| PXE stops for Step 3 or 4 devices within an hour of a site upgrade, before anyone ran Update Distribution Points | The upgrade rebuilt the default boot image from an unpatched provider’s winpe.wim and pushed it to the DPs itself | CMUpdate.log (“Successfully updated the default boot image”) names the provider. Patch it and every other, then reload and verify |
Boot image distributed to no DP after a site server move (boot.<PackageID>.wim missing) | The built file stayed on the old site server | Update Distribution Points, then verify the staged sizes: the move may have regenerated the source from an unpatched ADK |
| WDS DP: loaders still 2011 after the 2023 checkbox | The checkbox is inert on WDS | In-WIM swap plus Reload |
| WDS DP: shared loaders don’t match the image just reloaded | Another PXE-enabled image has the same or a newer boot manager version (the folder keeps the highest and never replaces an equal one, whichever signer), or the expansion failed | Swap that image too, or take PXE off it, then delete the two files from RemoteInstall\SMSBoot\x64 and Restart-Service WDSServer. For a failed expansion, see the race row below |
| WDS DP still serves 2023 loaders after the patched image was deleted or reverted | Nothing in the console lowers the shared folder | Delete bootmgfw.efi, wdsmgfw.efi, and bootmgr.exe from RemoteInstall\SMSBoot\<arch>, then Restart-Service WDSServer |
| Staged loader dates look old after a fresh extraction | Extraction preserves the source file’s timestamps on WDS and on the responder | Judge by hash or FileVersionRaw, never by date |
SMSPXE.log not where expected, or two SMSBoot trees on one DP | The DP used to be a site server: its old install stays registered (WDS ProviderDll, Identification key) and keeps the log, while its old bin\X64\SMSBoot goes stale | Take the newest smspxe.log. Find the staging folder from the SccmPxe service’s path |
SMSPXE.log on a WDS DP shows BootFile: but no transfer sizes | WDS’s TFTP is not logged there | Deployment Services Diagnostics Operational events 4099 and 4100 |
SMSPXE.log shows “Failed to copy the needed boot binaries” (0x80004005) or “MP_InitializeTransport failed” right after enabling or changing PXE | The provider raced the image expansion, or reloaded while the DP settings were being saved | Wait a minute, because the provider may retry by itself. Otherwise, restart WDSServer or SccmPxe once distmgr.log is idle |
SMSPXE.log can’t open boot.stl in the image’s smsboot\<PackageID>\x64 folder | Every 26100-era boot manager asks for EFI\Microsoft\Boot\boot.stl, and ConfigMgr never stages it | Nothing. The boot continues |
Media builds, tooling, and upgrades
| Symptom | Cause | Action |
|---|---|---|
| ConfigMgr media still 2011 after the checkbox | The media wizard ignores the checkbox and extracts from the WIM | Swap inside the WIM first, or patch the media |
| Standalone WinPE media is 2023 but at SVN 2.0 | copype and MakeWinPEMedia use bootbins from the ADK’s own winpe.wim, not your boot.wim | Replace bootbins before MakeWinPEMedia, and put /bootex last |
MakeWinPEMedia prints its usage and exits | /bootex not last | Put /bootex last |
DISM /Add-Package fails 0x80070228 on the checkpoint update | Folder form of /PackagePath | Point at the LCU file with the checkpoint alongside |
icacls /setowner access denied in a mounted image | Take-ownership privilege not enabled | takeown /f first |
Get-AuthenticodeSignature says PCA 2011 for a 2023 file | Catalog signer returned on a host with the same CU installed | Read the embedded signature |
VersionInfo.FileVersion differs for byte-identical boot managers (.342 vs .367) | String-table value supplied by a neighboring .mui | Compare FileVersionRaw, the hash, or the SVN |
| The Update Distribution Points wizard shows “Current Windows ADK version: 10.0.26100.0” after an ADK upgrade | The line shows the kit’s 10.0.26100.0 for every 10.1.26100.x ADK, December 2024 and September 2026 alike | Check the installed ADK version in Programs and Features (10.1.26100.9457) |
Recurring tasks
| Task | When |
|---|---|
Patch the ADK winpe.wim with the monthly CU, swap, reload every PXE-enabled boot image (on WDS DPs, every one of them), and rebuild media | Before the first Step 3 device, then monthly with Step 4 in place or rolling out, and quarterly otherwise |
Service the OS images task sequences apply with the month’s CU (DISM /Add-Package on the task sequence’s index, then Update Distribution Points) | Monthly with Step 4 in place, before re-running it |
| Check each new cumulative update for a new boot manager. The KB’s file list gives its version in a minute. For a new version, read the SVN on a device that installed it (verification commands) or take it from the SVN history | Each new cumulative update, previews and out-of-band releases included |
Re-run Step 4 (AvailableUpdates = 0x200) once boot images, media, and OS images carry the new SVN | Each update that raises the boot manager SVN, with Step 4 in place |
Patch the new ADK’s winpe.wim on the site server and every SMS Provider host before the site upgrade, then Update Distribution Points on every boot image, verify the staged files, and rebuild media | Every ADK or ConfigMgr upgrade, and every site server move |
Re-import DP certificates, confirm ManagementPoints on each PXE-enabled DP, and PXE boot one client | Every site server promotion |
Record the shipped boot manager version and SVN, and compare with Get-SecureBootSVN on the fleet | Every boot image rebuild |
| Re-check the KB5025885 changelog and Microsoft’s Secure Boot known-issues page | Start of every change |
Where to go next
- The boot manager SVN history and the values that change every month: the release tracker
- Microsoft’s hub for the certificate transition: aka.ms/GetSecureBoot, and the revocation guidance in KB5025885