Quando as primeiras manchetes sobre o CLOSEDQUORUM saíram, o padrão da cobertura já era previsível: "Malware com inteligência artificial decide sozinho como destruir computadores". Quem passa o dia analisando logs, tráfego de rede e dumps de memória aprende rápido a ignorar esse tipo de alarde e abrir direto o relatório da Cisco Talos e os feeds do AlienVault OTX.
A engenharia do binário é bem mais prática do que as manchetes sugerem. Trata-se de uma prova de conceito (PoC) que testa uma ideia simples: usar APIs públicas de modelos de linguagem (LLMs) como canal de comando e controle (C2), terceirizando a escolha da próxima ação tática para um grupo de IAs.
Neste artigo, analiso como o CLOSEDQUORUM foi montado, como funciona a votação entre os modelos, por que o código quebra na prática e como a detecção comportamental de EDR resolve o problema sem depender de assinaturas de rede.
O que é o CLOSEDQUORUM?#
Identificado pela equipe da Cisco Talos durante o projeto CAIRN (Cognitive Artifact Intelligence Research Network), o CLOSEDQUORUM é um binário para Windows com um mecanismo incomum de C2.
Em vez de se conectar a um servidor tradicional, onde um operador envia comandos manualmente ou um script devolve tarefas estáticas, ele faz requisições HTTPS para quatro provedores comerciais de IA:
- DeepSeek
- Qwen (Alibaba)
- Mistral AI
- Google Gemini
O autor tentou implementar o que a Cisco Talos chama de deslocamento de esforço (effort displacement): o malware faz o levantamento inicial da máquina, repassa essas informações aos modelos via API e executa a ação que receber mais votos.
[Vítima Infectada]
│
├─ Coleta: Processos, Privilégios, Arquitetura, Usuário
│
▼
[Dispatcher de IA] ──── Consulta simultânea via HTTPS ────┐
│ │
├── DeepSeek API (Voto A + Voto de Minerva) │
├── Qwen API (Voto B) │
├── Mistral AI API (Voto C) │
└── Google Gemini API (Voto D) │
│
▼
[Mecanismo de Quórum]
│
┌──────────────────────────────────┴──────────────────────┐
▼ ▼
[STEAL / INJECT / PERSIST] [Exfiltração Discord]
Execução da ação majoritária Webhook com raciocínio
A anatomia do mecanismo de quórum#
O autor evitou pedir para as IAs escreverem código em tempo real. Qualquer um que já usou LLMs para gerar scripts sabe que a chance de um erro de sintaxe quebrar a execução é enorme. Em vez disso, ele limitou as opções a quatro comandos fixos:
| Ação Tática | Descrição da Carga | Mecanismo Interno |
|---|---|---|
STEAL | Coleta de credenciais e chaves | Dump de memória do lsass.exe, leitura de bancos SQLite de navegadores e busca por arquivos de carteiras cripto |
INJECT | Evasão defensiva | Injeção de código via Process Hollowing ou Early Bird APC Injection |
PERSIST | Sobrevivência após reboot | Criação de chaves Run no Registro do Windows ou Tarefas Agendadas (schtasks) |
MOVE | Movimentação lateral | Código de varredura SMB/WMI (incompleto no binário analisado) |
Como a votação acontece#
Ao rodar na máquina alvo, o malware faz uma checagem rápida:
- Coleta nome do host, usuário logado e nível de integridade do processo.
- Varre a lista de processos para checar se está rodando em máquina virtual ou ambiente de análise.
- Monta um payload JSON com esses dados e faz a mesma pergunta para as quatro APIs: "Com base nestes dados da máquina, qual é a próxima ação mais eficiente: STEAL, INJECT, PERSIST ou MOVE?"
Cada modelo devolve a opção escolhida e uma justificativa curta:
- Maioria simples: Se três ou quatro modelos concordarem (por exemplo, três votos para
STEAL), essa rotina roda imediatamente. - Empate: Se houver empate 2x2, o código tem uma regra fixa: o voto do DeepSeek desempata.
- Log remoto: Ao fechar o quórum, o malware dispara um webhook para o Discord com a ação vencedora e o texto que cada IA devolveu explicando o voto.
Por que o CLOSEDQUORUM falha na prática#
Quem lê notícias sobre o caso pode achar que o malware é uma arma autônoma sofisticada. Olhando o binário por dentro, a realidade é outra: o código é frágil, lento e cheio de pontas soltas.
1. Latência alta demais para C2#
Em uma invasão real, o canal de controle precisa responder rápido ou operar de forma assíncrona bem calculada. O CLOSEDQUORUM precisa fechar quatro conexões TLS 1.3 independentes, esperar o tempo de inferência de cada provedor e consolidar os resultados. Isso coloca entre 3 e 10 segundos de espera apenas para decidir o próximo comando. Em termos ofensivos, é uma eternidade.
2. Quebra de parsing e alucinação#
Modelos de linguagem não garantem saídas estritamente previsíveis. Se uma das APIs responder com um texto de cortesia antes do JSON, ou se recusar a responder por causa de filtros de segurança, o parser do binário quebra. Como o código não tem um tratamento decente para saídas fora do padrão, a thread simplesmente trava.
3. Chaves de API expostas no executável#
Para consultar os provedores, o binário precisa carregar credenciais. Na amostra que a Cisco Talos analisou, o autor deixou tokens de teste e webhooks fictícios. Se alguém colocar esse malware em circulação com chaves reais, qualquer sandbox automática de análise (como VirusTotal ou Hybrid Analysis) extrai esses tokens em dois minutos. O resultado: contas canceladas na hora e trilha de pagamento exposta.
4. Código inacabado#
O módulo MOVE sequer funciona. É apenas um esqueleto de funções sem implementação real. Isso deixa claro que a amostra encontrada era um kit de teste, um laboratório experimental para validar a ideia de votação entre APIs, e não um artefato pronto para operações reais.
O ponto que realmente exige atenção: evasão de rede#
Mesmo com todas as falhas de implementação, o CLOSEDQUORUM traz uma ideia perigosa para a defesa de perímetro: o uso de serviços confiáveis para esconder o tráfego.
A maioria dos firewalls corporativos, proxies e sistemas de detecção de intrusão (IDS) monitora C2 buscando:
- Conexões para domínios novos ou com baixa pontuação de reputação.
- Certificados TLS autofirmados ou com dados suspeitos.
- Intervalos regulares de comunicação com IPs desconhecidos.
Quando o malware passa a conversar com APIs oficiais de IA, o tráfego vai para hosts com reputação impecável e certificados válidos:
api.deepseek.comapi.mistral.aigenerativelanguage.googleapis.com
Se a rede monitorada já utiliza ferramentas de IA no dia a dia, esse tráfego se camufla no meio das conexões legítimas de desenvolvedores. Sem inspeção SSL profunda e análise de conteúdo, o bloqueio tradicional por IP ou domínio não enxerga nada de errado.
Como defender o ambiente#
A lição mais importante do CLOSEDQUORUM é simples: quem deu a ordem não muda o comportamento do payload. Pouco importa se a instrução de despejar senhas veio de um operador humano ou de um consenso entre LLMs. A ação executada no sistema operacional continua sendo maliciosa e deixa rastros claros.
Para barrar esse tipo de ataque, trabalho com três camadas práticas:
1. Proteção de memória do LSASS#
O objetivo central do comando STEAL é extrair hashes e senhas do processo lsass.exe. No Windows, mantenho duas defesas ativas por padrão:
- RunAsPPL (Protected Process Light): Bloqueia processos não assinados ou sem privilégios específicos de ler a memória do LSASS.
# Ativa PPL para o LSASS no Registro do Windows
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name "RunAsPPL" -Value 1 -Type DWord
- Credential Guard: Usa virtualização (VBS) para isolar os segredos do NTLM e Kerberos dentro de um contêiner protegido pelo Hyper-V, impedindo a leitura direta mesmo para contas com privilégio de administrador local.
2. EDR baseado em comportamento (IOAs)#
Bloquear hashes estáticos, como os 18 indicadores listados no AlienVault OTX, resolve apenas a amostra conhecida.
Soluções de EDR corporativo, como o CrowdStrike Falcon, operam com foco em Indicadores de Ataque (IOAs). O sensor não precisa identificar o IP ou a reputação do servidor que enviou o comando. Quando um binário desconhecido tenta executar Process Hollowing (MITRE T1055) ou abrir um handle de leitura (PROCESS_VM_READ) contra processos de autenticação, o CrowdStrike Falcon intercepta a cadeia de execução direto no kernel e bloqueia a ação em tempo real. Para quem administra frotas de endpoints Windows e precisa conter ransomware e técnicas evasivas de C2, essa cobertura comportamental é o divisor de águas.
3. Caça a artefatos com o CAIRN#
O projeto CAIRN da Cisco Talos abriu uma frente útil para quem faz Threat Hunting: buscar artefatos cognitivos compilados dentro dos binários.
Em vez de olhar apenas para cabeçalhos PE comuns, vale inspecionar arquivos suspeitos em busca de:
- Endpoints de provedores de IA conhecidos gravados em texto claro ou strings ofuscadas.
- Trechos de prompts embutidos no binário ("Given the following system information...").
- Schemas JSON usados para ler as respostas das APIs.
Indicadores de Comprometimento (IOCs)#
Para quem precisa alimentar regras no SIEM, EDR ou rotinas de Threat Hunting, compilei os hashes SHA256 catalogados pela Cisco Talos e documentados no pulso do AlienVault OTX. Eles correspondem às seis compilações experimentais do CLOSEDQUORUM identificadas na cadeia de desenvolvimento:
| Tipo | Hash SHA256 | Observações |
|---|---|---|
| SHA256 | 250d4fa37488af9b025333fa17705573d721467b203765bc360890b4f5a90cd7 | CLOSEDQUORUM (Amostra / Build inicial) |
| SHA256 | c4dc171f2513fcaf9d5ecc815a94aee4063b213ab380f80bd3ac422dee5205a7 | CLOSEDQUORUM (Cadeia de compilação) |
| SHA256 | c13cea04f598e2b0c248d603a6e31bd13aabb64d8149c1b6a77b64e0b983a86f | CLOSEDQUORUM (Cadeia de compilação) |
| SHA256 | f5f1f8c3e7b883793800ab6ccf21b3e60bd0730f300b4595fe74a33adc17a63c | CLOSEDQUORUM (Iteração de votação) |
| SHA256 | 5191cf625dfc209a347f137b50aea199e82040fd5ee9086fb3e2de73c133f3cb | CLOSEDQUORUM (Cadeia de compilação) |
| SHA256 | eddbd0ecf7195d38fefae5b9d393abfa79e6f3f94bde19308ecef130a05a42e5 | CLOSEDQUORUM (Amostra analisada) |
Endpoints de API consultados pelo quorum#
api.deepseek.com(Votação e desempate de consenso)api.mistral.ai(Votação de ações C2)generativelanguage.googleapis.com(Google Gemini API — votação C2)
Referência do pulso: AlienVault OTX Pulse 6ab431db415b8cd13de69a7e
Conclusão#
O CLOSEDQUORUM é lento, instável e quebra facilmente. Mas ele mostra para onde parte do ecossistema de ameaças está olhando: usar plataformas legítimas em nuvem para contornar defesas de perímetro.
Para quem cuida de infraestrutura, a resposta não muda: privilégio mínimo, proteção ativa nos processos de credenciais do Windows e sensores de EDR olhando para o comportamento do software na máquina. Quando a defesa do endpoint está bem ajustada, o método que o malware usou para decidir o ataque simplesmente não faz diferença.
Este artigo foi útil?
Deixe uma reação rápida para apoiar o conteúdo:
Este post está licenciado sob CC BY-NC.



Comentários
Participe da discussão abaixo.
0 comentários