Application Window Discovery

Adversaries may attempt to get a listing of open application windows. Window listings could convey information about how the system is used or give context to information collected by a keylogger.

In Mac, this can be done natively with a small AppleScript script.

ID: T1010

Tactic: Discovery

Platform:  macOS, Windows

Permissions Required:  User

Data Sources:  API monitoring, Process monitoring, Process command-line parameters

Version: 1.0



Catchamas obtains application windows titles and then determines which windows to perform Screen Capture on.[1]


The discovery modules used with Duqu can collect information on open windows.[2]


Kazuar gathers information about opened windows.[3]

Lazarus Group

Lazarus Group malware IndiaIndia obtains and sends to its C2 server the title of the window for each running process. The KilaAlfa keylogger also reports the title of the window in the foreground.[4][5][6]


NetTraveler reports window names along with keylogger information to provide application context.[7]


PoisonIvy captures window titles.[8]


PowerDuke has a command to get text of the current foreground window.[9]


Remexi has a command to capture active windows on the machine and retrieve window titles.[10]


SOUNDBITE is capable of enumerating application windows.[11]


WINERACK can enumerate active windows.[12]


Identify unnecessary system utilities or potentially malicious software that may be used to acquire information, and audit and/or block them by using whitelisting [13] tools, like AppLocker, [14] [15] or Software Restriction Policies [16] where appropriate. [17]


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 based on the information obtained.

Monitor processes and command-line arguments for actions that could be taken to gather system and network information. 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.