# DET0371 — Detection Strategy for Debugger Evasion (T1622) ## Descrição Técnicas de evasão de debugger são amplamente empregadas por malware avançado para detectar a presença de ambientes de análise dinâmica (sandboxes, debuggers, ferramentas de reversão) e alterar ou interromper seu comportamento malicioso quando tal ambiente é identificado. As técnicas incluem chamadas à API `IsDebuggerPresent`, leitura do flag `BeingDebugged` no PEB (Process Environment Block), verificação de timing via `RDTSC`/`GetTickCount` para detectar a lentidão introduzida por breakpoints, detecção de hardware breakpoints via exceções, e verificação de artefatos de ferramentas populares como OllyDbg, x64dbg, WinDbg e IDA Pro. Famílias de malware sofisticadas como [[s0367-emotet|Emotet]], [[s0266-trickbot|TrickBot]], [[s0154-cobalt-strike|Cobalt Strike]] e APTs avançados implementam múltiplas camadas de detecção de análise — verificações de VM (VMware, VirtualBox, Hyper-V), presença de processos de monitoramento (Process Monitor, Wireshark), e contagem de núcleos de CPU/memória disponível. Quando detectam ambiente de análise, o malware pode terminar silenciosamente, exibir comportamento benigno, ou entregar payload alternativo inofensivo, dificultando a classificação automática. A detecção dessas técnicas foca em identificar as chamadas de API características (especialmente combinações anômalas), execução de instruções de timing anômalas, e comportamento de "anti-análise" como sleep excessivo logo após execução, verificações repetidas de processo e queries de ambiente do sistema. ## Indicadores de Detecção - Chamadas frequentes a `IsDebuggerPresent`, `CheckRemoteDebuggerPresent` ou leitura direta do PEB - Uso de `NtQueryInformationProcess` com `ProcessDebugPort` por processos suspeitos - Sleeping excessivo (> 60 segundos) imediatamente após execução de novo processo - Enumeração de processos em execução comparando com lista de ferramentas de análise conhecidas - Verificações de registry para chaves de VMware, VirtualBox ou outros hypervisors - Instruções `CPUID` com verificação de bit 31 do ECX para detecção de ambiente virtualizado ## Técnicas Relacionadas - [[t1622-debugger-evasion|T1622 — Debugger Evasion]] - [[t1497-virtualizationsandbox-evasion|T1497 — Virtualization/Sandbox Evasion]] - [[t1027-obfuscated-files-or-information|T1027 — Obfuscated Files or Information]] - [[t1055-process-injection|T1055 — Process Injection]] - [[t1562-001-disable-or-modify-tools|T1562.001 — Disable or Modify Tools]] ## Analytics Relacionadas - [[an1045-analytic-1045|AN1045 — Analytic 1045]] - [[an1046-analytic-1046|AN1046 — Analytic 1046]] - [[an1047-analytic-1047|AN1047 — Analytic 1047]] --- *Fonte: [MITRE ATT&CK — DET0371](https://attack.mitre.org/detectionstrategies/DET0371)*