PRINTNIGHTMARE
SPOOLSV
DRIVER DLL
POINT AND PRINT
DetectionBlue TeamSOCOctober 12, 2026•9 min read

Detecting PrintNightmare and Print Spooler Abuse

The Print Spooler runs as SYSTEM and loads driver DLLs. PrintNightmare let a low-privilege user choose which DLL, and the same service remains a favourite target for coercion and escalation.

Scroll

PrintNightmare (CVE-2021-34527) abused the spooler’s driver installation RPC calls so an authenticated user could make the SYSTEM-level spooler load an attacker-controlled DLL, giving local privilege escalation and, on exposed hosts, remote code execution (T1068). Microsoft shipped fixes and later changed Point and Print defaults, but unpatched hosts, weakened registry settings and spooler enabled on domain controllers still appear in real environments.

Signals at a Glance

SignalWhereATT&CK
spoolsv.exe spawning cmd, PowerShell, rundll32 or other interpretersSysmon 1, 4688T1068
DLL written under the spool drivers directory by spoolsv.exeSysmon 11, EDR file eventsT1068
Spooler failed to load a plug-in modulePrintService/Admin event 808T1068
Point and Print restrictions disabled in policy registry keysSysmon 13, config auditT1562.001
Remote AddPrinterDriverEx style RPC calls from a non-admin to a server or DCZeek DCE-RPC, network sensorsT1210

Process and File Artifacts

Exploit success is visible in two places on the host. The spooler is a long-lived service that should rarely start children, and it should only write signed driver files into its driver store. Either breach of those norms is high confidence:

title: Print Spooler Spawning Suspicious Child Process
logsource:
  product: windows
  category: process_creation
detection:
  selection:
    ParentImage|endswith: '\spoolsv.exe'
    Image|endswith:
      - '\cmd.exe'
      - '\powershell.exe'
      - '\pwsh.exe'
      - '\rundll32.exe'
      - '\regsvr32.exe'
      - '\mshta.exe'
      - '\wscript.exe'
  filter_driver_helper:
    CommandLine|contains: 'PrintUI.dll'
  condition: selection and not filter_driver_helper
level: high
# tune/validate: some print drivers launch helper processes; confirm against your driver set.
// Microsoft Defender (KQL) - DLLs written into the spool driver store
DeviceFileEvents
| where InitiatingProcessFileName =~ "spoolsv.exe"
| where FolderPath has "spool" and FolderPath has "drivers"
| where FileName endswith ".dll"
| project Timestamp, DeviceName, FolderPath, FileName, SHA256, InitiatingProcessAccountName
// Follow up: image-load events where spoolsv.exe loaded that SHA256.

Configuration and Exposure

The strongest control is not running the spooler where it is not needed, and verifying that Point and Print has not been weakened. Check both on a schedule and alert on drift:

# Is the spooler running on servers and domain controllers that should not print?
Get-Service Spooler | Select-Object Name, Status, StartType

# Point and Print settings that weaken the mitigation
Get-ItemProperty 'HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Printers\PointAndPrint' -ErrorAction SilentlyContinue |
  Select-Object NoWarningNoElevationOnInstall, UpdatePromptSettings, RestrictDriverInstallationToAdministrators
# tune/validate: NoWarningNoElevationOnInstall = 1 or UpdatePromptSettings = 0 is a finding.
Vetted sources

Use Microsoft’s guidance for CVE-2021-34527, the SigmaHQ spooler and PrintService rules, Elastic’s prebuilt rules for spooler child processes and driver DLL loads, and Atomic Red Team where available for validation. Baseline your own environment — print servers have the most legitimate spooler activity.

Build Detections That Fire

Mjolnir Security helps blue teams turn threat intelligence into high-fidelity detections across endpoint, network, identity and cloud telemetry.

Detection EngineeringManaged Detection & ResponseThreat HuntingIncident ResponsePurple Teaming
  • Detection Engineering We build and tune detections mapped to ATT&CK from your own telemetry.
  • Threat Hunting as a Service Hypothesis-driven hunts for the behaviours on this page.
  • 24/7 Incident Response Containment when a detection fires. Call +1 833 403 5875.
Written by: Mjolnir Threat Research (MTAC)  |  Published: October 12, 2026  |  Last reviewed: October 12, 2026