Thanks to all of our ATT&CKcon participants. All sessions are here, and individual presentations will be posted soon.

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

Examples

NameDescription
Catchamas

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

Duqu

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

Kazuar

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

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

PoisonIvy

PoisonIvy captures window titles.[8]

PowerDuke

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

SOUNDBITE

SOUNDBITE is capable of enumerating application windows.[10]

WINERACK

WINERACK can enumerate active windows.[11]

Mitigation

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

Detection

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.

References