# DC0064 — Command Execution
## Descrição
O componente de dados **Command Execution** captura a execução de comandos textuais dentro de um sistema operacional ou aplicação — incluindo comandos de shell, cmdlets, scripts e execução programática. Isso abrange interpretadores como `cmd.exe`, `bash`, `zsh`, PowerShell, `wscript.exe`, além de execução via APIs nativas do SO. Este componente é fundamental para qualquer estratégia de detecção, pois práticamente todas as ações adversariais envolvem execução de algum tipo de comando.
O monitoramento de Command Execution é realizado por múltiplas fontes complementares: **Process Creation** (Sysmon Event ID 1, Security Event 4688), **Command Line Logging** e logs de terminal em ambientes Linux/macOS via `auditd` ou `osquery`. A linha de comando completa capturada — incluindo argumentos e parâmetros — é a fonte mais rica para análise de ameaças, permitindo identificar padrões de reconhecimento, execução de ferramentas ofensivas e técnicas de evasão.
Adversários abusam de intérpretes nativos para executar payloads sem necessidade de introduzir novos binários (técnica "living off the land" — LOTL). Comandos como `net user`, `whoami /all`, `systeminfo`, `ipconfig /all` indicam reconhecimento pós-comprometimento. Padrões como `cmd.exe /c` concatenado com múltiplos comandos, ou execução de `powershell.exe` por processos incomuns como `winword.exe` ou `excel.exe`, são indicadores fortes de compromisso.
Em ambientes Linux e contêineres, comandos como `curl | bash`, `wget -O- | sh` ou uso de `kubectl exec` para executar shells em pods são padrões típicos de exploração em infraestrutura cloud-native. Ferramentas de C2 como [[s0154-cobalt-strike]] e [[metasploit]] frequentemente interagem com sistemas via command execution para entregar stages adicionais.
## Telemetria
| Fonte | Event ID | Descrição |
|-------|----------|-----------|
| Sysmon | 1 | Process Creation com CommandLine completa |
| Security | 4688 | Criação de processo — requer auditoria de linha de comando habilitada |
| PowerShell/Operational | 4103 | Module Logging — execução de cmdlets |
| PowerShell/Operational | 4104 | ScriptBlock Logging — conteúdo de scripts |
| Linux auditd | N/A | execve() syscall — captura todos os comandos |
| macOS Unified Log | N/A | Atividade de terminal e shell via endpointsecurity |
## Queries de Detecção
### KQL — Microsoft Sentinel
```kql
// Detecta padrões de reconhecimento pós-comprometimento
DeviceProcessEvents
| where FileName in~ ("cmd.exe", "powershell.exe", "pwsh.exe")
| where ProcessCommandLine has_any (
"whoami", "net user", "net group", "ipconfig",
"systeminfo", "tasklist", "netstat", "hostname"
)
| where InitiatingProcessFileName !in~ (
"explorer.exe", "devenv.exe", "code.exe"
)
| summarize Commands=make_set(ProcessCommandLine), count() by DeviceName, AccountName, bin(Timestamp, 5m)
| where count_ > 3
| order by Timestamp desc
```
### SPL — Splunk
```spl
index=wineventlog EventCode=4688
| where match(CommandLine, "(?i)(whoami|net\s+user|ipconfig|systeminfo|tasklist|netstat)")
| where NOT match(ParentProcessName, "explorer\.exe|devenv\.exe")
| stats count, values(CommandLine) as cmds by host, SubjectUserName
| where count > 3
| sort -count
```
## Técnicas Relacionadas
- [[t1059-command-and-scripting-interpreter|T1059-command-and-scripting-interpreter]] — Uso de intérpretes de comando e script
- [[t1106-native-api|T1106-native-api]] — Execução via APIs nativas do sistema operacional
- [[t1204-user-execution|T1204-user-execution]] — Usuário involuntariamente executa comandos maliciosos
- [[t1569-system-services|T1569-system-services]] — Execução de comandos via serviços do sistema
- [[t1078-valid-accounts|T1078-valid-accounts]] — Abuso de contas legítimas para executar comandos
> [!tip] Living Off the Land (LOTL)
> Adversários sofisticados evitam introduzir novos binários e preferem usar ferramentas já presentes no sistema (`cmd.exe`, `wmic.exe`, `certutil.exe`, `msiexec.exe`). Baselines de linha de comando por processo pai são essenciais para detecção baseada em anomalias.
## Contexto LATAM
> [!warning] Relevância para SOCs Brasileiros
> Grupos de ameaça focados no Brasil, como operadores de [[s0531-grandoreiro]] e [[mekotio]], utilizam comandos nativos do Windows para reconhecimento e persistência após comprometimento inicial via phishing. Padrões típicos incluem execução de `cmd.exe` como filho de `wscript.exe` ou `mshta.exe` para baixar e executar cargas adicionais. SOCs devem garantir que o Process Creation Auditing (Event 4688) com captura de linha de comando completa estejá ativo em todos os endpoints Windows do ambiente corporativo.
## Referências
- [MITRE ATT&CK — DC0064: Command Execution](https://attack.mitre.org/datasources/DS0017/#Command%20Execution)
- [Microsoft Docs — Audit Process Creation](https://docs.microsoft.com/en-us/windows/security/threat-protection/auditing/audit-process-creation)
- [Sysmon — Event ID 1: Process Create](https://docs.microsoft.com/en-us/sysinternals/downloads/sysmon)