Pular para o conteúdo principal

Modelo de ameaças do OpenClaw v1.0

Framework MITRE ATLAS

Versão: 1.0-draft Última atualização: 2026-02-04 Metodologia: MITRE ATLAS + Diagramas de fluxo de dados Framework: MITRE ATLAS (Adversarial Threat Landscape for AI Systems)

Atribuição do framework

Este modelo de ameaças foi criado com base no MITRE ATLAS, o framework padrão do setor para documentar ameaças adversariais a sistemas de IA/ML. O ATLAS é mantido pela MITRE em colaboração com a comunidade de segurança de IA. Principais recursos do ATLAS:

Contribuindo para este modelo de ameaças

Este é um documento vivo mantido pela comunidade OpenClaw. Consulte CONTRIBUTING-THREAT-MODEL.md para orientações sobre como contribuir:
  • Relatar novas ameaças
  • Atualizar ameaças existentes
  • Propor cadeias de ataque
  • Sugerir mitigações

1. Introdução

1.1 Objetivo

Este modelo de ameaças documenta ameaças adversariais à plataforma de agentes de IA OpenClaw e ao marketplace de Skills ClawHub, usando o framework MITRE ATLAS projetado especificamente para sistemas de IA/ML.

1.2 Escopo

ComponenteIncluídoObservações
Runtime do agente OpenClawSimExecução principal do agente, chamadas de ferramentas, sessões
GatewaySimAutenticação, roteamento, integração de canais
Integrações de canalSimWhatsApp, Telegram, Discord, Signal, Slack etc.
Marketplace ClawHubSimPublicação, moderação, distribuição de Skills
Servidores MCPSimProvedores externos de ferramentas
Dispositivos do usuárioParcialApps móveis, clientes desktop

1.3 Fora de escopo

Nada está explicitamente fora do escopo deste modelo de ameaças.

2. Arquitetura do sistema

2.1 Limites de confiança

┌─────────────────────────────────────────────────────────────────┐
│                    UNTRUSTED ZONE                                │
│  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐              │
│  │  WhatsApp   │  │  Telegram   │  │   Discord   │  ...         │
│  └──────┬──────┘  └──────┬──────┘  └──────┬──────┘              │
│         │                │                │                      │
└─────────┼────────────────┼────────────────┼──────────────────────┘
          │                │                │
          ▼                ▼                ▼
┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 1: Channel Access                 │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                      GATEWAY                              │   │
│  │  • Device Pairing (1h DM / 5m node grace period)           │   │
│  │  • AllowFrom / AllowList validation                       │   │
│  │  • Token/Password/Tailscale auth                          │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 2: Session Isolation              │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                   AGENT SESSIONS                          │   │
│  │  • Session key = agent:channel:peer                       │   │
│  │  • Tool policies per agent                                │   │
│  │  • Transcript logging                                     │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 3: Tool Execution                 │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                  EXECUTION SANDBOX                        │   │
│  │  • Docker sandbox OR Host (exec-approvals)                │   │
│  │  • Node remote execution                                  │   │
│  │  • SSRF protection (DNS pinning + IP blocking)            │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 4: External Content               │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │              FETCHED URLs / EMAILS / WEBHOOKS             │   │
│  │  • External content wrapping (XML tags)                   │   │
│  │  • Security notice injection                              │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 5: Supply Chain                   │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                      CLAWHUB                              │   │
│  │  • Skill publishing (semver, SKILL.md required)           │   │
│  │  • Pattern-based moderation flags                         │   │
│  │  • VirusTotal scanning (coming soon)                      │   │
│  │  • GitHub account age verification                        │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘

2.2 Fluxos de dados

FluxoOrigemDestinoDadosProteção
F1CanalGatewayMensagens do usuárioTLS, AllowFrom
F2GatewayAgenteMensagens roteadasIsolamento de sessão
F3AgenteFerramentasInvocações de ferramentasAplicação de políticas
F4AgenteExternosolicitações web_fetchBloqueio de SSRF
F5ClawHubAgenteCódigo de SkillModeração, varredura
F6AgenteCanalRespostasFiltragem de saída

3. Análise de ameaças por tática ATLAS

3.1 Reconhecimento (AML.TA0002)

T-RECON-001: Descoberta de endpoint de agente

AtributoValor
ID ATLASAML.T0006 - Active Scanning
DescriçãoO invasor faz varredura em busca de endpoints expostos do gateway OpenClaw
Vetor de ataqueVarredura de rede, consultas no Shodan, enumeração de DNS
Componentes afetadosGateway, endpoints de API expostos
Mitigações atuaisOpção de autenticação Tailscale, bind em loopback por padrão
Risco residualMédio - Gateways públicos podem ser descobertos
RecomendaçõesDocumentar implantação segura, adicionar rate limiting em endpoints de descoberta

T-RECON-002: Sondagem de integração de canais

AtributoValor
ID ATLASAML.T0006 - Active Scanning
DescriçãoO invasor sonda canais de mensagens para identificar contas gerenciadas por IA
Vetor de ataqueEnvio de mensagens de teste, observação de padrões de resposta
Componentes afetadosTodas as integrações de canal
Mitigações atuaisNenhuma específica
Risco residualBaixo - Valor limitado da descoberta isoladamente
RecomendaçõesConsiderar randomização do tempo de resposta

3.2 Acesso inicial (AML.TA0004)

T-ACCESS-001: Interceptação de código de pareamento

AtributoValor
ID ATLASAML.T0040 - AI Model Inference API Access
DescriçãoO invasor intercepta o código de pareamento durante o período de carência do pareamento (1h para pareamento por DM, 5min para pareamento de nó)
Vetor de ataqueObservação por cima do ombro, sniffing de rede, engenharia social
Componentes afetadosSistema de pareamento de dispositivos
Mitigações atuaisExpiração de 1h (pareamento por DM) / 5min (pareamento de nó), códigos enviados pelo canal existente
Risco residualMédio - Período de carência explorável
RecomendaçõesReduzir o período de carência, adicionar etapa de confirmação

T-ACCESS-002: Spoofing de AllowFrom

AtributoValor
ID ATLASAML.T0040 - AI Model Inference API Access
DescriçãoO invasor falsifica a identidade do remetente permitido no canal
Vetor de ataqueDepende do canal - spoofing de número de telefone, personificação de nome de usuário
Componentes afetadosValidação de AllowFrom por canal
Mitigações atuaisVerificação de identidade específica por canal
Risco residualMédio - Alguns canais vulneráveis a spoofing
RecomendaçõesDocumentar riscos específicos por canal, adicionar verificação criptográfica quando possível

T-ACCESS-003: Roubo de token

AtributoValor
ID ATLASAML.T0040 - AI Model Inference API Access
DescriçãoO invasor rouba tokens de autenticação de arquivos de configuração
Vetor de ataqueMalware, acesso não autorizado ao dispositivo, exposição de backup de configuração
Componentes afetados~/.openclaw/credentials/, armazenamento de configuração
Mitigações atuaisPermissões de arquivo
Risco residualAlto - Tokens armazenados em texto simples
RecomendaçõesImplementar criptografia de tokens em repouso, adicionar rotação de tokens

3.3 Execução (AML.TA0005)

T-EXEC-001: Injeção direta de prompt

AtributoValor
ID ATLASAML.T0051.000 - LLM Prompt Injection: Direct
DescriçãoO invasor envia prompts elaborados para manipular o comportamento do agente
Vetor de ataqueMensagens de canal contendo instruções adversariais
Componentes afetadosLLM do agente, todas as superfícies de entrada
Mitigações atuaisDetecção de padrões, encapsulamento de conteúdo externo
Risco residualCrítico - Apenas detecção, sem bloqueio; ataques sofisticados contornam
RecomendaçõesImplementar defesa em várias camadas, validação de saída, confirmação do usuário para ações sensíveis

T-EXEC-002: Injeção indireta de prompt

AtributoValor
ID ATLASAML.T0051.001 - LLM Prompt Injection: Indirect
DescriçãoO invasor embute instruções maliciosas em conteúdo obtido
Vetor de ataqueURLs maliciosas, e-mails envenenados, webhooks comprometidos
Componentes afetadosweb_fetch, ingestão de e-mail, fontes externas de dados
Mitigações atuaisEncapsulamento de conteúdo com tags XML e aviso de segurança
Risco residualAlto - O LLM pode ignorar instruções de encapsulamento
RecomendaçõesImplementar sanitização de conteúdo, contextos de execução separados

T-EXEC-003: Injeção de argumentos de ferramenta

AtributoValor
ID ATLASAML.T0051.000 - LLM Prompt Injection: Direct
DescriçãoO invasor manipula argumentos de ferramenta por meio de injeção de prompt
Vetor de ataquePrompts elaborados que influenciam valores de parâmetros da ferramenta
Componentes afetadosTodas as invocações de ferramenta
Mitigações atuaisAprovações de execução para comandos perigosos
Risco residualAlto - Depende do julgamento do usuário
RecomendaçõesImplementar validação de argumentos, chamadas parametrizadas de ferramenta

T-EXEC-004: Bypass de aprovação de execução

AtributoValor
ID ATLASAML.T0043 - Craft Adversarial Data
DescriçãoO invasor cria comandos que contornam a allowlist de aprovação
Vetor de ataqueOfuscação de comando, exploração de alias, manipulação de caminho
Componentes afetadosexec-approvals.ts, allowlist de comandos
Mitigações atuaisAllowlist + modo ask
Risco residualAlto - Sem sanitização de comandos
RecomendaçõesImplementar normalização de comandos, expandir blocklist

3.4 Persistência (AML.TA0006)

T-PERSIST-001: Instalação de Skill maliciosa

AtributoValor
ID ATLASAML.T0010.001 - Supply Chain Compromise: AI Software
DescriçãoO invasor publica Skill maliciosa no ClawHub
Vetor de ataqueCriar conta, publicar Skill com código malicioso oculto
Componentes afetadosClawHub, carregamento de Skill, execução do agente
Mitigações atuaisVerificação de idade da conta GitHub, flags de moderação baseadas em padrão
Risco residualCrítico - Sem sandboxing, revisão limitada
RecomendaçõesIntegração com VirusTotal (em andamento), sandboxing de Skill, revisão da comunidade

T-PERSIST-002: Envenenamento de atualização de Skill

AtributoValor
ID ATLASAML.T0010.001 - Supply Chain Compromise: AI Software
DescriçãoO invasor compromete uma Skill popular e envia atualização maliciosa
Vetor de ataqueComprometimento de conta, engenharia social do dono da Skill
Componentes afetadosVersionamento do ClawHub, fluxos de atualização automática
Mitigações atuaisImpressão digital de versão
Risco residualAlto - Atualizações automáticas podem trazer versões maliciosas
RecomendaçõesImplementar assinatura de atualização, capacidade de rollback, fixação de versão

T-PERSIST-003: Adulteração de configuração do agente

AtributoValor
ID ATLASAML.T0010.002 - Supply Chain Compromise: Data
DescriçãoO invasor modifica a configuração do agente para manter acesso
Vetor de ataqueModificação de arquivo de configuração, injeção de configurações
Componentes afetadosConfiguração do agente, políticas de ferramentas
Mitigações atuaisPermissões de arquivo
Risco residualMédio - Requer acesso local
RecomendaçõesVerificação de integridade de configuração, logs de auditoria para mudanças de configuração

3.5 Evasão de defesa (AML.TA0007)

T-EVADE-001: Bypass de padrão de moderação

AtributoValor
ID ATLASAML.T0043 - Craft Adversarial Data
DescriçãoO invasor cria conteúdo de Skill para contornar padrões de moderação
Vetor de ataqueHomóglifos Unicode, truques de codificação, carregamento dinâmico
Componentes afetadosmoderation.ts do ClawHub
Mitigações atuaisFLAG_RULES baseadas em padrão
Risco residualAlto - Regex simples é facilmente contornada
RecomendaçõesAdicionar análise comportamental (VirusTotal Code Insight), detecção baseada em AST

T-EVADE-002: Escape de encapsulamento de conteúdo

AtributoValor
ID ATLASAML.T0043 - Craft Adversarial Data
DescriçãoO invasor cria conteúdo que escapa do contexto de encapsulamento XML
Vetor de ataqueManipulação de tags, confusão de contexto, sobrescrita de instruções
Componentes afetadosEncapsulamento de conteúdo externo
Mitigações atuaisTags XML + aviso de segurança
Risco residualMédio - Novos escapes são descobertos regularmente
RecomendaçõesMúltiplas camadas de encapsulamento, validação no lado da saída

3.6 Descoberta (AML.TA0008)

T-DISC-001: Enumeração de ferramentas

AtributoValor
ID ATLASAML.T0040 - AI Model Inference API Access
DescriçãoO invasor enumera ferramentas disponíveis por meio de prompting
Vetor de ataqueConsultas do tipo “Que ferramentas você tem?”
Componentes afetadosRegistro de ferramentas do agente
Mitigações atuaisNenhuma específica
Risco residualBaixo - Ferramentas em geral são documentadas
RecomendaçõesConsiderar controles de visibilidade de ferramentas

T-DISC-002: Extração de dados de sessão

AtributoValor
ID ATLASAML.T0040 - AI Model Inference API Access
DescriçãoO invasor extrai dados sensíveis do contexto da sessão
Vetor de ataqueConsultas como “O que discutimos?”, sondagem de contexto
Componentes afetadosTranscrições de sessão, janela de contexto
Mitigações atuaisIsolamento de sessão por remetente
Risco residualMédio - Dados dentro da sessão são acessíveis
RecomendaçõesImplementar redação de dados sensíveis no contexto

3.7 Coleta e exfiltração (AML.TA0009, AML.TA0010)

T-EXFIL-001: Roubo de dados via web_fetch

AtributoValor
ID ATLASAML.T0009 - Collection
DescriçãoO invasor exfiltra dados instruindo o agente a enviar para uma URL externa
Vetor de ataqueInjeção de prompt fazendo o agente enviar POST com dados para servidor do invasor
Componentes afetadosFerramenta web_fetch
Mitigações atuaisBloqueio de SSRF para redes internas
Risco residualAlto - URLs externas são permitidas
RecomendaçõesImplementar allowlist de URL, consciência de classificação de dados

T-EXFIL-002: Envio não autorizado de mensagens

AtributoValor
ID ATLASAML.T0009 - Collection
DescriçãoO invasor faz o agente enviar mensagens contendo dados sensíveis
Vetor de ataqueInjeção de prompt fazendo o agente enviar mensagem ao invasor
Componentes afetadosFerramenta de mensagem, integrações de canal
Mitigações atuaisControle de envio de mensagens de saída
Risco residualMédio - O controle pode ser contornado
RecomendaçõesExigir confirmação explícita para novos destinatários

T-EXFIL-003: Coleta de credenciais

AtributoValor
ID ATLASAML.T0009 - Collection
DescriçãoSkill maliciosa coleta credenciais do contexto do agente
Vetor de ataqueCódigo da Skill lê variáveis de ambiente, arquivos de configuração
Componentes afetadosAmbiente de execução da Skill
Mitigações atuaisNenhuma específica para Skills
Risco residualCrítico - Skills são executadas com privilégios do agente
RecomendaçõesSandboxing de Skill, isolamento de credenciais

3.8 Impacto (AML.TA0011)

T-IMPACT-001: Execução não autorizada de comandos

AtributoValor
ID ATLASAML.T0031 - Erode AI Model Integrity
DescriçãoO invasor executa comandos arbitrários no sistema do usuário
Vetor de ataqueInjeção de prompt combinada com bypass de aprovação de execução
Componentes afetadosFerramenta Bash, execução de comandos
Mitigações atuaisAprovações de execução, opção de sandbox Docker
Risco residualCrítico - Execução no host sem sandbox
RecomendaçõesUsar sandbox por padrão, melhorar a UX de aprovação

T-IMPACT-002: Exaustão de recursos (DoS)

AtributoValor
ID ATLASAML.T0031 - Erode AI Model Integrity
DescriçãoO invasor esgota créditos de API ou recursos computacionais
Vetor de ataqueEnchente automatizada de mensagens, chamadas caras de ferramentas
Componentes afetadosGateway, sessões de agente, provedor de API
Mitigações atuaisNenhuma
Risco residualAlto - Sem rate limiting
RecomendaçõesImplementar limites por remetente, orçamentos de custo

T-IMPACT-003: Dano reputacional

AtributoValor
ID ATLASAML.T0031 - Erode AI Model Integrity
DescriçãoO invasor faz o agente enviar conteúdo nocivo/ofensivo
Vetor de ataqueInjeção de prompt causando respostas inadequadas
Componentes afetadosGeração de saída, mensagens em canais
Mitigações atuaisPolíticas de conteúdo do provedor de LLM
Risco residualMédio - Filtros do provedor são imperfeitos
RecomendaçõesCamada de filtragem de saída, controles do usuário

4. Análise da cadeia de suprimentos do ClawHub

4.1 Controles de segurança atuais

ControleImplementaçãoEfetividade
Idade da conta GitHubrequireGitHubAccountAge()Média - Aumenta a barreira para novos invasores
Sanitização de caminhosanitizePath()Alta - Evita path traversal
Validação de tipo de arquivoisTextFile()Média - Apenas arquivos de texto, mas ainda podem ser maliciosos
Limites de tamanhoBundle total de 50 MBAlta - Evita exaustão de recursos
SKILL.md obrigatórioReadme obrigatórioBaixo valor de segurança - Apenas informativo
Moderação por padrãoFLAG_RULES em moderation.tsBaixa - Facilmente contornada
Status de moderaçãoCampo moderationStatusMédio - Revisão manual possível

4.2 Padrões de flags de moderação

Padrões atuais em moderation.ts:
// Known-bad identifiers
/(keepcold131\/ClawdAuthenticatorTool|ClawdAuthenticatorTool)/i

// Suspicious keywords
/(malware|stealer|phish|phishing|keylogger)/i
/(api[-_ ]?key|token|password|private key|secret)/i
/(wallet|seed phrase|mnemonic|crypto)/i
/(discord\.gg|webhook|hooks\.slack)/i
/(curl[^\n]+\|\s*(sh|bash))/i
/(bit\.ly|tinyurl\.com|t\.co|goo\.gl|is\.gd)/i
Limitações:
  • Verifica apenas slug, displayName, resumo, frontmatter, metadados e caminhos de arquivo
  • Não analisa o conteúdo real do código da Skill
  • Regex simples é facilmente contornada com ofuscação
  • Sem análise comportamental

4.3 Melhorias planejadas

MelhoriaStatusImpacto
Integração com VirusTotalEm andamentoAlto - Análise comportamental com Code Insight
Relatórios da comunidadeParcial (a tabela skillReports existe)Médio
Logs de auditoriaParcial (a tabela auditLogs existe)Médio
Sistema de badgesImplementadoMédio - highlighted, official, deprecated, redactionApproved

5. Matriz de risco

5.1 Probabilidade vs impacto

ID da ameaçaProbabilidadeImpactoNível de riscoPrioridade
T-EXEC-001AltaCríticoCríticoP0
T-PERSIST-001AltaCríticoCríticoP0
T-EXFIL-003MédiaCríticoCríticoP0
T-IMPACT-001MédiaCríticoAltoP1
T-EXEC-002AltaAltoAltoP1
T-EXEC-004MédiaAltoAltoP1
T-ACCESS-003MédiaAltoAltoP1
T-EXFIL-001MédiaAltoAltoP1
T-IMPACT-002AltaMédioAltoP1
T-EVADE-001AltaMédioMédioP2
T-ACCESS-001BaixaAltoMédioP2
T-ACCESS-002BaixaAltoMédioP2
T-PERSIST-002BaixaAltoMédioP2

5.2 Cadeias de ataque de caminho crítico

Cadeia de ataque 1: Roubo de dados baseado em Skill
T-PERSIST-001 → T-EVADE-001 → T-EXFIL-003
(Publish malicious skill) → (Evade moderation) → (Harvest credentials)
Cadeia de ataque 2: Injeção de prompt para RCE
T-EXEC-001 → T-EXEC-004 → T-IMPACT-001
(Inject prompt) → (Bypass exec approval) → (Execute commands)
Cadeia de ataque 3: Injeção indireta via conteúdo obtido
T-EXEC-002 → T-EXFIL-001 → External exfiltration
(Poison URL content) → (Agent fetches & follows instructions) → (Data sent to attacker)

6. Resumo das recomendações

6.1 Imediato (P0)

IDRecomendaçãoResolve
R-001Concluir a integração com VirusTotalT-PERSIST-001, T-EVADE-001
R-002Implementar sandboxing de SkillT-PERSIST-001, T-EXFIL-003
R-003Adicionar validação de saída para ações sensíveisT-EXEC-001, T-EXEC-002

6.2 Curto prazo (P1)

IDRecomendaçãoResolve
R-004Implementar rate limitingT-IMPACT-002
R-005Adicionar criptografia de token em repousoT-ACCESS-003
R-006Melhorar UX e validação de aprovação de execuçãoT-EXEC-004
R-007Implementar allowlisting de URL para web_fetchT-EXFIL-001

6.3 Médio prazo (P2)

IDRecomendaçãoResolve
R-008Adicionar verificação criptográfica de canal quando possívelT-ACCESS-002
R-009Implementar verificação de integridade de configuraçãoT-PERSIST-003
R-010Adicionar assinatura de atualização e fixação de versãoT-PERSIST-002

7. Apêndices

7.1 Mapeamento de técnicas ATLAS

ID ATLASNome da técnicaAmeaças do OpenClaw
AML.T0006Active ScanningT-RECON-001, T-RECON-002
AML.T0009CollectionT-EXFIL-001, T-EXFIL-002, T-EXFIL-003
AML.T0010.001Supply Chain: AI SoftwareT-PERSIST-001, T-PERSIST-002
AML.T0010.002Supply Chain: DataT-PERSIST-003
AML.T0031Erode AI Model IntegrityT-IMPACT-001, T-IMPACT-002, T-IMPACT-003
AML.T0040AI Model Inference API AccessT-ACCESS-001, T-ACCESS-002, T-ACCESS-003, T-DISC-001, T-DISC-002
AML.T0043Craft Adversarial DataT-EXEC-004, T-EVADE-001, T-EVADE-002
AML.T0051.000LLM Prompt Injection: DirectT-EXEC-001, T-EXEC-003
AML.T0051.001LLM Prompt Injection: IndirectT-EXEC-002

7.2 Principais arquivos de segurança

CaminhoFinalidadeNível de risco
src/infra/exec-approvals.tsLógica de aprovação de comandoCrítico
src/gateway/auth.tsAutenticação do GatewayCrítico
src/infra/net/ssrf.tsProteção contra SSRFCrítico
src/security/external-content.tsMitigação de injeção de promptCrítico
src/agents/sandbox/tool-policy.tsAplicação de política de ferramentaCrítico
src/routing/resolve-route.tsIsolamento de sessãoMédio

7.3 Glossário

TermoDefinição
ATLASAdversarial Threat Landscape for AI Systems da MITRE
ClawHubMarketplace de Skills do OpenClaw
GatewayCamada de roteamento de mensagens e autenticação do OpenClaw
MCPModel Context Protocol - interface de provedor de ferramentas
Prompt InjectionAtaque em que instruções maliciosas são embutidas na entrada
SkillExtensão baixável para agentes do OpenClaw
SSRFServer-Side Request Forgery

Este modelo de ameaças é um documento vivo. Relate problemas de segurança para security@openclaw.ai