Adversaries may try to gather information about registered local system services. Adversaries may obtain information about services using tools as well as OS utility commands such as sc query, tasklist /svc, systemctl --type=service, and net start.
Adversaries may use the information from System Service Discovery during automated discovery to shape follow-on behaviors, including whether or not the adversary fully infects the target and/or attempts specific actions.
| ID | Name | Description |
|---|---|---|
| G0018 | admin@338 |
admin@338 actors used the following command following exploitation of a machine with LOWBALL malware to obtain information about services: |
| G0006 | APT1 |
APT1 used the commands |
| G0143 | Aquatic Panda |
Aquatic Panda has attempted to discover services for third party EDR products.[3] |
| S0638 | Babuk |
Babuk can enumerate all services running on a compromised host.[4] |
| S0127 | BBSRAT | |
| S0570 | BitPaymer |
BitPaymer can enumerate existing Windows services on the host that are configured to run as LocalSystem.[6] |
| G0060 | BRONZE BUTLER |
BRONZE BUTLER has used TROJ_GETVERSION to discover system services.[7] |
| S0572 | Caterpillar WebShell |
Caterpillar WebShell can obtain a list of the services from a system.[8] |
| G0114 | Chimera |
Chimera has used |
| S0154 | Cobalt Strike |
Cobalt Strike can enumerate services on compromised hosts.[10] |
| S0244 | Comnie |
Comnie runs the command: |
| S0625 | Cuba |
Cuba can query service status using |
| S0024 | Dyre |
Dyre has the ability to identify running services on a compromised host.[13] |
| S0081 | Elise |
Elise executes |
| S0082 | Emissary |
Emissary has the capability to execute the command |
| S0091 | Epic |
Epic uses the |
| S0049 | GeminiDuke |
GeminiDuke collects information on programs and services on the victim that are configured to automatically run at startup.[17] |
| S0237 | GravityRAT |
GravityRAT has a feature to list the available services on the system.[18] |
| S0342 | GreyEnergy |
GreyEnergy enumerates all Windows services.[19] |
| S0431 | HotCroissant |
HotCroissant has the ability to retrieve a list of services on the infected host.[20] |
| S0203 | Hydraq |
Hydraq creates a backdoor through which remote attackers can monitor services.[21][22] |
| S0398 | HyperBro |
HyperBro can list all services and their configurations.[23] |
| G0119 | Indrik Spider |
Indrik Spider has used the win32_service WMI class to retrieve a list of services from the system.[24] |
| S0260 | InvisiMole |
InvisiMole can obtain running services on the victim.[25] |
| S0015 | Ixeshe | |
| S0201 | JPIN | |
| S0283 | jRAT | |
| G0004 | Ke3chang |
Ke3chang performs service discovery using |
| G0094 | Kimsuky |
Kimsuky has used an instrumentor script to gather the names of all services running on a victim's system.[30] |
| S0236 | Kwampirs |
Kwampirs collects a list of running services with the command |
| S0582 | LookBack | |
| S0039 | Net |
The |
| G0049 | OilRig |
OilRig has used |
| G0116 | Operation Wocao |
Operation Wocao has used the |
| G0033 | Poseidon Group |
After compromising a victim, Poseidon Group discovers all running services.[36] |
| S0378 | PoshC2 |
PoshC2 can enumerate service and service permission information.[37] |
| S0629 | RainyDay |
RainyDay can create and register a service for execution.[38] |
| S0241 | RATANKBA | |
| S0496 | REvil | |
| S0085 | S-Type | |
| S0692 | SILENTTRINITY |
SILENTTRINITY can search for modifiable services that could be used for privilege escalation.[42] |
| S0533 | SLOTHFULMEDIA |
SLOTHFULMEDIA has the capability to enumerate services.[43] |
| S0615 | SombRAT | |
| S0559 | SUNBURST |
SUNBURST collected a list of service names that were hashed using a FNV-1a + XOR algorithm to check against similarly-hashed hardcoded blocklists.[45] |
| S0018 | Sykipot | |
| S0242 | SynAck | |
| S0057 | Tasklist |
Tasklist can be used to discover services running on a system.[49] |
| S0266 | TrickBot |
TrickBot collects a list of install programs and services on the system’s machine.[50] |
| G0010 | Turla |
Turla surveys a system upon check-in to discover running services and associated processes using the |
| S0386 | Ursnif | |
| S0180 | Volgmer |
Volgmer queries the system to identify existing services.[52] |
| S0219 | WINERACK | |
| S0086 | ZLib |
ZLib has the ability to discover and manipulate Windows services.[41] |
| S0412 | ZxShell |
This type of attack technique cannot be easily mitigated with preventive controls since it is based on the abuse of system features.
| ID | Data Source | Data Component |
|---|---|---|
| DS0017 | Command | Command Execution |
| DS0009 | Process | Process Creation |
System and network discovery techniques normally occur throughout an operation as an adversary learns the environment. Data and events should not be viewed in isolation, but as part of a chain of behavior that could lead to other activities, such as Lateral Movement, based on the information obtained.
Monitor processes and command-line arguments for actions that could be taken to gather system information related to services. Remote access tools with built-in features may interact directly with the Windows API to gather information. Information may also be acquired through Windows system management tools such as Windows Management Instrumentation and PowerShell.