Cross-source coverage
T1547.012 / ATT&CK
Boot or Logon Autostart Execution: Print Processors
11 rules across 4 sources.
From MITRE ATT&CK 19.2
Adversaries may abuse print processors to run malicious DLLs during system boot for persistence and/or privilege escalation. Print processors are DLLs that are loaded by the print spooler service, spoolsv.exe, during boot.
Adversaries may abuse the print spooler service by adding print processors that load malicious DLLs at startup. A print processor can be installed through the AddPrintProcessor API call with an account that has SeLoadDriverPrivilege enabled. Alternatively, a print processor can be registered to the print spooler service by adding the HKLM\SYSTEM\\[CurrentControlSet or ControlSet001]\Control\Print\Environments\\[Windows architecture: e.g., Windows x64]\Print Processors\\[user defined]\Driver Registry key that points to the DLL.
For the malicious print processor to be correctly installed, the payload must be located in the dedicated system print-processor directory, that can be found with the GetPrintProcessorDirectory API call, or referenced via a relative path from this directory. After the print processors are installed, the print spooler service, which starts during boot, must be restarted in order for them to run.
The print spooler service runs under SYSTEM level permissions, therefore print processors installed by an adversary may run under elevated privileges.
- Tactics
- Persistence · Privilege Escalation
- Platforms
- Windows
- Telemetry
-
WinEventLog:Sysmon
How MITRE says to detect it DET0026
Windows Detection Strategy for T1547.012 - Print Processor DLL Persistence
Windows Analytic 0074
Correlated registry modifications under Print Processors path, followed by DLL file creation within the system print processor directory, and DLL load by spoolsv.exe. Malicious execution often occurs during service restart or system boot, with SYSTEM-level privileges.
WinEventLog:SysmonEventCode=13, 14WinEventLog:SysmonEventCode=11WinEventLog:SysmonEventCode=7WinEventLog:SysmonEventCode=10
splunk/security_content
7 rules| Detection | Severity | Format |
|---|---|---|
| Print Processor Registry Autostart | Undefined | SPL |
| Print Spooler Adding A Printer Driver | Undefined | SPL |
| Print Spooler Failed to Load a Plug-in | Undefined | SPL |
| Spoolsv Spawning Rundll32 | Undefined | SPL |
| Spoolsv Suspicious Loaded Modules | Undefined | SPL |
| Spoolsv Writing a DLL | Undefined | SPL |
| Spoolsv Writing a DLL - Sysmon | Undefined | SPL |
socfortress/Wazuh-Rules
2 rulesWazuh Core Ruleset
1 rule| Detection | Severity | Format |
|---|---|---|
| Printer driver failed to load, possible remote code execution using PrinterNightmare exploit: CVE-2021-34527. | Critical | Wazuh XML |
elastic/detection-rules
1 rule| Detection | Severity | Format |
|---|---|---|
| Potential Port Monitor or Print Processor Registration Abuse | Medium | Elastic TOML |