Adversaries may attempt to get a listing of software and software versions that are installed on a system or in a cloud environment. Adversaries may use the information from Software Discovery during automated discovery to shape follow-on behaviors, including whether or not the adversary fully infects the target and/or attempts specific actions.
Such software may be deployed widely across the environment for configuration management or security reasons, such as Software Deployment Tools, and may allow adversaries broad access to infect devices or move laterally.
Adversaries may attempt to enumerate software for a variety of reasons, such as figuring out what security measures are present or if the compromised system has a version of software that is vulnerable to Exploitation for Privilege Escalation.
| ID | Name | Description |
|---|---|---|
| S0534 | Bazar | |
| G0060 | BRONZE BUTLER |
BRONZE BUTLER has used tools to enumerate software installed on an infected host.[2] |
| S0482 | Bundlore |
Bundlore has the ability to enumerate what browser is being used as well as version information for Safari.[3] |
| S0674 | CharmPower |
CharmPower can list the installed applications on a compromised host.[4] |
| S0154 | Cobalt Strike |
The Cobalt Strike System Profiler can discover applications through the browser and identify the version of Java the target has.[5] |
| S0126 | ComRAT |
ComRAT can check the victim's default browser to determine which process to inject its communications module into.[6] |
| S1153 | Cuckoo Stealer |
Cuckoo Stealer has the ability to search systems for installed applications.[7] |
| S0472 | down_new |
down_new has the ability to gather information on installed applications.[2] |
| S0384 | Dridex |
Dridex has collected a list of installed software on the system.[8] |
| S0062 | DustySky |
DustySky lists all installed software for the infected machine.[9] |
| S0024 | Dyre |
Dyre has the ability to identify installed programs on a compromised host.[10] |
| G1001 | HEXANE |
HEXANE has enumerated programs installed on an infected machine.[11] |
| S0431 | HotCroissant |
HotCroissant can retrieve a list of applications from the |
| G0100 | Inception |
Inception has enumerated installed software on compromised systems.[13] |
| S1245 | InvisibleFerret |
InvisibleFerret has gathered installed programs and running processes.[14] |
| S0260 | InvisiMole |
InvisiMole can collect information about installed software used by specific users, software executed on user login, and software executed by each system.[15][16] |
| C0044 | Juicy Mix |
During Juicy Mix, OilRig used browser data dumper tools to create a list of users with Google Chrome installed.[17] |
| S0526 | KGH_SPY |
KGH_SPY can collect information on installed applications.[18] |
| S1185 | LightSpy |
If sent the command |
| S1141 | LunarWeb |
LunarWeb can list installed software on compromised systems.[20] |
| S0652 | MarkiRAT |
MarkiRAT can check for the Telegram installation directory by enumerating the files on disk.[21] |
| S0455 | Metamorfo |
Metamorfo has searched the compromised system for banking applications.[22][23] |
| G0069 | MuddyWater |
MuddyWater has used a PowerShell backdoor to check for Skype connectivity on the target machine.[24] |
| G0129 | Mustang Panda |
Mustang Panda has searched the victim system for the |
| C0016 | Operation Dust Storm |
During Operation Dust Storm, the threat actors deployed a file called |
| C0014 | Operation Wocao |
During Operation Wocao, threat actors collected a list of installed software on the infected system.[27] |
| S0229 | Orz | |
| S0598 | P.A.S. Webshell |
P.A.S. Webshell can list PHP server configuration details.[29] |
| S1228 | PUBLOAD |
PUBLOAD has used several commands executed in sequence via |
| S0650 | QakBot | |
| S1148 | Raccoon Stealer |
Raccoon Stealer is capable of identifying running software on victim machines.[32][33] |
| S1240 | RedLine Stealer |
RedLine Stealer can get a list of programs on the victim device.[34] |
| S0148 | RTM |
RTM can scan victim drives to look for specific banking software on the machine to determine next actions.[35] |
| S1099 | Samurai |
Samurai can check for the presence and version of the .NET framework.[36] |
| S0445 | ShimRatReporter |
ShimRatReporter gathered a list of installed software on the infected host.[37] |
| G1008 | SideCopy |
SideCopy has collected browser information from a compromised host.[38] |
| G0121 | Sidewinder |
Sidewinder has used tools to enumerate software installed on an infected host.[39][40] |
| S0623 | Siloscape | |
| S1124 | SocGholish |
SocGholish can identify the victim's browser in order to serve the correct fake update page.[42] |
| S0646 | SpicyOmelette |
SpicyOmelette can enumerate running software on a targeted system.[43] |
| S1183 | StrelaStealer |
StrelaStealer variants use COM objects to enumerate installed applications from the "AppsFolder" on victim machines.[44] |
| S1042 | SUGARDUMP |
SUGARDUMP can identify Chrome, Opera, Edge Chromium, and Firefox browsers, including version number, on a compromised host.[45] |
| S1064 | SVCReady |
SVCReady can collect a list of installed software from an infected host.[46] |
| S0467 | TajMahal |
TajMahal has the ability to identify the Internet Explorer (IE) version on an infected host.[47] |
| G0081 | Tropic Trooper |
Tropic Trooper's backdoor could list the infected system's installed software.[48] |
| G1017 | Volt Typhoon |
Volt Typhoon has queried the Registry on compromised systems for information on installed software.[49][50] |
| G0124 | Windigo |
Windigo has used a script to detect installed software on targeted systems.[51] |
| G0112 | Windshift |
Windshift has used malware to identify installed software.[52] |
| S1065 | Woody RAT |
Woody RAT can collect .NET, PowerShell, and Python information from an infected host.[53] |
| S0658 | XCSSET |
XCSSET uses |
This type of attack technique cannot be easily mitigated with preventive controls since it is based on the abuse of system features.
| ID | Name | Analytic ID | Analytic Description |
|---|---|---|---|
| DET0392 | Multi-Platform Software Discovery Behavior Chain | AN1100 |
Adversary spawns a process or script to enumerate installed software using WMI, registry, or PowerShell, potentially followed by additional discovery or evasion behavior. |
| AN1101 |
Adversary invokes 'dpkg -l', 'rpm -qa', or other package managers via shell or script to enumerate installed software. |
||
| AN1102 |
Adversary runs 'system_profiler SPApplicationsDataType' or queries plist files to enumerate software via Terminal or scripts. |
||
| AN1103 |
Adversary uses cloud-native APIs or CLI (e.g., AWS Systems Manager, Azure Resource Graph) to list installed software on cloud workloads. |
||
| AN1104 |
Adversary uses 'esxcli software vib list' to enumerate installed VIBs, drivers, and modules. |