# T1036.006 - Space after Filename ## Descrição **Space after Filename** é uma subtécnica de [[t1036-masquerading|T1036 - Masquerading]] na qual adversários adicionam um ou mais espaços ao final do nome de um arquivo para alterar como o sistema operacional processa e executa aquele arquivo. A técnica explora uma característica específica do macOS (e, em menor grau, do Linux) onde o tipo real do arquivo é determinado pelo SO com base na estrutura interna do arquivo (magic bytes), não pela extensão - desde que um espaço sejá adicionado ao final do nome. O mecanismo é engenhosamente simples: no macOS, um arquivo nomeado `relatorio.pdf` é aberto pelo Preview.app (ou Adobe Reader). Se renomeado para `relatorio.txt`, é aberto pelo TextEdit. Porém, se nomeado `relatorio.txt ` (com espaço ao final), o macOS ignora a extensão aparente, inspeciona os magic bytes do arquivo, identifica que é um binário Mach-O e o **executa** diretamente - da mesma forma que executaria `relatorio.bin`. Para o usuário, o arquivo parece ser um PDF ou TXT inofensivo, mas ao ser clicado, executa um binário. Esta técnica tem **alto potencial de engano em ataques de engenharia social**, pois: 1. O nome do arquivo exibido no Finder/explorador de arquivos parece ser um documento 2. O ícone pode ser substituído para imitar um PDF, Word ou imagem 3. O espaço ao final é práticamente invisível na maioria das interfaces gráficas 4. Antivírus que classificam ameaças pela extensão do arquivo são enganados > **Técnica pai:** [[t1036-masquerading|T1036 - Masquerading]] > **Tática:** [[_defense-evasion|Defense Evasion]] > **Técnicas relacionadas:** [[t1204-002-malicious-file|T1204.002 - Malicious File]], [[t1036-001-invalid-code-signature|T1036.001]], [[t1553-001-gatekeeper-bypass|T1553.001 - Gatekeeper Bypass]] --- ## Como Funciona ### Mecanismo Técnico no macOS O macOS usa um sistema de **Uniform Type Identifiers (UTIs)** e **Launch Services** para determinar qual aplicativo abre um arquivo. Normalmente, essa determinação leva em conta: 1. A extensão do arquivo (`.pdf`, `.txt`, `.app`) 2. Os magic bytes (primeiros bytes do conteúdo do arquivo) 3. Metadados de criador armazenados nos atributos estendidos Quando um arquivo tem um espaço ao final do nome (`arquivo.txt `), o macOS não consegue mapear corretamente a extensão para um UTI, pois `txt ` (com espaço) não é uma extensão registrada. Neste caso, o sistema recorre à inspeção dos magic bytes. Se os bytes iniciais indicam um binário Mach-O (`\xcf\xfa\xed\xfe` para 64-bit), o Launch Services trata o arquivo como executável e o entrega ao Terminal.app ou o executa diretamente. ### Aplicabilidade em Linux Em Linux, a técnica é menos automática - o comportamento depende do gerenciador de arquivos usado (Nautilus, Dolphin, Thunar) e de suas configurações. Alguns gerenciadores de arquivos do Linux seguem lógica similar ao macOS de inspecionar conteúdo ao invés de extensão quando há ambiguidade no nome do arquivo. Em ambientes de linha de comando, o espaço no nome do arquivo requer escape (`arquivo.txt\ `) e tem menor impacto de engano. ### Customização com Ícone Para maximizar o engano, adversários frequentemente combinam esta técnica com substituição de ícone. No macOS, o ícone de um arquivo pode ser trocado via "Get Info" (Cmd+I) ou programaticamente. Um binário malicioso com nome `contrato_assinado.pdf ` e ícone de PDF tem altíssimo potencial de enganar usuários. ### Considerações sobre .app A subtécnica **não funciona com extensão `.app`** no macOS. Pacotes `.app ` (com espaço) não são reconhecidos como bundles de aplicativo pelo sistema. A técnica se aplica principalmente a extensões de documentos comuns: `.pdf`, `.txt`, `.docx`, `.xlsx`, `.jpg`, `.png`. --- ## Attack Flow ```mermaid graph TB A["🎯 Preparação do Payload<br/>Binário Mach-O ou ELF malicioso<br/>compilado para o alvo"] --> B B["🎭 Mascaramento<br/>Arquivo renomeado: evil.bin<br/>→ contrato_assinado.pdf ESPAÇO<br/>Ícone substituído por PDF/Word"] --> C C["📧 Entrega<br/>Phishing via e-mail, Slack, Teams<br/>Download via watering hole<br/>Compartilhamento via nuvem (Drive, iCloud)"] --> D D["👆 Execução pelo Usuário<br/>Usuário vê arquivo aparentemente inofensivo<br/>Clica duas vezes - espera abrir o documento"] --> E E{"macOS identifica<br/>tipo real do arquivo"} E -->|"Magic bytes = Mach-O<br/>Extensão ignorada com espaço"| F E -->|"AV inspeciona extensão .pdf<br/>Não detecta binário"| F F["⚡ Execução Silenciosa<br/>Terminal.app executa o binário<br/>Sem prompt de confirmação adicional<br/>Gatekeeper pode ser contornado"] --> G G["🔐 Persistência<br/>LaunchAgent instalado<br/>Keychain acessado<br/>Backdoor estabelecido"] --> H H["🌐 C2 / Próxima fase<br/>Beacon para C2<br/>Coleta de credenciais<br/>Movimentação lateral"] style A fill:#8e44ad,color:#fff style B fill:#e67e22,color:#fff style C fill:#3498db,color:#fff style D fill:#e74c3c,color:#fff style F fill:#c0392b,color:#fff style G fill:#8e44ad,color:#fff style H fill:#2c3e50,color:#fff ``` --- ## Exemplos de Uso ### APT38 - Operações de Roubo Financeiro O [[g0082-apt38|APT38]], subgrupo do [[g0032-lazarus-group|Lazarus Group]] com foco em roubo financeiro a instituições bancárias, tem uso documentado de técnicas de mascaramento de arquivos em sistemas macOS. A técnica de espaço ao final do nome foi identificada como parte de operações de entrega de malware via phishing direcionado (spear phishing) contra funcionários de bancos e exchanges de criptomoedas. O APT38 tem histórico de operações contra o sistema SWIFT e alvos financeiros em múltiplos países, incluindo operações na América Latina. ### Keydnap - Backdoor macOS via Documento Falso O malware [[keydnap|Keydnap]] é um dos casos mais documentados de uso desta técnica. Distribuído como anexo comprimido em campanhas de phishing, o arquivo dentro do ZIP aparece com nome de documento (`.txt ` ou `.jpg `) mas é na verdade um binário Mach-O. Ao ser clicado pelo usuário, o Terminal.app executa o binário que instala um backdoor capaz de roubar senhas do Keychain do macOS. O Keydnap foi atribuído ao [[g0032-lazarus-group|Lazarus Group]] e observado principalmente em 2016, mas variantes modernas utilizam abordagem similar. ### Campanha OSX.Bundlore e Variantes Instaladores de adware macOS frequentemente usam técnicas de mascaramento similares. O [[s0482-bundlore|Bundlore]] e variantes de adware/malware macOS entregam binários disfarçados como instaladores de software legítimo, frequentemente usando nomes que imitam documentos ou ferramentas esperadas. Embora não usem exclusivamente espaço após o nome, a família de técnicas de mascaramento em macOS é central para sua operação. ### Cenário de Ataque Real - Contabilidade Empresarial Um vetor frequente observado em incidentes reais: o adversário envia e-mail com um arquivo ZIP anexado nomeado "boleto_fevereiro_2026.zip". Dentro do ZIP há um arquivo chamado "boleto_fevereiro_2026.pdf " (com espaço). O usuário, esperando um PDF, clica duas vezes - o macOS identifica o binário e o executa. Este vetor é particularmente efetivo contra profissionais de contabilidade e financeiros no Brasil, que frequentemente recebem boletos e documentos fiscais por e-mail. --- ## Detecção ### Estrategia Geral A detecção é desafiadora porque o espaço ao final do nome é visualmente imperceptível na maioria das interfaces. As melhores estrategias incluem: - **Auditoria de nomes de arquivo com trailing spaces** ao receber arquivos via e-mail, downloads ou compartilhamento - **Monitoramento de abertura de arquivos pelo Terminal.app** quando o usuário esperaria que um visualizador de documentos fosse aberto - **Análise de anexos de e-mail** por gateways de segurança que inspecionam magic bytes além da extensão - **EDR com monitoramento de processo de criação** para detectar Terminal.app sendo lançado a partir de um clique duplo em arquivo "de documento" ### Regra Sigma - macOS (Arquivo com Espaço ao Final Executado via Terminal) ```yaml title: macOS File with Trailing Space Executed via Terminal id: e1g7h665-2c58-8f6g-3h45-j9g2i1e67fg5 status: experimental description: Detecta execução via Terminal.app de arquivos cujo nome termina com espaço - indicativo de T1036.006 Space after Filename references: - https://attack.mitre.org/techniques/T1036/006/ - https://objective-see.org/blog/blog_0x4E.html author: RunkIntel daté: 2026-03-25 tags: - attack.defense_evasion - attack.t1036.006 - attack.t1204.002 logsource: category: process_creation product: macos detection: selection: ParentImage|endswith: - '/Terminal' - '/iTerm2' Image|endswith: ' ' condition: selection falsepositives: - Muito raros - nomes de arquivo com espaço ao final são altamente incomuns em uso legítimo level: high ``` ### Regra Sigma - Detecção via Hash de Arquivo Recebido ```yaml title: Email Attachment with Trailing Space in Filename id: f2h8i776-3d69-9g7h-4i56-k0h3j2f78gh6 status: experimental description: Detecta arquivos anexados por e-mail ou downloads com espaço ao final do nome - padrão de mascaramento T1036.006 references: - https://attack.mitre.org/techniques/T1036/006/ author: RunkIntel daté: 2026-03-25 tags: - attack.defense_evasion - attack.t1036.006 logsource: category: file_event product: macos detection: selection: TargetFilename|re: '.*\s+ TargetFilename|contains: - '.pdf ' - '.txt ' - '.doc ' - '.jpg ' - '.png ' condition: selection falsepositives: - Práticamente nenhum - trailing spaces em extensões de documento são anomalia level: high ``` ### Consulta osquery para Auditoria Periódica ```sql -- Detectar arquivos com trailing space em Downloads e Documentos SELECT path, filename, size, type FROM file WHERE ( path LIKE '/Users/%/Downloads/%' OR path LIKE '/Users/%/Documents/%' OR path LIKE '/tmp/%' ) AND filename LIKE '% ' AND type = 'regular'; ``` --- ## Mitigação | ID | Mitigação | Descrição | Prioridade | |----|-----------|-----------|------------| | - | Gateway de E-mail com Inspeção de Conteúdo | Configurar gateway de e-mail (Proofpoint, Mimecast, Microsoft Defender for Office) para inspecionar arquivos dentro de ZIPs e detectar nomes com trailing spaces. Bloquear ou quarentenar automaticamente. | Alta | | - | Treinamento de Conscientização | Treinar usuários macOS para desconfiar de arquivos recebidos por e-mail que devem ser abertos pelo Terminal.app ao invés de Preview/TextEdit. Incluir este vetor em simulações de phishing. | Alta | | - | EDR macOS com Monitoramento de Processo | Usar Jámf Protect, CrowdStrike Falcon ou SentinelOne com regras específicas para macOS. Detectar Terminal.app lançado como resultado de abertura de arquivo que deveria abrir app de documento. | Alta | | - | Gatekeeper e XProtect Atualizados | Manter macOS atualizado para garantir que XProtect e Gatekeeper têm as últimas assinaturas de malware macOS. Habilitar verificações de notarização obrigatória. | Média | | - | Quarentena em Downloads | Garantir que o atributo `com.apple.quarantine` é sempre aplicado a arquivos baixados. Investigar scripts que removem este atributo ([[t1564-014-extended-attributes\|T1564.014]]). | Média | | - | Política de Aplicativos Aprovados (BYOD) | Em ambientes corporativos com macOS, usar MDM (Jámf, Kandji) para restringir execução de binários não assinados. Bloquear execução de arquivos em diretórios de usuário sem assinatura válida da Apple. | Média | --- ## Contexto Brasil/LATAM ### Crescimento de Ataques a macOS Corporativo no Brasil O Brasil é o maior mercado de tecnologia da América Latina e possui crescente adoção de macOS em ambientes corporativos - especialmente em empresas de tecnologia, fintechs, agências de marketing, e escritórios executivos de grandes corporações. Esta expansão cria uma superfície de ataque crescente para técnicas macOS-específicas como T1036.006. Diferente de ambientes Windows - onde há maior maturidade em defesa de endpoint - ambientes macOS corporativos no Brasil frequentemente operam com menor cobertura de EDR. ### APT38 e o Sistema Financeiro Brasileiro O [[g0082-apt38|APT38]] tem histórico documentado de operações contra o sistema financeiro brasileiro. O grupo patrocinou o ataque ao Banco do Brasil via SWIFT em 2018 e mantém interesse ativo em instituições financeiras da América Latina. Técnicas de mascaramento de arquivo são consistentes com o perfil de TTPs do grupo ao visar funcionários bancários com acesso a sistemas SWIFT ou plataformas de trading. ### Phishing com Temática Fiscal e Tributária O contexto fiscal brasileiro - com alta frequência de boletos, NFes (Notas Fiscais Eletrônicas), DARF, e comúnicações da Receita Federal - cria pretextos ideais para entrega de arquivos maliciosos mascarados como documentos fiscais. Um arquivo nomeado `NF-e_123456_DANFE.pdf ` é altamente plausível no contexto de e-mails corporativos brasileiros. Esta combinação de técnica de mascaramento com engenharia social localizada representa uma ameaça concreta para empresas que processam grande volume de documentos fiscais. ### Resposta a Incidentes em macOS - Lacuna de Capacidade Equipes de DFIR (Digital Forensics and Incident Response) no Brasil têm capacidade historicamente menor para análise forense de macOS em comparação a Windows. Esta lacuna significa que ataques via T1036.006 podem permanecer não detectados por mais tempo em incidentes reais, dando ao adversário maior jánela de operação antes da contenção. Investimento em treinamento de DFIR macOS é uma necessidade crítica para o ecossistema de segurança brasileiro. --- ## Referências - [MITRE ATT&CK - T1036.006](https://attack.mitre.org/techniques/T1036/006/) - [MITRE ATT&CK - T1036 (Técnica Pai)](https://attack.mitre.org/techniques/T1036/) - [Objective-See - Keydnap Analysis](https://objective-see.org/blog/blog_0x1A.html) - [Apple - File System Basics (UTI)](https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/FileSystemOverview/FileSystemOverview.html) - [Jámf Protect - macOS Threat Detection](https://www.jámf.com/products/jámf-protect/) - [Patrick Wardle - Mac Malware of 2024](https://objective-see.org/malware.html) - [CERT.br - Campanha de Phishing com Temática Fiscal](https://www.cert.br/docs/) **Threat actors:** [[g0082-apt38|APT38]], [[g0032-lazarus-group|Lazarus Group]] **Malware associado:** [[keydnap|Keydnap]], [[s0482-bundlore|Bundlore]] **Técnicas relacionadas:** [[t1036-masquerading|T1036]], [[t1204-002-malicious-file|T1204.002]], [[t1566-002-spearphishing-link|T1566.002]], [[t1553-001-gatekeeper-bypass|T1553.001]], [[t1564-014-extended-attributes|T1564.014]], [[t1036-001-invalid-code-signature|T1036.001]] --- *Fonte: [MITRE ATT&CK - T1036.006](https://attack.mitre.org/techniques/T1036/006)*