KB5004946: Windows Server 2019 / 2022 Out-of-band Security Update (July 2021)
Any authenticated domain user can remotely execute code as SYSTEM on any Windows Server with the Print Spooler running. Apply KB5004946 immediately — this was weaponised by ransomware groups within days of disclosure.
Any authenticated domain account — including low-privileged service accounts or compromised user accounts — can exploit this to gain SYSTEM-level code execution on any Windows Server running the Print Spooler, including Domain Controllers. An attacker who owns one account can own every server in the domain.
The Windows Print Spooler service runs by default on all Windows Servers. A flaw in how it handles certain print driver installation operations allows an authenticated user to load a malicious DLL with SYSTEM privileges. No local access is required — the attack works over the network from any domain-joined machine.
Probably yes if any of these apply:
Affected OS versions
Ransomware groups including Magniber and Vice Society weaponised PrintNightmare within days of public PoC release. In one documented incident, attackers moved from a single phishing compromise to full domain takeover in under 4 hours using PrintNightmare to escalate privileges on each server they reached. Microsoft released KB5004946 as an emergency out-of-band patch on July 6, 2021.
Superseded by a newer cumulative
KB5004946 has been rolled forward into KB5040442 (July 2024). Installing the latest cumulative closes this CVE — you don't need to deploy the original patch.
↗ KB5040442 on Microsoft Update CatalogManual download
For air-gapped servers or out-of-band deployment. Microsoft Update Catalog returns every OS-version variant of this update.
↗ Microsoft Update CatalogKB5004946Manual remediation steps
⏱ 30 minutes including rebootCheck if KB5004946 is Installed
Get-HotFix -Id KB5004946
# No output = patch not installed
Immediate Mitigation (if patching is delayed)
# Stop and disable the Print Spooler service
Stop-Service -Name Spooler -Force
Set-Service -Name Spooler -StartupType Disabled
Get-Service Spooler # Confirm: Status=Stopped
Apply the Patch
Re-enable Print Spooler (only if needed after patching)
Set-Service -Name Spooler -StartupType Automatic
Start-Service -Name Spooler
Verify
Get-HotFix -Id KB5004946
# InstalledOn date must appear
No tested PowerShell script for this entry yet. We’re prioritising automation based on user demand.
| Patch ID | CVE ID | Vulnerability Name / Type | CVSS | Reference |
|---|---|---|---|---|
| KB5004946 | CVE-2021-34527 | Windows Print Spooler Service (spoolsv.exe) | 8.8 | NVD ↗ |