Pesquisa de Ameaças Cato CTRL: Foxveil – Novo Carregador de Malware que Abusa da Infraestrutura de Cloudflare, Discord e Netlify
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumo
Foxveil é um carregador de malware de estágio inicial recentemente identificado, visto pela primeira vez em agosto de 2025. Ele extrai shellcode gerado pelo Donut de superfícies de hospedagem “confiáveis”—Cloudflare Pages, Netlify e anexos do Discord—e depois o executa através de técnicas de injeção de processo. Para persistência, o carregador registra um serviço do Windows ou tenta alterar as configurações do Microsoft Defender. Entre as variantes observadas, as principais diferenças são a fonte de preparação, a abordagem de injeção e o método de persistência.
Investigação
Os pesquisadores da Cato analisaram duas variantes do Foxveil e documentaram o fluxo de ponta-a-ponta: recuperação do shellcode, injeção via Early Bird APC (ou auto-injeção direta), e persistência através de um serviço chamado AarSvc. Foram observados artefatos descartados em C:WindowsSysWOW64 usando nomes de arquivos mascarados para se misturar com componentes legítimos. O carregador também inclui lógica de mutação de string que reescreve termos de alta detecção para reduzir detecções estáticas. A telemetria da rede mostrou conexões para múltiplos domínios da Cloudflare e Netlify, com buscas ocasionais de URLs de anexos do Discord.
Mitigação
A plataforma Cato SASE bloqueou o carregador antes da execução da carga útil inspecionando o comportamento de download e padrões suspeitos de criação de processos. Para reduzir o risco, bloqueie domínios de preparação conhecidos e alerte sobre comportamentos relacionados a injeção associados à técnica do Foxveil. Desative a execução de scripts não confiáveis e endureça as políticas em torno das exclusões do Windows Defender para limitar as tentativas de persistência. Mantenha as regras de lista de permissões para serviços em nuvem legítimos atualizadas para minimizar falsos positivos enquanto mantém a cobertura.
Resposta
Se a atividade do Foxveil for detectada, isole o ponto final, termine o processo malicioso e remova qualquer serviço registrado (incluindo o AarSvc). Realize uma revisão forense do SysWOW64 em busca de executáveis descartados e colete hashes para escopo. Pivote nos logs de rede para conexões a domínios de preparação identificados e bloqueie-os em camadas de DNS/proxy. Promova detecções para injeção Early Bird APC e padrões de auto-injeção em toda a frota para identificar hosts adicionais impactados.
fluxo de grafo TB %% Definições de Classe definição de classe técnica fill:#ffcc99 definição de classe malware fill:#ff9999 definição de classe ferramenta fill:#99ccff definição de classe payload fill:#ccccff definição de operador de classe fill:#ff9900 %% Definições de Nó execução_inicial[“<b>Técnica</b> – <b>T1574.005 Fluxo de Execução de Seqüência: Fraqueza nas Permissões do Arquivo Instalador Executável</b><br/>A vítima executa EXE/DLL malicioso descartando o carregador Foxveil.”] class execução_inicial técnica recuperação de preparação[“<b>Técnica</b> – <b>T1102.001 Serviço Web: Resolvedor Dead Drop</b> e <b>T1102 Serviço Web</b><br/>Foxveil contata páginas de Cloudflare, domínios Netlify ou links de anexos do Discord controlados pelo atacante para baixar shellcode gerado por Donut.”] class recuperação de preparação técnica carregamento na memória[“<b>Técnica</b> – <b>T1620 Carregamento de Código Reflexivo</b><br/>O shellcode baixado é carregado diretamente na memória sem tocar no disco.”] classe carregamento na memória técnica injeção de processo[“<b>Técnica</b> – <b>T1055.002 Injeção de Executável Portátil</b> e <b>T1055.001 Injeção de DLL</b><br/>Foxveil v1 injeta via Early-Bird APC em um novo processo svchost.exe; Foxveil v2 se auto-injeta.”] class injeção de processo técnica serviço de persistência[“<b>Técnica</b> – <b>T1543 Criar ou Modificar Processo de Sistema</b><br/>Foxveil v1 registra um serviço do Windows (AarSvc) para persistência de inicialização.”] classe serviço de persistência técnica mascaramento[“<b>Técnica</b> – <b>T1036.005 Corresponder Nome ou Localização de Recurso Legítimo</b><br/>Binários descartados nomeados sms.exe, sihost.exe, taskhostw.exe, audiodg.exe, real1.exe colocados em C:\Windows\SysWOW64.”] classe mascaramento técnica ocultar_artefatos[“<b>Técnica</b> – <b>T1564.012 Exclusões de Arquivo/Caminho</b><br/>Tenta chamada WMI para MSFT_MpPreference para remover uma exclusão para C:\Windows\SysWOW64.”] classe ocultar artefatos técnica obfuscação[“<b>Técnica</b> – <b>T1027.014 Código Polimórfico</b><br/>Rotina de mutação de string em tempo de execução substitui strings de alto sinal, como “fox”, “carga útil”, “meterpreter”, “beacon”.”] classe obfuscação técnica delivery_multistage[“<b>Técnica</b> – <b>T1104 Canais Multi-Estágios</b><br/>Após execução do shellcode inicial, executáveis adicionais são baixados da mesma infraestrutura de preparação (por exemplo, potencial beacon do Cobalt Strike).”] classe delivery_multistage técnica foxveil[“<b>Malware</b> – Carregador Foxveil<br/>Dropper inicial que recupera e carrega o shellcode.”] classe malware foxveil shellcode_donut[“<b>Payload</b> – Shellcode gerado por Donut<br/>Contém capacidades maliciosas adicionais.”] classe payload shellcode_donut cobalt_strike[“<b>Ferramenta</b> – Potencial beacon do Cobalt Strike<br/>Baixado nas fases posteriores para comando e controle.”] classe ferramenta cobalt_strike %% Conexões execução_inicial –>|dropa| foxveil foxveil –>|recupera| recuperação de preparação recuperação de preparação –>|baixa| shellcode_donut shellcode_donut –>|carrega via| carregamento na memória carregamento na memória –>|executa| injeção de processo injeção de processo –>|ativa| serviço de persistência foxveil –>|performa| mascaramento foxveil –>|performa| ocultar artefatos foxveil –>|performa| obfuscação injeção de processo –>|leva para| delivery_multistage delivery_multistage –>|baixa| cobalt_strike cobalt_strike –>|fornece| serviço de persistência
Fluxo de Ataque
Detecções
Cadeia de Processo de Sistema Anômalo (via criação_de_processo)
Ver
Possível Infiltração / Exfiltração de Dados / C2 via Serviços/Ferramentas de Terceiros (via proxy)
Ver
Processos Svchost Suspeitos (via criação_de_processo)
Ver
Modificação Suspeita de Exclusões do Defender via WMIC (via linha_de_comando)
Ver
Possível Infiltração / Exfiltração de Dados / C2 via Serviços/Ferramentas de Terceiros (via dns)
Ver
IOCs (HashSha256) para detecção: Pesquisa de Ameaças Cato CTRLTM: Foxveil – Novo Carregador de Malware Abusando de Cloudflare, Discord e Netlify como Infraestrutura de Preparação Parte 1
Ver
IOCs (HashSha256) para detecção: Pesquisa de Ameaças Cato CTRLTM: Foxveil – Novo Carregador de Malware Abusando de Cloudflare, Discord e Netlify como Infraestrutura de Preparação Parte 2
Ver
Detecção de Injeção de Processo Mascarado do Foxveil v1 svchost.exe [Criação de Processo do Windows]
Ver
Detecção de Domínios de Preparação de Malware Foxveil [Conexão de Rede do Windows]
Ver
Execução de Simulação
Pré-requisito: A Telemetria e Check de Pré-voo de Base deve ter passado.
Justificativa: Esta seção detalha a execução precisa da técnica adversária (TTP) projetada para acionar a regra de detecção. Os comandos e a narrativa DEVEM refletir diretamente os TTPs identificados e visam gerar a telemetria exata esperada pela lógica de detecção.
-
Narrativa e Comandos do Ataque
-
Reconhecimento: O atacante obteve o domínio de preparação Foxveil
syscore.pages.devde um despejo de credenciais comprometidas. - Fase 1 – Resolução de DNS: Usando uma ferramenta nativa do Windows, o atacante resolve o domínio de preparação para obter o endereço IP do host de carga maliciosa. Este passo espelha o comportamento real do malware e é o gatilho observável.
- Fase 2 – Recuperação de Carga (não executado no teste): Em um ataque real, o IP resolvido seria usado para baixar a carga de segundo estágio via HTTP. Para fins de validação de detecção, apenas a resolução DNS é necessária.
-
Reconhecimento: O atacante obteve o domínio de preparação Foxveil
-
Script de Teste de Regressão
<# Simular resolução de domínio de preparação do Foxveil. Este script realiza uma consulta DNS para um domínio conhecido do Foxveil, gerando a telemetria exata que a regra Sigma monitora. #> # Defina o domínio de preparação (escolhido da lista de permissões da regra) $stagingDomain = "syscore.pages.dev" # Resolva o domínio – isso gera um evento de consulta DNS try { $result = Resolve-DnsName -Name $stagingDomain -Type A -ErrorAction Stop Write-Host "Resolvido $stagingDomain para $($result.IPAddress)" } catch { Write-Error "Resolução de DNS falhou: $_" } # Opcional: pause para garantir que a linha de logs processe o evento Start-Sleep -Seconds 5 -
Comandos de Limpeza
# Limpe o cache DNS para remover a entrada resolvida (previne efeitos de cache em testes subsequentes) ipconfig /flushdns Write-Host "Cache DNS limpo."