# Operation GhostMail ## Visão Geral **Operation GhostMail** e uma campanha de ciberespionagem de alto impacto atribuida ao [[g0007-apt28|APT28]] (Fancy Bear, GRU 85o Centro Principal de Servicos Especiais da Russia), identificada pela Seqrite Labs em marco de 2026. A campanha explorou a [[cve-2025-66376|CVE-2025-66376]] - uma vulnerabilidade de Cross-Site Scripting (XSS) armazenado na interface Classic UI do Zimbra Collaboration (CVSS 7.2) - para comprometer agencias governamentais ucranianas envolvidas em infraestrutura critica. O que torna o **GhostMail** excepcional entre campanhas de espionagem e sua natureza completamente **sem clique (zero-click)**: o payload malicioso e executado automaticamente quando a vitima simplesmente **visualiza** o email no Zimbra, sem necessidade de clicar em links, abrir anexos ou executar macros. O JavaScript obfuscado era embutido diretamente no corpo HTML do email - invisivel para filtros de email convencionais, registrando zero deteccoes no VirusTotal mais de um mes após o ataque. O objetivo da operação nao era destruicao, mas **presenca fantasma persistente**: após execução, o payload habilitava IMAP silenciosamente, criava uma senha específica de aplicativo chamada "ZimbraWeb" que sobrevive a resets de senha, e exportava 90 dias de historico de email - tudo sem alertar o usuario ou qualquer sistema de segurança convencional. A CISA adicionou a [[cve-2025-66376|CVE-2025-66376]] ao catalogo KEV em 18 de marco de 2026, com prazo de remediacao federal até 1o de abril de 2026. **Motivacao:** Espionagem de Estado - coleta de inteligência sobre infraestrutura critica ucraniana (hidrologia/aguas) durante conflito em curso. **Relevância LATAM/Brasil:** Impacto direto nulo na América Latina. A relevância e doutrinaria: a técnica de embedding de JavaScript malicioso no corpo HTML de emails - sem anexos ou links - e exportavel para qualquer webmail vulnerável. Organizacoes brasileiras que utilizam Zimbra (amplamente adotado no setor público e em universidades) devem tratar o GhostMail como templaté de ataque aplicavel ao contexto nacional. ```mermaid graph TB A["🎯 Email de Phishing<br/>Solicitacao de estagio em ucraniano"] --> B["🔍 Visualizacao no Zimbra Classic UI<br/>Zero-click: sem link nem anexo"] B --> C["💉 Execução de JavaScript<br/>CSS @import bypass - CVE-2025-66376"] C --> D["🔓 Escape do iframe<br/>Acesso a cookies e localStorage"] D --> E["⚡ 9 tarefas paralelas de coleta<br/>Tokens, 2FA, emails, dispositivos"] E --> F["📤 Exfiltração Dual-Channel<br/>HTTPS + DNS tunneling"] F --> G["👻 Acesso Persistente<br/>Senha ZimbraWeb + IMAP habilitado"] classDef initial fill:#2a1a4a,color:#ccaaff,stroke:#8e44ad classDef exploit fill:#3a1a1a,color:#ff9999,stroke:#e74c3c classDef impact fill:#1a3a1a,color:#aaffaa,stroke:#27ae60 class A,B initial class C,D,E exploit class F,G impact ``` ## Cronologia | Data | Evento | |------|--------| | 20/01/2026 | Registro do dominio C2 `zimbrasoft[.]com[.]ua` - dois dias antes do ataque | | 22/01/2026 | Email de phishing entregue na Agencia Estatal de Hidrologia da Ucrania; payload executado automaticamente | | 22/01/2026 | Coleta de 90 dias de emails, credenciais, tokens de sessao, códigos 2FA e dados de dispositivos | | 22/01/2026 | Criação de senha "ZimbraWeb" e habilitacao de IMAP - acesso persistente estabelecido | | 26/02/2026 | Email malicioso submetido ao VirusTotal; registra zero deteccoes de todos os motores AV | | Mar 2026 | Seqrite Labs identifica e analisa a campanha | | 18/03/2026 | CISA adiciona [[cve-2025-66376\|CVE-2025-66376]] ao catalogo KEV; prazo federal: 01/04/2026 | | 19/03/2026 | Seqrite Labs pública análise completa; Security Affairs e The Hacker News repercutem | | 20/03/2026 | CERT-UA notificado sobre a campanha | ## Attack Flow A singularidade técnica do GhostMail reside na **ausência total de artefatos de ataque tradicionais**. O ataque foi entregue em email puramente HTML, sem anexos, sem links externos e sem macros: 1. **Acesso inicial via engenharia social:** Email escrito em ucraniano, simulando solicitacao de estagio de um suposto estudante do quarto ano da Academia Nacional de Assuntos Internos (NAVS). O remetente era uma caixa de email academica comprometida, conferindo aparencia de legitimidade. 2. **Exploração via [[cve-2025-66376|CVE-2025-66376]]:** O corpo HTML do email continha um bloco `<div display:none>` com payload JavaScript obfuscado em Base64 + XOR (chave: `twichcba5e`). A vulnerabilidade permitia que diretivas CSS `@import` fragmentassem nomes de tags de forma a enganar o filtro AntiSamy do Zimbra, enquanto o browser reconstruia e executava o payload corretamente. 3. **Estagio 1 - Loader:** O JavaScript verificava se já estava rodando (evitando reinfecção duplicada), decodificava o payload e escapava do iframe do webmail para o documento principal - ganhando acesso completo a cookies, localStorage e direitos de chamada SOAP API da sessao autenticada. 4. **Estagio 2 - Stealer com 9 tarefas paralelas:** - Roubo de `ZMBAuthToken` (token de sessao principal) e token CSRF - Exfiltração de códigos de recuperacao 2FA via `GetScratchCodesRequest` - Coleta de senhas salvas no navegador via autofill intercept - Export de 90 dias de emails via endpoint Zimbra `/home/~/?fmt=tgz` - Listagem de dispositivos ActiveSync conectados via `GetDeviceStatusRequest` - Enumeracao de consumidores OAuth via `GetOAuthConsumersRequest` - Dump de configuração do servidor Zimbra como `zimbra_batch_analytics.json` - Criação de senha específica "ZimbraWeb" via `CreateAppSpecificPasswordRequest` - Habilitacao silenciosa de IMAP (`zimbraPrefImapEnabled: TRUE`) 5. **Exfiltração dual-channel:** Payloads grandes enviados via HTTPS POST para `/v/d` e `/v/p` no C2; dados menores tunelados via DNS em chunks Base32 - garantindo exfiltração mesmo se um dos canais for bloqueado. 6. **Persistência "fantasma":** Com a senha "ZimbraWeb" e IMAP habilitado, os atacantes mantinham acesso continuo ao conteudo da caixa de email mesmo após reset de senha pelo usuario. ## TTPs Utilizadas (Mapa ATT&CK) | Tática | Técnica | ID | Observacao na Campanha | |--------|---------|-----|------------------------| | Initial Access | Exploit Public-Facing Application | [[t1190-exploit-public-facing-application\|T1190]] | Exploração de [[cve-2025-66376\|CVE-2025-66376]] no Zimbra Classic UI via email | | Initial Access | Phishing: Spearphishing Attachment | [[t1566-001-spearphishing-attachment\|T1566.001]] | Email HTML com payload embutido; nenhum anexo ou link externo necessário | | Execution | JavaScript | [[t1059-007-javascript\|T1059.007]] | JavaScript browser-resident executa em dois estagios dentro da sessao do webmail | | Persistence | Account Manipulation: Additional Cloud Credentials | [[t1098-001-additional-cloud-credentials\|T1098.001]] | Criação de senha "ZimbraWeb" via `CreateAppSpecificPasswordRequest` - sobrevive a reset | | Defense Evasion | Valid Accounts | [[t1078-valid-accounts\|T1078]] | Uso de tokens de sessao roubados para autenticação como usuario legitimo | | Credential Access | Steal Web Session Cookie | [[t1539-steal-web-session-cookie\|T1539]] | Roubo de `ZMBAuthToken` e token CSRF do localStorage | | Credential Access | Multi-Factor Authentication Interception | [[t1111-mfa-interception\|T1111]] | Roubo de códigos de recuperacao 2FA via SOAP API Zimbra | | Collection | Browser Session Hijacking | [[t1185-browser-session-hijacking\|T1185]] | Escape do iframe para acesso ao documento principal e sessao autenticada | | Collection | Email Collection: Remote | [[t1114-002-email-collection-remote\|T1114.002]] | Export de 90 dias de historico de email via endpoint Zimbra | | Discovery | Peripheral Device Discovery | [[t1120-peripheral-device-discovery\|T1120]] | Listagem de dispositivos ActiveSync via `GetDeviceStatusRequest` | | Exfiltration | Exfiltration Over C2 Channel | [[t1041-exfiltration-over-c2\|T1041]] | HTTPS POST + DNS tunneling (Base32) para C2 `zimbrasoft[.]com[.]ua` | | Command and Control | DNS | [[t1071-004-dns\|T1071.004]] | Exfiltração de dados menores via DNS tunneling como canal alternativo | ## Malware e Ferramentas - [[spypress-zimbra|SpyPress.ZIMBRA]] - stealer JavaScript browser-resident; 9 tarefas paralelas de coleta; sem escrita em disco; mecanismo de deduplicacao integrado - **Variantes historicas SpyPress:** SpyPress.ROUNDCUBE, SpyPress.MDAEMON, SpyPress.HORDE - mesma familia, diferentes plataformas de webmail; documentado em Operation RoundPress (2024) ## Vitimas e Alvos **Agencias identificadas:** - **Agencia Estatal de Hidrologia da Ucrania** - ministerio de infraestrutura; responsavel por monitoramento de recursos hidricos nacionais (infraestrutura critica) - **Agencia maritima nacional** (segunda vitima) - comprometida em 22 de janeiro de 2026 via email de estudante comprometido **Contexto geopolitico:** O targeting de agencias de hidrologia e infraestrutura hidrica durante conflito armado ativo sugere interesse de inteligência sobre recursos estratégicos. O [[g0007-apt28|APT28]] tem historico documentado de targeting de infraestrutura ucraniana e europeia alinhado com objetivos estratégicos do GRU russo. ## Análise Técnica - CVE-2025-66376 A vulnerabilidade [[cve-2025-66376|CVE-2025-66376]] e uma XSS armazenada no Zimbra Classic UI causada por sanitizacao insuficiente de diretivas CSS `@import` em conteudo HTML de emails. O bypass funcionava da seguinte forma: - O filtro AntiSamy do Zimbra bloqueava elementos `<script>` e manipuladores de eventos diretos - Mas diretivas `@import` dentro de blocos CSS podiam ser usadas para fragmentar nomes de tags de uma forma que **enganava o filtro** mas era corretamente reconstruida e executada pelo browser - O resultado: um elemento SVG com manipulador `onload` que parecia quebrado para o filtro mas executava normalmente no navegador - O payload Base64 + XOR permanecia invisivel para análise estática; zero deteccoes no VirusTotal após mais de um mes do ataque **Versoes afetadas:** Zimbra Collaboration 10.0.x e 10.1.x **Versoes corrigidas:** ZCS 10.1.13 e 10.0.18 (novembro de 2025) ## Impacto LATAM A campanha GhostMail nao tem vitimas confirmadas na América Latina, mas sua relevância para a regiao e técnica e doutrinaria: - O **Zimbra Collaboration** e amplamente adotado em universidades, orgaos públicos estaduais e municipais brasileiros e em infraestrutura governamental de varios paises LATAM - frequentemente em versoes desatualizadas - A técnica de **JavaScript embutido em CSS** para bypass de filtros de email e exploravel em qualquer webmail com sanitizacao insuficiente de HTML, nao apenas Zimbra - O modelo de **"presenca fantasma"** - persistência que sobrevive a resets de senha via senhas específicas de aplicativo - e applicavel a múltiplas plataformas de webmail e colaboracao - Organizacoes brasileiras com Zimbra nao atualizado para 10.1.13 / 10.0.18 devem considerar-se potencialmente vulneraveis a ataques analogos **Acao imediata para ambientes brasileiros:** auditar todas as contas Zimbra por senhas específicas de aplicativo nao autorizadas (especialmente "ZimbraWeb"), monitorar chamadas SOAP `GetScratchCodesRequest` e `CreateAppSpecificPasswordRequest`, e atualizar imediatamente para versoes corrigidas. ## Indicadores de Comprometimento > [!ioc]- IOCs - Operation GhostMail (TLP:GREEN) > Fonte: Seqrite Labs, marco 2026. Substituir `[.]` por `.` para uso operacional. > > **Dominios C2 (Defanged)** > - `zimbrasoft[.]com[.]ua` - dominio principal C2, registrado 20/01/2026 > - `js-l1wt597cimk.i.zimbrasoft[.]com[.]ua` - subdominio gerado dinâmicamente > - `js-26tik3egye4.i.zimbrasoft[.]com[.]ua` - subdominio gerado dinâmicamente > > **Endpoints C2** > - `/v/d` - HTTPS POST para exfiltração de payloads grandes > - `/v/p` - HTTPS POST canal alternativo de exfiltração > > **Chave de Criptografia** > - XOR com chave `twichcba5e` (payload JavaScript Base64+XOR no corpo do email) > > **Padroes de Comportamento no Host (Behavioral IoCs)** > - Senha específica de aplicativo chamada "ZimbraWeb" em contas Zimbra > - IMAP habilitado em contas que nao usam IMAP (`zimbraPrefImapEnabled: TRUE`) > - Chamadas SOAP anomalas: `GetScratchCodesRequest`, `CreateAppSpecificPasswordRequest`, `GetOAuthConsumersRequest` > - Arquivo `zimbra_batch_analytics.json` gerado fora do processo normal > - Exfiltração de 90 dias de historico via endpoint Zimbra `/home/~/?fmt=tgz` > > **DNS Tunneling** > - Exfiltração de dados menores via DNS em chunks Base32 para subdomínios de `zimbrasoft[.]com[.]ua` ## Mitigação - Atualizar Zimbra Collaboration imediatamente para versoes 10.1.13 ou 10.0.18 (ou superior) - Auditar **todas** as contas por senhas específicas de aplicativo nao autorizadas e revogar imediatamente as chamadas "ZimbraWeb" - Monitorar chamadas SOAP API: `GetScratchCodesRequest` e `CreateAppSpecificPasswordRequest` sao raramente vistas em uso normal e devem disparar alertas - Desativar acesso IMAP/POP3 para contas sem necessidade de negocio justificada - Implementar filtragem DNS contra dominios C2 identificados (`zimbrasoft[.]com[.]ua` e subdomínios) - Implantar monitoramento de sessao para detecção de acesso anomalo via tokens (mesmo sem nova autenticação) - Treinar equipes de segurança para inspecionar **estrutura HTML de emails** - nao apenas links e anexos - Bloquear Classic UI do Zimbra onde possível; migrar para versoes modernas do frontend **Atores:** [[g0007-apt28|APT28]] (Fancy Bear / STRONTIUM / Sednit / UAC-0001) **TTPs chave:** [[t1190-exploit-public-facing-application|T1190]] · [[t1059-007-javascript|T1059.007]] · [[t1185-browser-session-hijacking|T1185]] · [[t1539-steal-web-session-cookie|T1539]] · [[t1114-002-email-collection-remote|T1114.002]] **CVE explorada:** [[cve-2025-66376|CVE-2025-66376]] **Malware:** [[spypress-zimbra|SpyPress.ZIMBRA]] **Setores impactados:** [[government]] · [[critical-infrastructure]] **Campanhas relacionadas:** [[operation-roundpress|Operation RoundPress]] (APT28, 2024) --- *Fonte: [Seqrite Labs - Operation GhostMail Analysis](https://www.seqrite.com/blog/operation-ghostmail-russian-apt-exploits-zimbra-xss/) (Mar 2026)* *Fonte: [Security Affairs - Russian APT targets Ukraine via Zimbra XSS CVE-2025-66376](https://securityaffairs.com/189673/security/russian-apt-targets-ukraine-via-zimbra-xss-flaw-CVE-2025-66376.html) (Mar 2026)* *Fonte: [VPN Central - Operation GhostMail](https://vpncentral.com/russian-apt-exploits-zimbra-flaw-to-spy-on-ukrainian-agency-in-stealthy-operation-ghostmail/) (Mar 2026)* *Fonte: [SecPod - Operation GhostMail MITRE ATT&CK Analysis](https://www.secpod.com/blog/operation-ghostmail-analysis-of-russian-apt-exploitation-of-zimbra-xss/) (Mar 2026)* *Fonte: [Gblock - Russia Military Hackers Hid Attack Inside CSS Rule](https://www.gblock.app/articles/operation-ghostmail-zimbra-email-apt28) (Mar 2026)* *Fonte: [CISA KEV - CVE-2025-66376](https://www.cisa.gov/known-exploited-vulnerabilities-catalog) (18 Mar 2026)*