Service Stop
Adversaries may stop or disable services on a system to render those services unavailable to legitimate users. Stopping critical services or processes can inhibit or stop response to an incident or aid in the adversary's overall objectives to cause damage to the environment. Adversaries commonly target backup services, security solutions (AV/EDR), database engines (SQL Server, Exchange, MySQL), and VSS to eliminate recovery options before deploying ransomware or wipers. Methods include sc.exe stop/config, net stop, PowerShell Stop-Service/Set-Service, taskkill against service host processes, and on ESXi, esxcli vm process kill.
let TargetedServices = dynamic([
// Backup and recovery
"vss", "VSS", "wbengine", "SDRSVC", "VeeamBackupSvc", "VeeamTransportSvc",
"AcronisAgent", "BackupExecAgentAccelerator", "BackupExecAgentBrowser",
"BackupExecDeviceMediaService", "BackupExecJobEngine", "BackupExecManagementService",
"BackupExecRPCService", "SQLBackupMon",
// Security / AV / EDR
"WinDefend", "MsMpSvc", "SecurityHealthService", "Sense", "WdNisSvc",
"CrowdStrike", "CSAgent", "CSFalconService", "McShield", "McTaskManager",
"MfeEERM", "mfemms", "mfevtp", "SAVService", "SepMasterService",
"Symantec", "SNAC", "TmCCSF", "SentinelAgent", "CarbonBlack",
// Database and email
"MSSQLSERVER", "MSSQL$", "SQLWriter", "SQLSERVERAGENT", "MsDtsServer",
"ReportServer", "MSSQLFDLauncher", "MySQL", "OracleService",
"MSExchangeIS", "MSExchangeTransport", "MSExchangeEdgeSync",
"MSExchangeFDS", "MSExchangeMailboxAssistants", "MSExchangeRPC",
"MSExchangeSA", "MSExchangeThrottling",
// IT infrastructure
"IISADMIN", "W3SVC", "WAS"
]);
let StopCommands = dynamic([
"stop ", "config ", "delete ", "/stop", "/im"
]);
DeviceProcessEvents
| where Timestamp > ago(24h)
| where FileName in~ ("sc.exe", "net.exe", "net1.exe", "taskkill.exe", "powershell.exe", "pwsh.exe", "wmic.exe")
| where ProcessCommandLine has_any (TargetedServices)
or (
(FileName in~ ("sc.exe") and ProcessCommandLine has_any ("stop", "config", "delete"))
or (FileName in~ ("net.exe", "net1.exe") and ProcessCommandLine has "stop")
or (FileName in~ ("taskkill.exe") and ProcessCommandLine has "/f")
or (FileName in~ ("powershell.exe", "pwsh.exe") and ProcessCommandLine has_any ("Stop-Service", "Set-Service", "sc.exe stop", "sc stop"))
or (FileName in~ ("wmic.exe") and ProcessCommandLine has_any ("service", "call", "stopservice", "ChangeStartMode"))
)
| extend StopMethod = case(
FileName in~ ("sc.exe") and ProcessCommandLine has "stop", "sc stop",
FileName in~ ("sc.exe") and ProcessCommandLine has "config" and ProcessCommandLine has "disabled", "sc disable",
FileName in~ ("sc.exe") and ProcessCommandLine has "delete", "sc delete",
FileName in~ ("net.exe", "net1.exe") and ProcessCommandLine has "stop", "net stop",
FileName in~ ("taskkill.exe"), "taskkill",
FileName in~ ("powershell.exe", "pwsh.exe") and ProcessCommandLine has "Stop-Service", "PowerShell Stop-Service",
FileName in~ ("powershell.exe", "pwsh.exe") and ProcessCommandLine has "Set-Service", "PowerShell Set-Service",
FileName in~ ("wmic.exe"), "WMIC service call",
"other"
)
| extend TargetsSecurityService = ProcessCommandLine has_any ("WinDefend", "MsMpSvc", "Sense", "CrowdStrike", "CSFalconService", "SentinelAgent", "CarbonBlack", "McShield", "SAVService", "SepMasterService", "WdNisSvc", "SecurityHealthService")
| extend TargetsBackupService = ProcessCommandLine has_any ("vss", "VSS", "wbengine", "VeeamBackupSvc", "SDRSVC", "BackupExec", "AcronisAgent", "SQLBackupMon")
| extend TargetsDatabaseService = ProcessCommandLine has_any ("MSSQLSERVER", "MySQL", "OracleService", "MSExchangeIS", "MSExchangeTransport", "SQLWriter")
| project Timestamp, DeviceName, AccountName, AccountDomain,
FileName, ProcessCommandLine, InitiatingProcessFileName,
InitiatingProcessCommandLine, InitiatingProcessParentFileName,
StopMethod, TargetsSecurityService, TargetsBackupService, TargetsDatabaseService
| sort by Timestamp desc Data Sources
Required Tables
False Positives
- System administrators performing legitimate service maintenance, patch cycles, or decommissioning of services via sc.exe or net stop
- IT automation platforms (Ansible, Chef, Puppet, SCCM) stopping services before updates or configuration changes
- Backup software agents that stop VSS or database services as part of a legitimate quiesced backup procedure
- Monitoring and patch management tools that restart services during scheduled maintenance windows
- Development and QA environments where engineers frequently stop and restart database or web services during testing
References (10)
- https://attack.mitre.org/techniques/T1489/
- https://blog.talosintelligence.com/2018/02/olympic-destroyer.html
- https://web.archive.org/web/20160226161828/https://www.operationblockbuster.com/wp-content/uploads/2016/02/Operation-Blockbuster-Report.pdf
- https://www.secureworks.com/research/wcry-ransomware-analysis
- https://www.crowdstrike.com/en-us/blog/hypervisor-jackpotting-ecrime-actors-increase-targeting-of-esxi-servers/
- https://unit42.paloaltonetworks.com/clop-ransomware/
- https://www.microsoft.com/en-us/security/blog/2022/10/14/new-prestige-ransomware-impacts-organizations-in-ukraine-and-poland/
- https://learn.microsoft.com/en-us/windows/win32/services/service-control-manager
- https://learn.microsoft.com/en-us/defender-endpoint/advanced-hunting-deviceprocessevents-table
- https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/T1489/T1489.md
Unlock Pro Content
Get the full detection package for T1489 including response playbook, investigation guide, and atomic red team tests.