# T1027.005 - Indicator Removal from Tools > [!info] Sub-técnica > T1027.005 é sub-técnica de **T1027 - Obfuscated Files or Information**. Enquanto T1027 abrange toda a família de ofuscação, .005 específicamente trata da **modificação retroativa** de ferramentas detectadas para remover os indicadores que causaram a detecção - um loop de feedback adversarial contra defesas baseadas em assinatura. ## Descrição **Indicator Removal from Tools** (Remoção de Indicadores de Ferramentas) descreve o processo pelo qual adversários refinam ativamente seus artefatos maliciosos em resposta à detecção. Quando um antivírus, EDR, ou sistema de monitoramento detecta e isola uma ferramenta, o ator de ameaça pode determinar *o que* causou a detecção - uma string específica, um hash de arquivo, um trecho de código, metadados de compilação - e modificar o artefato para remover exatamente esse indicador, repúblicando uma versão atualizada. Esse processo transforma a defesa baseada em assinatura em uma **corrida armamentista** que favorece o atacante: cada detecção fornece feedback gratuito sobre o que funciona e o que não funciona no arsenal do adversário. O resultado é uma ferramenta progressivamente mais furtiva, refinada através de iterações reais contra defesas de produção. Os indicadores tipicamente removidos incluem: - **Strings identificadoras**: caminhos de arquivo de desenvolvimento (`C:\Users\hacker\Projects\`), comentários deixados no código, nomes de funções reveladoras - **Metadados de compilação**: PDB paths, timestamps de compilação, nomes de projetos Visual Studio, informações de autor - **Assinaturas de sequências de bytes**: trechos de código que já foram definidos em regras YARA ou bases de AV - **Informações de debug**: símbolos de debug, nomes de variáveis em scripts interpretados - **Certificados e recursos**: certificados expirados ou queimados, ícones ou recursos PE que foram catalogados - **Configurações hardcoded**: endereços C2 já queimados, User-Agents conhecidos, mutex names catalogados A diferença desta sub-técnica em relação a outras formas de ofuscação (T1027.001-004) é o **gatilho**: a remoção de indicadores ocorre *após* detecção confirmada, com informação precisa sobre o que foi sinalizado. Não é ofuscação preventiva - é resposta cirúrgica. ## Como Funciona ### Ciclo de refinamento adversarial O processo segue um loop iterativo que pode se repetir indefinidamente: 1. **Implantação** - O adversário usa a versão atual da ferramenta em operações reais ou submete a um serviço de verificação anônimo (VirusTotal, Antiscan.me) 2. **Detecção** - Um produto de segurança sinaliza o artefato. A detecção pode ser observada diretamente (quarentena em sistema comprometido, alerta em SIEM do alvo) ou inferida (o implante para de responder) 3. **Análise da detecção** - O adversário testa diferentes versões modificadas contra o produto que detectou para isolar *qual* indicador causou o alerta. Isso pode ser feito via: - Testes em VMs com o AV específico instalado - Serviços de "noscan" que verificam contra múltiplos AVs sem indexação pública - Modificação sistemática por partes (bisseção do código até isolar o trecho problemático) 4. **Remoção do indicador** - O trecho identificado é removido, substituído, ou reescrito. Técnicas comuns: - Renomear variáveis e funções - Reescrever lógica equivalente em linguagem diferente ou estilo diferente - Usar compiladores ou packers diferentes - Remover ou randomizar strings de configuração - Stripping de símbolos e metadados 5. **Verificação** - A nova versão é testada novamente. O ciclo se repete até não haver detecções, ou até que a detecção residual sejá aceitável operacionalmente. ### Perfil de indicadores por categoria | Categoria | Indicadores Comuns | Método de Remoção | |-----------|-------------------|-------------------| | Strings | Caminhos de build, comentários, C2 hardcoded | Ofuscação, criptografia, carregamento dinâmico | | Metadados PE | PDB path, TimeDateStamp, Rich Header | Strip, normalização, timestomping | | Comportamento | Sequências de syscalls, mutexes, registry keys | Reescrita de lógica, randomização | | Rede | User-Agent, JA3/JA3S, certificados TLS | Rotação de C2, frameworks novos | | YARA rules | Bytes específicos em offsets conhecidos | Padding, reordenação, compilação alternativa | ## Attack Flow ```mermaid graph TB A([Adversário cria ferramenta]) --> B[Implanta / Usa em operação] B --> C{Detecção ocorre?} C -->|NÃO - operação continua| B C -->|SIM| D[Analisa causa da detecção] D --> D1[Verifica em AV/EDR local] D --> D2[Usa serviço noscan/Antiscan.me] D --> D3[Bisseção sistemática do código] D1 & D2 & D3 --> E[Identifica indicador problemático] E --> E1[String hardcoded?] E --> E2[Metadados de compilação?] E --> E3[Sequência de bytes YARA?] E --> E4[Comportamento detectado por EDR?] E1 -->|SIM| F1[Ofusca / Cifra a string] E2 -->|SIM| F2[Strip / Normaliza PE metadata] E3 -->|SIM| F3[Reescreve trecho de código] E4 -->|SIM| F4[Altera lógica comportamental] F1 & F2 & F3 & F4 --> G[Gera nova versão da ferramenta] G --> H{Passa nos testes?} H -->|NÃO - refina mais| E H -->|SIM| I[Redistribui versão atualizada] I --> B style A fill:#c0392b,color:#fff style C fill:#e67e22,color:#fff style H fill:#e67e22,color:#fff style E fill:#8e44ad,color:#fff style I fill:#2980b9,color:#fff style B fill:#27ae60,color:#fff ``` ## Exemplos de Uso ### Turla - Evolução do agente Carbon O [[g0010-turla|Turla]] (APT russo, FSB) é um dos grupos mais documentados em refinamento iterativo de ferramentas. O Carbon framework foi observado em múltiplas versões entre 2014 e 2023, com cada iteração removendo strings e padrões identificados em análises públicas anteriores. Após públicações do ESET sobre Carbon em 2017 e 2019, versões subsequentes apresentaram remoção sistemática das strings identificadas nos relatórios - evidência de que o grupo monitora relatórios públicos de threat intelligence como feedback para refinamento. ### OilRig / APT34 - Remoção de strings após vazamento O [[g0049-oilrig|OilRig]] (Iran, MOIS) teve seu arsenal vazado em 2019 no "Lab Dookhtegan" leak. O grupo rapidamente públicou versões atualizadas de ferramentas como VALUEVAULT e FOXPHONE com remoção dos caminhos de build e strings que foram catalogadas após o vazamento. O ciclo de refinamento pós-vazamento foi documentado por múltiplos vendors e demonstra a velocidade com que grupos patrocinados por estados conseguem refinar artefatos. ### GALLIUM - Recompilação de RATs chineses O [[g0093-gallium|GALLIUM]] (China, APT de telecomúnicações) foi observado recompilando variantes do Poison Ivy e versões customizadas de RATs após detecções por produtos de segurança. Específicamente, o grupo retirou PDB paths que continham caracteres chineses e renomeou variáveis que haviam sido catalogadas em regras YARA públicas. Análises do Microsoft MSTIC documentaram o padrão de recompilação para evadir assinaturas existentes. ### SUNBURST - Remoção de debug artifacts O [[s0559-sunburst|SUNBURST]] (SolarWinds supply chain, [[g0016-apt29|APT29]]) é um caso clássico de ferramenta que passou por múltiplos estágios de limpeza antes da implantação. Análise do código-fonte revelou remoção cuidadosa de todos os símbolos de debug, normalização de timestamps, e substituição de strings identificadoras - um processo que claramente envolveu múltiplos ciclos de teste contra produtos AV antes do deployment em 2019-2020. ### Cobalt Strike - Customização de indicadores padrão O [[s0154-cobalt-strike|Cobalt Strike]] é o exemplo mais amplamente documentado: operadores (legítimos e maliciosos) que usam a ferramenta modificam profiles de C2, renomeiam pipenames de SMB, alteram magic bytes de staging, e removem strings padrão identificadas em regras públicas. O [[s0650-qakbot|QakBot]] foi frequentemente distribuído com Cobalt Strike modificado exatamente dessa forma - cada campanha com binários ajustados para passar pelos AVs da época. ## Detecção > [!warning] Desafio de Detecção > Por definição, um indicador removido com sucesso não pode ser detectado pela assinatura que antes o identificava. A detecção efetiva requer abordagens agnósticas a indicadores específicos, focadas em comportamento e características estruturais. ### Regra Sigma - Processo consultando VirusTotal/Serviços de Scan ```yaml title: Potential Tool Indicator Testing Against AV Scan Services id: f2a8c419-3d71-4e52-9b8e-2c1a7d4f6e03 status: experimental description: > Detecta consultas de rede a serviços conhecidos de verificação anônima de malware - padrão associado a adversários testando amostras refinadas antes de reimplantação (T1027.005). references: - https://attack.mitre.org/techniques/T1027/005/ author: RunkIntel daté: 2026-03-25 tags: - attack.defense_evasion - attack.t1027.005 logsource: category: network_connection product: windows detection: selection_scan_services: DestinationHostname|contains: - 'antiscan.me' - 'nodistribute.com' - 'kleenscan.com' - 'virusscan.jotti.org' - 'metadefender.opswat.com' selection_suspicious_process: Image|endswith: - '\powershell.exe' - '\cmd.exe' - '\curl.exe' - '\python.exe' - '\python3.exe' condition: selection_scan_services and selection_suspicious_process falsepositives: - Equipes de segurança verificando amostras suspeitas legítimas - Pesquisadores de malware level: medium ``` ### Regra Sigma - PE com Metadata Normalizada Suspeita ```yaml title: PE File with Stripped or Normalized Metadata id: e3b7a526-8c4d-4a39-7f9e-3b2d8e5c1f47 status: experimental description: > Detecta arquivos PE com combinações suspeitas de metadata ausente ou normalizada - padrão de Indicator Removal em ferramentas maliciosas que passaram por processo de refinamento (T1027.005). references: - https://attack.mitre.org/techniques/T1027/005/ author: RunkIntel daté: 2026-03-25 tags: - attack.defense_evasion - attack.t1027.005 logsource: category: file_event product: windows detection: selection_pe_executed: TargetFilename|endswith: - '.exe' - '.dll' filter_has_versioninfo: # PE sem VersionInfo nem PDB é suspeito quando executado de temp/user dirs TargetFilename|startswith: - 'C:\Users\' - 'C:\ProgramData\' - 'C:\Windows\Temp\' filter_microsoft_signed: Signed: 'true' Signer|startswith: 'Microsoft' condition: selection_pe_executed and filter_has_versioninfo and not filter_microsoft_signed falsepositives: - Ferramentas portáteis legítimas sem assinatura - Software legado sem VersionInfo level: low ``` ### Abordagens de Detecção Baseadas em Comportamento | Método | Descrição | Cobertura | |--------|-----------|-----------| | YARA comportamental | Rules focadas em lógica de código, não bytes específicos | Alta resiliência a refinamento | | Análise de Rich Header PE | Comparar perfis de compilação entre amostras relacionadas | Útil para atribuição e clustering | | Hunting por PDB paths zerados | Binários com PDB path substituído por zeros são suspeitos | Média eficácia | | Monitoramento de resubmissão | Alertar quando hash de arquivo previamente isolado reaparece modificado | Requer correlação temporal | | Threat Intel de refeed | Compartilhar IoCs refinados rapidamente para inválidar vantagem do atacante | Depende de ecossistema | ## Mitigação > [!note] Sem Mitigação Direta MITRE > O MITRE ATT&CK não lista mitigações específicas para T1027.005, pois a técnica explora limitações inerentes da defesa baseada em assinatura. A resposta defensiva deve focar em detecção comportamental e compartilhamento rápido de threat intelligence. | Abordagem | Descrição | Impacto | |-----------|-----------|---------| | Detecção comportamental (EDR) | Focar em comportamento (syscalls, rede, persistência) em vez de assinaturas de arquivo | Alto - agnóstico a modificações de indicadores | | YARA semântico | Escrever regras baseadas em lógica e estrutura de código, não sequências de bytes | Alto - mais resiliente a strip/recompilação | | Compartilhamento de inteligência (ISACs) | Publicar rapidamente indicadores refinados para inválidar vantagem do atacante | Médio - depende de adoção pela comunidade | | Sandboxing dinâmico | Executar suspeitos em sandbox comportamental antes de liberar | Alto para variantes desconhecidas | | Análise de similaridade | Clustering de malware por comportamento (Imphash, ssdeep, TLSH) para detectar variantes | Médio - detecta versões próximas | ## Contexto Brasil/LATAM A remoção de indicadores de ferramentas tem impacto direto e documentado no contexto brasileiro por vários motivos: **Ciclo lento de atualização de assinaturas:** Muitas organizações brasileiras, especialmente PMEs e órgãos públicos, operam com produtos AV desatualizados ou com atualizações de assinatura atrasadas. Isso aumenta a jánela de oportunidade para versões refinadas de malware já detectado. O [[sources|CERT.br]] documentou múltiplos incidentes onde variantes de malware globalmente detectado operaram por semanas em redes brasileiras por conta desse lag. **Trojans bancários brasileiros:** O ecossistema de malware bancário voltado para o Brasil ([[s0531-grandoreiro|Grandoreiro]], [[mekotio|Mekotio]], [[s0455-metamorfo|Casbaneiro]]) opera um ciclo extremamente rápido de refinamento - às vezes múltiplas variantes por semana. Os operadores monitoram ativamente detecções e ajustam loaders e droppers em resposta. Esse comportamento é consistente com T1027.005 em escala industrial, tornando o [[financial|setor financeiro]] brasileiro o ambiente mais exposto a essa técnica na região. **UNC3886 e infraestrutura crítica:** O [[g1048-unc3886|UNC3886]] (China, focado em VMware ESXi) foi documentado removendo indicadores de suas ferramentas de espionagem entre operações. Dado o nível de penetração do VMware em data centers brasileiros do setor de [[energy|energia]] e [[government|governo]], esta atividade tem relevância direta para o Brasil. **Recomendações para SOCs brasileiros:** 1. Priorizar detecção comportamental via EDR sobre AV baseado em assinatura 2. Participar de compartilhamento de inteligência (FIRST, OTX, compartilhamentos ISAC setoriais) 3. Assinar feeds de IoCs com atualização em tempo real (CISA KEV, Abuse.ch) para ter acesso a indicadores refinados rapidamente 4. Implementar hunting periódico com YARA semântico, não apenas matching de hash ## Referências - [MITRE ATT&CK - T1027.005 Indicator Removal from Tools](https://attack.mitre.org/techniques/T1027/005/) - [MITRE ATT&CK - T1027 Obfuscated Files or Information](https://attack.mitre.org/techniques/T1027/) - [ESET - Turla Carbon Framework Analysis](https://www.welivesecurity.com/2017/03/30/carbon-paper-peering-turlas-second-stage-backdoor/) - [Microsoft MSTIC - GALLIUM TTPs](https://www.microsoft.com/en-us/security/blog/2019/12/12/gallium-targeting-global-telecom/) - [Mandiant - OilRig Post-Leak Activity](https://www.mandiant.com/resources/blog/hard-pass-declining-apt34-invite-to-join-their-conspira) - [FireEye - SUNBURST Malware Analysis](https://www.mandiant.com/resources/blog/sunburst-additional-technical-details) - [CERT.br - Relatório Anual de Incidentes](https://www.cert.br/stats/) --- **Técnica pai:** [[t1027-obfuscated-files-or-information|T1027 - Obfuscated Files or Information]] **Tática:** [[_defense-evasion|Defense Evasion]] *Fonte: [MITRE ATT&CK - T1027.005](https://attack.mitre.org/techniques/T1027/005)*