Detect MMC in Splunk
Adversaries may abuse mmc.exe to proxy execution of malicious .msc files. Microsoft Management Console (MMC) is a signed Microsoft binary used to create, open, and save custom consoles containing administrative snap-ins. Adversaries can craft malicious .msc files that execute arbitrary commands when opened in MMC. The Medusa ransomware group has been documented using this technique. MMC snap-ins can execute commands, run scripts, and perform system administration actions, making malicious .msc files a powerful execution vehicle that bypasses application control.
MITRE ATT&CK
- Tactic
- Defense Evasion
- Technique
- T1218 System Binary Proxy Execution
- Sub-technique
- T1218.014 MMC
- Canonical reference
- https://attack.mitre.org/techniques/T1218/014/
SPL Detection Query
index=wineventlog sourcetype="XmlWinEventLog:Microsoft-Windows-Sysmon/Operational" EventCode=1
(Image="*\\mmc.exe" OR ParentImage="*\\mmc.exe")
| eval HasMSC=if(match(CommandLine, "\.msc"), 1, 0)
| eval SuspiciousPath=if(match(CommandLine, "(Temp|AppData|Downloads|Public|Desktop|ProgramData)"), 1, 0)
| eval RemoteMSC=if(match(CommandLine, "(http[s]?://|\\\\\\\\[a-zA-Z])"), 1, 0)
| eval SuspiciousParent=if(match(ParentImage, "(cmd|powershell|wscript|cscript|mshta|winword|excel|outlook)\.exe"), 1, 0)
| eval SuspiciousChild=if(ParentImage="*\\mmc.exe" AND match(Image, "(cmd|powershell|wscript|cscript|net|netsh)\.exe"), 1, 0)
| eval RiskScore=(HasMSC * SuspiciousPath) + RemoteMSC + SuspiciousParent + SuspiciousChild
| where RiskScore > 0 OR SuspiciousChild=1
| table _time, host, User, Image, CommandLine, ParentImage, ParentCommandLine, HasMSC, SuspiciousPath, RemoteMSC, SuspiciousParent, SuspiciousChild, RiskScore
| sort - _time Detects MMC abuse using Sysmon Event ID 1. .msc files only score when combined with a suspicious path, reducing false positives from admin tool usage. Remote MSC loading and scripting engine parents score independently as these are high-confidence indicators.
Data Sources
Required Sourcetypes
False Positives & Tuning
- IT administrators launching MMC with custom .msc console files from network shares
- Software creating custom MMC snap-ins during installation
- Group Policy and Active Directory administration utilities using custom .msc files
- Enterprise monitoring solutions using MMC snap-ins
Other platforms for T1218.014
Testing Methodology
Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1MMC Execution with Custom MSC File from Temp
Expected signal: Sysmon Event ID 11: .msc file written to Temp. Sysmon Event ID 1: mmc.exe with Temp path in command line. Security Event ID 4688.
- Test 2MMC Launched from PowerShell
Expected signal: Sysmon Event ID 1: powershell.exe then mmc.exe with ParentImage=powershell.exe. SuspiciousParent fires. Security Event ID 4688.
- Test 3MMC Child Process Spawning
Expected signal: If a real malicious snap-in were loaded, Sysmon EventCode=1 would show cmd.exe or powershell.exe with ParentImage=mmc.exe. This test generates the mmc.exe process creation event for detection validation.
References (4)
Unlock Pro Content
Get the full detection package for T1218.014 including response playbook, investigation guide, and atomic red team tests.