STEP 04 OF 14 · TA0002
Execution
Run adversary-controlled code on a local or remote system.
Access without execution is a locked door with a key in it. Execution is turning that key: an interpreter runs, a script fires, a scheduled task detonates. Almost always paired with the tactic that got them in and the one that keeps them there.
Why it matters on shift
Process-creation telemetry is the richest data source in the SOC. Nearly every execution technique shows up as a parent-child relationship that either makes sense or very much does not.
16 techniques
Techniques & detection
- T1047
Windows Management Instrumentation
WMI used to execute commands locally or on remote hosts without dropping a new binary.
Detect it with
WmiPrvSE.exe as a parent of cmd or powershell; WMI event subscriptions created outside change windows. - T1053
Scheduled Task/Job
schtasks, cron, at, and systemd timers used both to execute now and to survive a reboot.
Detect it with
Event ID 4698 (task created); new cron entries; tasks whose action points at a user-writable path. - T1059
Command and Scripting Interpreter
PowerShell, cmd, bash, Python, JavaScript, and Visual Basic used to run adversary commands.
Detect it with
Encoded PowerShell (-enc, -w hidden), Office applications spawning interpreters, script block logging (Event ID 4104). - T1072
Software Deployment Tools
Adversaries may gain access to and use centralized software suites installed within an enterprise to execute commands and move laterally through the network.
Detect it with
Detection methods will vary depending on the type of third-party software or system and how it is typically used. - T1106
Native API
Adversaries may interact with the native OS application programming interface (API) to execute behaviors.
Detect it with
Monitoring API calls may generate a significant amount of data and may not be useful for defense unless collected under specific circumstances, since benign use of API functions are common and may be difficult to distinguish from malicious behavior. - T1129
Shared Modules
Adversaries may execute malicious payloads via loading shared modules. Shared modules are executable files that are loaded into processes to provide access to reusable code, such as specific custom functions or invoking OS API functions (i.e., Native API).
Detect it with
Monitoring DLL module loads may generate a significant amount of data and may not be directly useful for defense unless collected under specific circumstances, since benign use of Windows modules load functions are common and may be difficult to distinguish from malicious… - T1203
Exploitation for Client Execution
Adversaries may exploit software vulnerabilities in client applications to execute code. Vulnerabilities can exist in software due to unsecure coding practices that can lead to unanticipated behavior.
Detect it with
Detecting software exploitation may be difficult depending on the tools available. Also look for behavior on the endpoint system that might indicate successful compromise, such as abnormal behavior of the browser or Office processes. - T1204
User Execution
The user opens the attachment, mounts the ISO, runs the installer, or pastes the ClickFix command.
Detect it with
Process trees rooted in a mail client or browser download directory; execution from temp, Downloads, or a mounted image. - T1559
Inter-Process Communication
Adversaries may abuse inter-process communication (IPC) mechanisms for local code or command execution. IPC is typically used by processes to share data, communicate with each other, or synchronize execution.
Detect it with
Monitor for strings in files/commands, loaded DLLs/libraries, or spawned processes that are associated with abuse of IPC mechanisms. - T1569
System Services
Creating or abusing services (including PsExec-style service installs) to execute payloads as SYSTEM.
Detect it with
Event ID 7045 (service installed) with a random-looking service name or a binary path in ADMIN$. - T1609
Container Administration Command
Adversaries may abuse a container administration service to execute commands within a container.
Detect it with
Container administration service activities and executed commands can be captured through logging of process execution with command-line arguments on the container and the underlying host. - T1610
Deploy Container
Adversaries may deploy a container into an environment to facilitate execution or evade defenses.
Detect it with
Monitor for suspicious or unknown container images and pods in your environment. Deploy logging agents on Kubernetes nodes and retrieve logs from sidecar proxies for application pods to detect malicious activity at the cluster level. - T1648
Serverless Execution
Adversaries may abuse serverless computing, integration, and automation services to execute arbitrary code in cloud environments.
Detect it with
No MITRE detection guidance published. Build coverage from the parent technique and your own telemetry. - T1651
Cloud Administration Command
Adversaries may abuse cloud management services to execute commands within virtual machines.
Detect it with
No MITRE detection guidance published. Build coverage from the parent technique and your own telemetry. - T1674
Input Injection
Adversaries may simulate keystrokes on a victim’s computer by various means to perform any type of action on behalf of the user, such as launching the command interpreter using keyboard shortcuts, typing an inline script to be executed, or interacting…
Detect it with
No MITRE detection guidance published. Build coverage from the parent technique and your own telemetry. - T1675
ESXi Administration Command
Adversaries may abuse ESXi administration services to execute commands on guest machines hosted within an ESXi virtual environment.
Detect it with
No MITRE detection guidance published. Build coverage from the parent technique and your own telemetry.