# T1001.001 - Dados Lixo (Junk Data) ## Técnica Pai Esta é uma sub-técnica de [[t1001-data-obfuscation|T1001 - T1001 - Data Obfuscation]]. ## Descrição A técnica de **dados lixo** consiste na inserção deliberada de bytes sem significado funcional dentro do tráfego de comunicação entre um malware e sua infraestrutura de comando e controle (C2). O objetivo é tornar a inspeção e a decodificação do tráfego significativamente mais difícil para analistas e ferramentas de segurança automatizadas. Em vez de transmitir apenas os comandos e respostas reais, o agente malicioso intercala caracteres aleatórios, sequências repetitivas ou blocos preenchidos antes, no meio ou após os dados legítimos. Essa técnica se encaixa dentro da categoria mais ampla de [[t1001-data-obfuscation|T1001 - Ofuscação de Dados]], que engloba diferentes estrategias para disfarçar o tráfego C2. Com dados lixo, mesmo que uma solução de monitoramento identifique um padrão de comunicação suspeito, o payload real fica enterrado em meio ao ruído, dificultando análises rápidas baseadas em assinaturas fixas. Famílias como [[s0022-uroburos|Uroburos]] e [[s0574-bendybear|BendyBear]] são conhecidas por implementar variações dessa técnica em seus protocolos C2 proprietários. Outra variação comum é o preenchimento com caracteres específicos - como espaços, zeros ou strings que imitam headers HTTP legítimos - tornando o tráfego visualmente semelhante ao tráfego normal de aplicação. Quando combinada com [[t1573-encrypted-channel|T1573 - Encrypted Channel]], a presença de dados lixo adiciona mais uma camada de dificuldade analítica, pois o conteúdo cifrado impede até mesmo a identificação dos padrões de preenchimento sem a chave correta. **Contexto Brasil/LATAM:** Grupos como [[g0007-apt28|APT28]] utilizam essa técnica principalmente em operações de espionagem de longo prazo - exatamente o perfil de ameaça mais relevante para organizações governamentais, militares e do setor de energia no Brasil. Em ambientes com soluções de inspeção de tráfego de baixo custo ou sem monitoramento contínuo de anomalias de volume - cenário frequente em órgãos públicos brasileiros de médio porte - o tráfego obfuscado com dados lixo pode passar despercebido por semanas. O setor financeiro LATAM, que investe mais em segurança, está mais preparado, mas os dados lixo ainda são eficazes quando o malware opera dentro de faixas de volume de tráfego esperadas. ## Attack Flow ```mermaid graph TB A[Acesso Inicial] --> B[Implantação C2] B --> C[**T1001.001 Junk Data**] C --> D[T1573 Canal Cifrado] D --> E[Exfiltração / Execução] ``` ## Como Funciona **1. Preparação** O desenvolvedor do malware define um esquema de preenchimento - pode ser um offset fixo, um valor pseudoaleatório derivado de um seed, ou caracteres que simulam headers de protocolos legítimos (ex: HTTP/1.1, DNS). O esquema é codificado tanto no implante quanto no servidor C2 para que ambos saibam onde estão os dados reais. **2. Execução** A cada ciclo de comunicação C2, o implante gera ou recupera os dados de controle reais (comandos, resultados, arquivos), então aplica o esquema de preenchimento inserindo dados lixo em posições predefinidas. O pacote resultante é transmitido pelo canal C2 - que pode usar HTTP, DNS, ICMP ou protocolos customizados. **3. Pós-execução** O servidor C2 recebe o tráfego, aplica o processo inverso (stripping dos dados lixo com base no esquema compartilhado) e processa os dados legítimos. Do ponto de vista da rede, o tráfego observado tem volume irregular e padrões de bytes que não correspondem a protocolos conhecidos, dificultando análise heurística. **Exemplo:** ```bash # Artefato de detecção: tráfego HTTP com payload de tamanho irregular e entropia elevada # Em um PCAP, sequências como estas indicam possível junk data embedding: # POST /updaté HTTP/1.1 # Content-Length: 4096 # [bytes legítimos intercalados com sequências aleatórias de alta entropia] tcpdump -i eth0 -w capture.pcap 'tcp port 80 and (greater 1000)' # Analisar entropia do payload: # python3 -c "import math, sys; d=open('payload.bin','rb').read(); freq=[d.count(bytes([i]))/len(d) for i in range(256)]; print(-sum(p*math.log2(p) for p in freq if p))" ``` ## Detecção **Fontes de dados:** Logs de tráfego de rede (NetFlow, PCAP), IDS/IPS com análise de payload, SIEM com correlação de anomalias de volume, análise de entropia em proxies de inspeção SSL. ```yaml title: Junk Data C2 Obfuscation Detection id: a3f7c812-9e4b-4d21-bc6a-7f8e1d305a22 status: experimental description: Detecta possível inserção de dados lixo em tráfego C2 via análise de entropia e tamanho irregular de payload HTTP logsource: category: proxy product: windows detection: selection: cs-method: POST sc-status: 200 cs-bytes|gte: 2048 filter_known_apps: cs-host|contains: - 'windowsupdaté.com' - 'microsoft.com' - 'akamai.net' condition: selection and not filter_known_apps falsepositives: - Uploads legítimos de arquivos grandes - Telemetria corporativa de alto volume level: medium tags: - attack.command_and_control - attack.t1001.001 ``` ## Mitigação | Mitigação | Recomendação Prática | |-----------|---------------------| | [[m1031-network-intrusion-prevention\|M1031 - Network Intrusion Prevention]] | Implementar inspeção profunda de pacotes (DPI) com análise de entropia de payload; configurar alertas para tráfego HTTP/HTTPS com distribuição de bytes anômala em destinos não categorizados | ## Referências *Fonte: [MITRE ATT&CK - T1001.001](https://attack.mitre.org/techniques/T1001/001)*