# T1027.002 - Software Packing ## Técnica Pai Esta é uma sub-técnica de [[t1027-obfuscated-files|T1027 - T1027 - Obfuscated Files or Information]]. ## Descrição **Software Packing** é uma subtécnica de [[t1027-obfuscated-files-or-information|T1027 - Obfuscated Files or Information]] na qual adversários comprimem, cifram ou virtualizam código executável com o objetivo de modificar a assinatura do binário e dificultar a detecção por soluções de segurança baseadas em assinatura. Utilitários como UPX (Ultimaté Packer for eXecutables) e MPRESS são os exemplos mais conhecidos e amplamente utilizados tanto por desenvolvedores legítimos quanto por atores maliciosos. No contexto ofensivo, o packing é quase sempre uma camada de [[t1562-impair-defenses|evasão de defesas]], e não o payload final. O processo de descompressão ocorre geralmente em memória durante a execução, o que significa que o código malicioso real nunca é gravado em disco em sua forma original - dificultando análise estática. Uma variante mais sofisticada é a **proteção por máquina virtual (VM)**: o código original é traduzido para um bytecode proprietário que só pode ser executado por uma VM embutida no binário. Ferramentas como Themida, VMProtect e Enigma Protector implementam essa abordagem, tornando a engenharia reversa extremamente custosa. Adversários frequentemente combinam packing com outras técnicas de evasão: múltiplas camadas de packing (packing aninhado), uso de packers customizados que não deixam artefatos de packers conhecidos, e integração com técnicas de [[t1055-process-injection|Process Injection]] para descomprimir e executar o payload diretamente em processos legítimos do sistema operacional. **Contexto Brasil/LATAM:** O ecossistema de malware bancário brasileiro é um dos mais prolíficos do mundo no uso de software packing. Trojans bancários como [[s0531-grandoreiro|Grandoreiro]], Guildma e Javali - desenvolvidos localmente e distribuídos principalmente no Brasil e em outros países latino-americanos - fazem uso extensivo de múltiplas camadas de packing para evadir antivírus. O [[ta505|TA505]], grupo com histórico de ataques a instituições financeiras brasileiras, empregou [[s0447-lokibot|Lokibot]] com packing personalizado em campanhas direcionadas à região. A indústria de malware-as-a-service no Brasil frequentemente oferece ferramentas pré-empacotadas como diferencial competitivo nos fóruns underground locais. ## Attack Flow ```mermaid graph TB A[Desenvolvimento<br/>do Payload] --> B[Aplicação<br/>de Packer] B --> C{T1027.002\nSoftware Packing}:::highlight C --> D[Entrega ao<br/>Alvo] D --> E[Execução em<br/>Memória] classDef highlight fill:#e74c3c,color:#fff ``` ## Como Funciona ### 1. Preparação - Seleção e Aplicação do Packer O adversário compila o malware e seleciona um packer adequado ao objetivo: UPX para compressão simples e rápida, ou packers customizados para maior evasão. O binário original é processado pelo packer, que gera um novo executável contendo o código original cifrado/comprimido e uma rotina de descompressão (stub). O hash e a assinatura do arquivo resultante são completamente diferentes do original. ### 2. Execução - Descompressão em Memória Quando executado, o stub do packer aloca memória, decifra/descomprime o payload original e o transfere para a área alocada. Em seguida, redireciona a execução para o ponto de entrada do código original na memória. Todo esse processo ocorre sem que o payload real sejá gravado em disco, contornando verificações de assinatura estática de antivírus e soluções de [[Antimalware]]. ### 3. Pós-execução - Operação Furtiva Com o payload em execução na memória, o adversário prossegue com os objetivos da operação - coleta de credenciais, exfiltração de dados, [[t1018-remote-system-discovery|reconhecimento da rede]], instalação de persistência. Soluções de EDR comportamental têm maior capacidade de detectar o payload em memória, razão pela qual atacantes avançados combinam packing com [[t1055-process-injection|injeção em processos legítimos]] para reduzir a superfície de detecção. ## Detecção **Event IDs relevantes (Windows):** | Event ID | Fonte | O que monitora | |----------|-------|----------------| | 4688 | Security | Criação de processo - linha de comando e hash do executável | | 8 | Sysmon | CreateRemoteThread - indicador de injeção após descompressão | | 7 | Sysmon | ImageLoaded - DLLs carregadas por processo suspeito | | 10 | Sysmon | ProcessAccess - acesso a memória de outros processos | | 1 | Sysmon | ProcessCreaté - processo filho inesperado após execução de binário | **Sigma Rule - Detecção de Binário com Características de Packing:** ```yaml title: Possível Execução de Binário Empacotado com UPX id: b2c5d4e3-2f6a-4b9c-8d1e-4g7h8i9j0k1l status: experimental description: > Detecta execução de binários com características típicas de packers como UPX - cabeçalho modificado ou seções de PE anômalas. Combinar com análise de entropia para reduzir falsos positivos. author: RunkIntel daté: 2026-03-24 logsource: category: process_creation product: windows detection: selection_pe_sections: # Binários UPX têm seções nomeadas UPX0, UPX1 Image|contains: - 'UPX' selection_suspicious_path: Image|startswith: - 'C:\Users\Public\' - 'C:\ProgramData\' - 'C:\Windows\Temp\' CommandLine|contains: - '-d' # UPX decompress flag condition: selection_pe_sections or selection_suspicious_path falsepositives: - Aplicativos legítimos empacotados com UPX (alguns instaladores) - Ferramentas de desenvolvimento que usam compressão level: medium tags: - attack.defense_evasion - attack.t1027.002 ``` ## Mitigação | Controle | Mitigação | Aplicação Prática para Organizações Brasileiras | |----------|-----------|------------------------------------------------| | [[Antimalware]] | Detecção baseada em comportamento e heurística | Priorizar soluções com análise de entropia e unpacking automático - essencial dado o volume de malware bancário brasileiro | | Análise de Entropia | Alta entropia indica packing/criptografia | Implementar regras YARA com limiar de entropia para identificar binários suspeitos antes da execução | | Sandboxing Dinâmico | Executar em ambiente isolado para revelar payload real | Ferramentas como Hybrid Analysis ou Cuckoo Sandbox descomprimem e analisam o binário original em runtime | | EDR Comportamental | Detectar comportamento pós-unpack | Monitorar alocações de memória executável, writes em regiões RWX e redirecionamentos de execução característicos de stubs de packer | | Bloqueio de Execução em Paths Temporários | Impedir execução em %TEMP%, %APPDATA% | Muitos packers extraem e executam o payload em diretórios temporários - bloquear execução nesses locais reduz significativamente a superfície | ## Threat Actors - [[g0089-the-white-company|The White Company]] - Grupo com histórico de uso de payloads altamente evasivos com múltiplas camadas de packing em operações de espionagem - [[g1018-ta2541|TA2541]] - Grupo financeiramente motivado que utiliza packing em campanhas de malware distribuído via phishing na aviação e transporte - [[g0096-apt41|APT41]] - APT chinês com dupla missão (espionagem + crime); emprega packing sofisticado para manter persistência prolongada - [[g0070-dark-caracal|Dark Caracal]] - Grupo com foco em vigilância; utiliza [[s0543-spark|Spark]] e outros malwares empacotados em campanhas de espionagem no Oriente Médio - [[g1007-aoqin-dragon|Aoqin Dragon]] - Grupo de espionagem com longa atividade na Ásia; emprega packing em malwares de acesso inicial - [[g1019-moustachedbouncer|MoustachedBouncer]] - Grupo que utiliza interceptação de rede e malware empacotado em operações de vigilância direcionadas - [[g0087-apt39|APT39]] - APT iraniano com foco em telecomúnicações; usa packing para manter baixo perfil durante campanhas de coleta de dados - [[ta505|TA505]] - Grupo criminoso com histórico de campanhas no Brasil usando [[s0447-lokibot|Lokibot]] e [[cuba|Cuba]] em versões empacotadas - [[g1017-volt-typhoon|Volt Typhoon]] - APT chinês com foco em infraestrutura crítica; usa [[s0588-goldmax|GoldMax]] com packing avançado para evasão de longo prazo - [[g0093-gallium|GALLIUM]] - Grupo com foco em telecomúnicações; emprega [[s0020-china-chopper|China Chopper]] em versões modificadas/empacotadas ## Software Associado - [[s0588-goldmax|GoldMax]] - Backdoor utilizado pelo [[g1017-volt-typhoon|Volt Typhoon]] com packing customizado para evadir detecção em alvos de infraestrutura crítica - [[s0447-lokibot|Lokibot]] - Infostealer amplamente distribuído no Brasil e LATAM em versões empacotadas; especializado em coleta de credenciais - [[cuba|Cuba]] - Ransomware que emprega packing para evadir soluções de segurança durante a fase de implantação - [[s0257-vermin|VERMIN]] - RAT utilizado em operações de espionagem com técnicas de packing para dificultar análise forense - [[s0020-china-chopper|China Chopper]] - Web shell modular frequentemente ofuscado e empacotado para persistência em servidores comprometidos - [[s1130-raspberry-robin|Raspberry Robin]] - Worm distribuído via USB com múltiplas camadas de ofuscação e packing para evasão - [[s0565-raindrop|Raindrop]] - Loader utilizado na cadeia de ataque SolarWinds com packing personalizado de alto nível - [[s1196-troll-stealer|Troll Stealer]] - Infostealer com packing avançado utilizado em campanhas de espionagem direcionadas - [[s0022-uroburos|Uroburos]] - Rootkit sofisticado do grupo Turla com proteção de código por VM e múltiplas camadas de packing - [[s0543-spark|Spark]] - Backdoor utilizado pelo [[g0070-dark-caracal|Dark Caracal]] com packing para evasão em campanhas de vigilância --- *Fonte: [MITRE ATT&CK - T1027.002](https://attack.mitre.org/techniques/T1027/002)*