# T1027 - Obfuscated Files or Information
## Descrição
Adversários podem tornar executáveis ou arquivos difíceis de serem descobertos ou analisados ao criptografar, codificar ou ofuscar seu conteúdo - tanto em repouso no sistema quanto em trânsito pela rede. Trata-se de um dos comportamentos de evasão mais ubíquos no arsenal ofensivo moderno, cobrindo plataformas Windows, macOS, Linux, dispositivos de rede e ambientes ESXi.
O objetivo central é frustrar ferramentas de detecção baseadas em assinaturas estáticas, análise heurística e inspeção de strings em memória. Ao ocultar a natureza real de um payload - sejá um shellcode, um script PowerShell ou um binário compilado - o adversário aumenta substancialmente o tempo de permanência sem detecção (*dwell time*).
Payloads podem ser comprimidos, arquivados ou criptografados para contornar controles durante o [[t1566-phishing|Acesso Inicial via Phishing]] ou em fases posteriores da intrusão. Em muitos casos, a interação do usuário é necessária para que o arquivo sejá desofuscado via [[Decode Files or Information]] antes da [[t1204-user-execution|Execução pelo Usuário]]. Partes de arquivos também podem ser codificadas em Base64 ou XOR para ocultar strings em texto plano que de outra forma alertariam defensores.
Payloads multipeça - fragmentos aparentemente benignos que só revelam funcionalidade maliciosa quando remontados - são igualmente cobertos por esta técnica. A [[t1027-010-command-obfuscation|Ofuscação de Comandos]] abrange o uso de variáveis de ambiente, aliases e semânticas específicas de plataforma para evadir detecção baseada em assinaturas e mecanismos de controle de aplicações via [[t1059-command-and-scripting-interpreter|Interpretadores de Scripting]].
## Sub-técnicas
| ID | Nome | Descrição resumida |
|----|------|--------------------|
| T1027.001 | [[t1027-001-binary-padding\|Binary Padding]] | Adiciona bytes aleatórios ao binário para alterar o hash sem mudar a funcionalidade |
| T1027.002 | [[t1027-002-software-packing\|Software Packing]] | Usa packers (UPX, custom) para comprimir e criptografar executáveis |
| T1027.003 | [[t1027-003-steganography\|Steganography]] | Oculta dados em imagens, áudio ou outros arquivos de mídia |
| T1027.004 | [[t1027-004-compile-after-delivery\|Compile After Delivery]] | Entrega código-fonte e compila no host-alvo para evitar detecção de binários |
| T1027.005 | [[t1027-005-indicator-removal-from-tools\|Indicator Removal from Tools]] | Remove strings, imports e artefatos que identificariam a ferramenta |
| T1027.006 | [[t1027-006-html-smuggling\|HTML Smuggling]] | Entrega payloads via blobs JavaScript em HTML para contornar proxies |
| T1027.007 | [[t1027-007-dynamic-api-resolution\|Dynamic API Resolution]] | Resolve endereços de funções da API Windows em tempo de execução para evadir imports estáticos |
| T1027.008 | [[t1027-008-stripped-payloads\|Stripped Payloads]] | Remove símbolos de debug e metadados de binários para dificultar análise |
| T1027.009 | [[t1027-009-embedded-payloads\|Embedded Payloads]] | Embutem payloads dentro de outros arquivos legítimos (documentos, imagens) |
| T1027.010 | [[t1027-010-command-obfuscation\|Command Obfuscation]] | Ofusca comandos de shell/script com encodings, concatenações e variáveis |
| T1027.011 | [[t1027-011-fileless-storage\|Fileless Storage]] | Armazena payloads no registro, WMI ou memória - sem tocar o disco |
| T1027.012 | [[t1027-012-lnk-icon-smuggling\|LNK Icon Smuggling]] | Usa arquivos .LNK com ícones falsos para disfarçar executáveis |
| T1027.013 | [[Encoded File]] | Criptografa ou codifica arquivos (AES, XOR, Base64) para evadir análise estática |
| T1027.014 | [[t1027-014-polymorphic-code\|Polymorphic Code]] | Código que altera sua própria estrutura a cada execução, mantendo a funcionalidade |
| T1027.015 | [[t1027-015-compression\|Compression]] | Comprime payloads com ZLIB, LZMA, gzip para reduzir assinatura detectável |
| T1027.016 | [[t1027-016-junk-code-insertion\|Junk Code Insertion]] | Insere instruções inúteis (NOPs, loops infinitos mortos) para enganar analisadores |
| T1027.017 | [[t1027-017-svg-smuggling\|SVG Smuggling]] | Embute payloads JavaScript em arquivos SVG para contornar filtros de conteúdo |
## Como Funciona
A ofuscação opera em múltiplas camadas do ciclo de entrega do malware:
**1. Ofuscação de payload (pré-entrega)**
O adversário processa o binário ou script antes de entregá-lo ao alvo. Técnicas incluem packing com ferramentas como UPX ou packers customizados, codificação Base64/XOR, inserção de junk code e remoção de indicadores estáticos (strings, imports PDB). O objetivo é garantir que o hash do arquivo sejá único e que scanners estáticos não identifiquem o payload.
**2. Ofuscação em trânsito (durante entrega)**
Durante a entrega via phishing ou download drive-by, técnicas como [[t1027-006-html-smuggling|HTML Smuggling]] e [[t1027-017-svg-smuggling|SVG Smuggling]] entregam payloads embutidos em arquivos HTML ou SVG. Proxies de inspeção SSL e gateways de e-mail geralmente não conseguem reconstruir o binário a partir desses arquivos.
**3. Ofuscação em execução (pós-entrega)**
Uma vez no host, o payload pode ser decodificado diretamente na memória via [[t1027-011-fileless-storage|Fileless Storage]], resolvendo imports de API de forma dinâmica ([[t1027-007-dynamic-api-resolution|Dynamic API Resolution]]) para evitar que hooking de EDR intercepte chamadas suspeitas. Código polimórfico reescreve a si mesmo antes de cada execução.
**4. Ofuscação de comandos (durante execução)**
Scripts PowerShell, Bash ou cmd.exe são ofuscados com concatenações de strings, variáveis de ambiente e encodings para evadir regras baseadas em regex de SIEMs e ferramentas de análise comportamental.
## Attack Flow
```mermaid
graph TB
A[Adversário prepara payload] --> B[Ofuscação pré-entrega]
B --> B1[Packing / Encoding / Junk Code]
B --> B2[Remoção de indicadores]
B --> B3[Payload fragmentado]
B1 & B2 & B3 --> C[Entrega ao alvo]
C --> C1[HTML / SVG Smuggling]
C --> C2[Anexo de e-mail codificado]
C --> C3[Download via C2]
C1 & C2 & C3 --> D[Recepção no host-alvo]
D --> E[Deofuscação em memória]
E --> E1[Fileless Storage - Registro/WMI]
E --> E2[Dynamic API Resolution]
E --> E3[Código polimórfico - reescrita]
E1 & E2 & E3 --> F[Execução do payload final]
F --> G[Evasão de detecção bem-sucedida]
G --> H[Persistência / Movimentação lateral / Exfiltração]
```
## Exemplos de Uso
> [!example] APT-C-36 (Blind Eagle) - LATAM
> O grupo [[g0099-blind-eagle-apt-c-36|APT-C-36]], com foco extensivo no Brasil e na Colômbia, utiliza arquivos PDF e documentos Office com payloads Base64 embutidos entregues via phishing. O RAT [[s0385-njrat|njRAT]] e variantes do [[s1087-asyncrat|AsyncRAT]] são frequentemente empacotados com UPX customizado e comprimidos em ZIP protegidos por senha. A senha é fornecida no corpo do e-mail para enganar gateways de segurança.
> [!example] Grandoreiro - Setor Financeiro Brasileiro
> O banking trojan [[s0531-grandoreiro|Grandoreiro]], amplamente ativo no Brasil e na Espanha, usa [[t1027-006-html-smuggling|HTML Smuggling]] para entregar loaders ofuscados via páginas HTML com blobs JavaScript. O payload final é criptografado com algoritmo customizado XOR e só é decodificado após verificar geolocalização do IP-alvo, evitando análise em sandboxes fora do Brasil.
> [!example] GALLIUM - Infraestrutura Crítica
> O grupo [[g0093-gallium|GALLIUM]], associado a operações de espionagem contra operadoras de telecomúnicações, utiliza [[t1027-003-steganography|Esteganografia]] para ocultar C2 em imagens PNG aparentemente legítimas. Payloads são extraídos pixel a pixel via XOR com uma chave derivada de metadados EXIF da própria imagem.
> [!example] RedCurl - Espionagem Corporativa
> O [[g1039-redcurl|RedCurl]], ativo em campanhas de espionagem corporativa com vítimas no Brasil, emprega scripts PowerShell altamente ofuscados usando [[t1027-010-command-obfuscation|Command Obfuscation]] combinado com [[t1027-011-fileless-storage|Fileless Storage]] no registro do Windows. Nenhum binário é gravado em disco - toda a cadeia de execução ocorre inteiramente na memória.
> [!example] Amadey + DarkTortilla - Loader-as-a-Service
> O loader [[s1025-amadey|Amadey]] é frequentemente distribuído com payloads empacotados e criptografados pelo [[s1066-darktortilla|DarkTortilla]], um .NET crypter que usa múltiplas camadas de decodificação Base64 e compressão ZLIB para frustrar análise estática antes de injetar na memória.
## Detecção
> [!tip] Estrategia de Detecção
> A detecção eficaz de T1027 requer **análise comportamental em runtime** - regras baseadas em assinaturas estáticas são inerentemente insuficientes contra payloads ofuscados por definição. Foque em comportamentos pós-deofuscação: o que o código faz após se decodificar na memória.
**Sigma - PowerShell Encoded Command (T1027.010)**
```yaml
title: PowerShell Command Ofuscado via Encoded Command
status: stable
logsource:
category: process_creation
product: windows
detection:
selection:
Image|endswith: '\powershell.exe'
CommandLine|contains:
- '-EncodedCommand'
- '-enc '
- '-e '
filter_legitimate:
ParentImage|endswith:
- '\sccm.exe'
- '\ccmexec.exe'
condition: selection and not filter_legitimate
level: high
tags:
- attack.defense_evasion
- attack.t1027.010
```
**Sigma - HTML Smuggling via Browser Download (T1027.006)**
```yaml
title: Arquivo Executável Criado por Processo de Navegador
status: experimental
logsource:
category: file_event
product: windows
detection:
selection:
Image|endswith:
- '\chrome.exe'
- '\msedge.exe'
- '\firefox.exe'
TargetFilename|endswith:
- '.exe'
- '.dll'
- '.js'
- '.hta'
condition: selection
level: high
tags:
- attack.defense_evasion
- attack.t1027.006
```
**Sigma - Binário com Entropy Alta (Packing/Encryption)**
```yaml
title: Processo com Alto Índice de Entropia de Payload em Memória
status: experimental
logsource:
category: process_creation
product: windows
detection:
selection:
Entropy|gte: 7.0
Image|endswith:
- '.exe'
- '.dll'
filter_known_packed:
Image|contains:
- '\Program Files\7-Zip\'
- '\Program Files\WinRAR\'
condition: selection and not filter_known_packed
level: medium
tags:
- attack.defense_evasion
- attack.t1027.002
```
**Fontes de dados recomendadas:**
- Logs de criação de processos (Sysmon Event ID 1, Windows Security 4688)
- Logs de script PowerShell (Event ID 4103, 4104 - Script Block Logging)
- Análise de entropia de arquivos criados em disco
- Alertas comportamentais de EDR para injeção de memória e shellcode
- Detecção de blobs Base64 em argumentos de linha de comando
## Mitigação
| ID | Mitigação | Descrição |
|----|-----------|-----------|
| M1049 | [[Antimalware]] | Soluções com análise heurística e comportamental em runtime são mais eficazes que scanners baseados apenas em assinatura estática. Priorize EDRs com capacidade de análise de memória. |
| M1040 | [[m1040-behavior-prevention-on-endpoint\|M1040 - Behavior Prevention on Endpoint]] | Ferramentas de prevenção comportamental (EDR) podem bloquear tentativas de deofuscação e injeção de código em memória, mesmo quando a assinatura do payload é desconhecida. |
| M1047 | [[m1047-audit\|M1047 - Audit]] | Audite regularmente scripts agendados, chaves de registro de persistência e arquivos em pastas temporárias. Procure artefatos com alto índice de entropia ou encodings anômalos. |
| M1017 | [[m1017-user-training\|M1017 - User Training]] | Treine usuários para não abrir anexos inesperados, especialmente arquivos HTML, ZIP protegidos por senha ou documentos com macros. Phishing continua sendo o principal vetor de entrega de payloads ofuscados. |
## Contexto Brasil/LATAM
A técnica T1027 é onipresente nas ameaças direcionadas ao Brasil e à América Latina, sendo um denominador comum em práticamente toda cadeia de infecção documentada na região.
> [!warning] Alta Relevância Regional
> O ecossistema de banking trojans brasileiros - [[s0531-grandoreiro|Grandoreiro]], Mekotio, Guildma/Javali e Casbaneiro - é internacionalmente reconhecido pelo uso sofisticado de ofuscação multicamada. Pesquisadores da ESET e da Kaspersky documentaram extensivamente o uso combinado de Delphi comprimido, execução via AutoIt e carregadores em VBScript ofuscado nesse grupo de famílias de malware, que tem como alvo principal o setor financeiro brasileiro.
O grupo [[g0099-blind-eagle-apt-c-36|APT-C-36]] (Blind Eagle), com foco explícito em Brasil e Colômbia, usa consistentemente payloads codificados em Base64 entregues via phishing com temas de órgãos governamentais brasileiros (Receita Federal, INSS, Detran) para maximizar taxas de abertura. O [[g1039-redcurl|RedCurl]] também documentou vítimas corporativas no Brasil usando cadeia de infecção inteiramente sem arquivo em disco.
A fiscalização e conformidade de LGPD aumentou a superfície de ataques de engenharia social - e-mails falsos sobre "notificações de conformidade" e "autuações da ANPD" foram usados como isca para entrega de payloads ofuscados em 2024 e 2025.
Recomendações específicas para o contexto brasileiro:
- Implante Script Block Logging e Constrained Language Mode no PowerShell em todos os endpoints corporativos
- Configure proxies de inspeção HTTPS para extrair e analisar arquivos HTML em busca de blobs JavaScript suspeitos
- Monitore downloads de arquivos comprimidos protegidos por senha oriundos de webmail e redes sociais corporativas
- Integre análise de entropia no pipeline de triagem de artefatos em sandbox (Hybrid Analysis, Any.run)
## Threat Actors que Usam
- [[g0135-backdoordiplomacy|BackdoorDiplomacy]]
- [[g1039-redcurl|RedCurl]]
- [[g0106-rocke|Rocke]]
- [[g0093-gallium|GALLIUM]]
- [[g0084-gallmaker|Gallmaker]]
- [[g0063-blackoasis|BlackOasis]]
- [[g0022-apt3|APT3]]
- [[g0099-blind-eagle-apt-c-36|APT-C-36]]
- [[g0112-windshift|Windshift]]
- [[g0004-apt15|Ke3chang]]
## Software Associado
- [[s0633-sliver|Sliver]] (ferramenta)
- [[s0446-ryuk|Ryuk]] (malware)
- [[s1066-darktortilla|DarkTortilla]] (malware)
- [[s0447-lokibot|Lokibot]] (malware)
- [[s1064-svcready|SVCReady]] (malware)
- [[s0393-powerstallion|PowerStallion]] (malware)
- [[s0242-synack|SynAck]] (malware)
- [[s1025-amadey|Amadey]] (malware)
- [[s0518-polyglotduke|PolyglotDuke]] (malware)
- [[s1149-chimneysweep|CHIMNEYSWEEP]] (malware)
- [[s0531-grandoreiro|Grandoreiro]] (malware)
- [[s1087-asyncrat|AsyncRAT]] (malware)
## Referências
- MITRE ATT&CK Navigator - Defense Evasion tactic overview
- ESET - "Latin Américan banking trojans obfuscation techniques" (2024)
- Kaspersky LATAM - "Blind Eagle campaigns targeting Brazil" (2025)
- Microsoft MSTIC - "HTML Smuggling surges in enterprise malware delivery" (2022)
- RedCanary - "Detecting PowerShell obfuscation" (2023)
---
*Fonte: MITRE ATT&CK - T1027*