Modelo de Amenazas de OpenClaw con MITRE ATLAS
Lanzar un agente de IA al mundo real es emocionante, pero también genera muchas dudas sobre seguridad. No quieres que tu sistema sea vulnerable a ataques que no habías previsto o que tu agente termine realizando acciones no autorizadas. A menudo, la seguridad en IA se siente como algo difícil de definir.
Este modelo de amenazas te permite mapear los riesgos de OpenClaw de forma clara. Al usar un estándar compartido, puedes centrarte en construir funciones sin descuidar la protección de tus usuarios.
What You’ll Need
Sección titulada «What You’ll Need»- Acceso al framework MITRE ATLAS.
- Conocimiento de los componentes de OpenClaw (Gateway, Runtime, ClawHub).
Quick Start
Sección titulada «Quick Start»Para empezar a trabajar con este modelo de amenazas en tus proyectos, sigue estos pasos:
- Define el alcance: Revisa qué componentes de OpenClaw estás utilizando, desde el Gateway hasta los MCP Servers.
- Estudia las tácticas: Consulta las ATLAS Tactics para entender los objetivos potenciales de un atacante.
- Analiza los flujos: Utiliza Data Flow Diagrams junto con la metodología de MITRE ATLAS para identificar puntos críticos.
- Reporta cambios: Si encuentras nuevas amenazas o quieres proponer cadenas de ataque, revisa el archivo
CONTRIBUTING-THREAT-MODEL.md.
Alcance del Modelo
Sección titulada «Alcance del Modelo»Es fundamental saber qué partes del ecosistema están cubiertas. Este modelo documenta las amenazas para los siguientes componentes:
| Componente | Incluido | Notas |
|---|---|---|
| OpenClaw Agent Runtime | Sí | Ejecución del agente, tool calls y sesiones. |
| Gateway | Sí | Autenticación, routing e integración de canales. |
| Channel Integrations | Sí | WhatsApp, Telegram, Discord, Signal, Slack. |
| ClawHub Marketplace | Sí | Publicación de skills, moderación y distribución. |
También se incluyen los MCP Servers como proveedores de herramientas externas y, de manera parcial, los dispositivos de usuario como apps móviles. Según la documentación oficial, nada queda explícitamente fuera de alcance para este análisis.
Troubleshooting
Sección titulada «Troubleshooting»Si tienes dudas al aplicar este modelo o encuentras inconsistencias, revisa estos puntos basados en la documentación:
- Amenazas no registradas: Si detectas un riesgo que no aparece en el modelo actual, debes reportarlo como una “new threat” siguiendo las guías de la comunidad.
- Dudas sobre técnicas específicas: Puedes consultar los ATLAS Case Studies para ver cómo se aplican estas amenazas en escenarios reales de IA y ML.
¿Necesitas ayuda técnica para implementar estas medidas de seguridad? Prueba nuestro AI Setup Assistant.
What’s Next
Sección titulada «What’s Next»¿Alguna vez has sentido miedo al conectar un bot de WhatsApp o Discord a tus scripts internos? Es normal. Exponer herramientas a internet suele ser una receta para el desastre si no tienes límites claros. En este post te explicamos cómo diseñamos el sistema para que duermas tranquilo mientras tus agentes ejecutan código.
Recomendamos siempre usar el aislamiento por Docker en lugar del host para mantener una capa de seguridad real en la ejecución de herramientas.
Requisitos previos
Sección titulada «Requisitos previos»Para entender esta arquitectura y aplicarla, necesitas conocer estos componentes mencionados en la documentación:
- Gateway: El punto de entrada para los canales.
- Agent Sessions: Donde vive la lógica del bot.
- Execution Sandbox: Docker o entorno Node.js remoto.
- ClawHub: El repositorio de skills.
Quick Start: Los 5 límites de confianza
Sección titulada «Quick Start: Los 5 límites de confianza»Puedes entender nuestra seguridad siguiendo estos pasos para validar cada zona:
- Valida el acceso: El Gateway usa
AllowFromyAllowListpara decidir quién entra. - Aísla la sesión: Cada interacción se identifica con una clave única (
agent:channel:peer). - Ejecuta con cuidado: Los tools corren en sandboxes con protección SSRF activa.
- Limpia el contenido: El contenido externo se envuelve en etiquetas XML para evitar inyecciones.
- Verifica el origen: Todo lo que viene de ClawHub pasa por moderación y verificación de cuenta de GitHub.
System Architecture
Sección titulada «System Architecture»Trust Boundaries
Sección titulada «Trust Boundaries»El sistema se divide en zonas de confianza para evitar que un fallo en un canal (como un mensaje malicioso en Telegram) comprometa tu infraestructura.
┌─────────────────────────────────────────────────────────────────┐│ UNTRUSTED ZONE ││ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ││ │ WhatsApp │ │ Telegram │ │ Discord │ ... ││ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ ││ │ │ │ │└─────────┼────────────────┼────────────────┼──────────────────────┘ │ │ │ ▼ ▼ ▼┌─────────────────────────────────────────────────────────────────┐│ TRUST BOUNDARY 1: Channel Access ││ ┌──────────────────────────────────────────────────────────┐ ││ │ GATEWAY │ ││ │ • Device Pairing (30s 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 │ ││ └──────────────────────────────────────────────────────────┘ │└─────────────────────────────────────────────────────────────────┘Data Flows
Sección titulada «Data Flows»Aquí tienes cómo se mueven los datos y qué protección aplica en cada tramo:
| Flow | Source | Destination | Data | Protection |
|---|---|---|---|---|
| F1 | Channel | Gateway | User messages | TLS, AllowFrom |
| F2 | Gateway | Agent | Routed messages | Session isolation |
| F3 | Agent | Tools | Tool invocations | Policy enforcement |
| F4 | Agent | External | web_fetch requests | SSRF blocking |
| F5 | ClawHub | Agent | Skill code | Moderation, scanning |
| F6 | Agent | Channel | Responses | Output filtering |
Solución de problemas
Sección titulada «Solución de problemas»Si encuentras problemas al configurar la arquitectura, revisa estos puntos basados en los límites de confianza:
- Error en Device Pairing: Recuerda que tienes un “grace period” de 30 segundos. Si tardas más, la conexión fallará por seguridad.
- web_fetch bloqueado: Si el agente no puede acceder a una URL, es probable que la protección SSRF esté bloqueando la IP o el DNS por ser potencialmente peligroso.
¿Necesitas ayuda configurando estos límites en tu entorno? Prueba nuestro AI Setup Assistant.
Próximos pasos
Sección titulada «Próximos pasos»¿Te preocupa qué pasará cuando lances tu agente al mundo real? Es normal. Conectar un LLM a tus archivos y herramientas da miedo porque los riesgos no son teóricos; son una posibilidad real cada vez que el Gateway recibe una petición. No se trata de ser paranoico, sino de entender cómo alguien podría intentar romper tu flujo de trabajo.
En esta guía vamos a desglosar las amenazas identificadas usando la táctica ATLAS para que sepas exactamente dónde están los puntos débiles de tu configuración actual y cómo cerrarlos.
Requisitos previos
Sección titulada «Requisitos previos»Para entender este análisis, debes conocer estos componentes de la arquitectura:
- OpenClaw Gateway: El punto de entrada de las peticiones.
- API Endpoints: Las interfaces expuestas para la comunicación.
- Canales de mensajería: WhatsApp, Slack o cualquier integración activa.
- ClawHub: El repositorio donde se gestionan las skills.
- Sistema de credenciales: Ubicado en
~/.openclaw/credentials/. - Archivos de lógica: Específicamente
exec-approvals.tsymoderation.ts.
Inicio rápido
Sección titulada «Inicio rápido»Si tienes poco tiempo, prioriza revisar estos cuatro puntos críticos ahora mismo:
- Prompt Injection: Los ataques directos e indirectos son el riesgo más alto.
- Token Theft: Tus credenciales se guardan en texto plano en
~/.openclaw/credentials/. - Malicious Skills: Las skills de ClawHub no tienen sandboxing todavía.
- Exec Bypass: Es posible saltarse la lista de aprobación de comandos con técnicas de ofuscación.
3.1 Reconnaissance (AML.TA0002)
Sección titulada «3.1 Reconnaissance (AML.TA0002)»T-RECON-001: Agent Endpoint Discovery
Sección titulada «T-RECON-001: Agent Endpoint Discovery»- Descripción: Un atacante busca endpoints del Gateway de OpenClaw expuestos.
- Vector: Escaneo de red, consultas en Shodan o enumeración de DNS.
- Mitigaciones actuales: Opción de autenticación vía Tailscale y bind al loopback por defecto.
- Recomendaciones: Documentar despliegues seguros y añadir rate limiting en los endpoints de descubrimiento.
T-RECON-002: Channel Integration Probing
Sección titulada «T-RECON-002: Channel Integration Probing»- Descripción: El atacante sondea los canales de mensajería para identificar cuentas gestionadas por IA.
- Vector: Envío de mensajes de prueba y observación de patrones de respuesta.
- Riesgo residual: Bajo (el valor obtenido solo con el descubrimiento es limitado).
- Recomendaciones: Considerar la aleatorización del tiempo de respuesta.
3.2 Initial Access (AML.TA0004)
Sección titulada «3.2 Initial Access (AML.TA0004)»T-ACCESS-001: Pairing Code Interception
Sección titulada «T-ACCESS-001: Pairing Code Interception»- Descripción: Intercepción del código de emparejamiento durante el periodo de gracia de 30 segundos.
- Vector: Shoulder surfing, sniffing de red o ingeniería social.
- Mitigaciones actuales: Expiración de 30s y envío de códigos por canales existentes.
- Recomendaciones: Reducir el periodo de gracia y añadir un paso de confirmación.
T-ACCESS-002: AllowFrom Spoofing
Sección titulada «T-ACCESS-002: AllowFrom Spoofing»- Descripción: El atacante suplanta la identidad de un remitente permitido en el canal.
- Mitigaciones actuales: Verificación de identidad específica de cada canal.
- Recomendaciones: Documentar riesgos por canal y añadir verificación criptográfica donde sea posible.
T-ACCESS-003: Token Theft
Sección titulada «T-ACCESS-003: Token Theft»- Descripción: Robo de tokens de autenticación de los archivos de configuración.
- Afecta a:
~/.openclaw/credentials/y almacenamiento de config. - Riesgo residual: Alto (los tokens se guardan en texto plano).
- Recomendaciones: Implementar cifrado de tokens en reposo y rotación de tokens.
3.3 Execution (AML.TA0005)
Sección titulada «3.3 Execution (AML.TA0005)»T-EXEC-001: Direct Prompt Injection
Sección titulada «T-EXEC-001: Direct Prompt Injection»- Descripción: Envío de prompts diseñados para manipular el comportamiento del agente.
- Mitigaciones actuales: Detección de patrones y wrapping de contenido externo.
- Riesgo residual: Crítico (la detección no bloquea; ataques sofisticados pueden evadirla).
- Recomendaciones: Implementar defensa multicapa con validación de salida y confirmación de usuario para acciones sensibles.
T-EXEC-002: Indirect Prompt Injection
Sección titulada «T-EXEC-002: Indirect Prompt Injection»- Descripción: Instrucciones maliciosas ocultas en contenido obtenido externamente.
- Vector: URLs maliciosas, emails envenenados o webhooks comprometidos.
- Afecta a:
web_fetch, ingesta de email y fuentes de datos externas. - Recomendaciones: Sanitización de contenido y separación de contextos de ejecución.
T-EXEC-003: Tool Argument Injection
Sección titulada «T-EXEC-003: Tool Argument Injection»- Descripción: Manipulación de los argumentos de las herramientas a través de prompt injection.
- Mitigaciones actuales: Aprobaciones de ejecución para comandos peligrosos.
- Recomendaciones: Validación de argumentos y uso de llamadas a herramientas parametrizadas.
T-EXEC-004: Exec Approval Bypass
Sección titulada «T-EXEC-004: Exec Approval Bypass»- Descripción: Creación de comandos que evaden la lista de permitidos.
- Vector: Ofuscación de comandos, explotación de alias o manipulación de rutas.
- Afecta a:
exec-approvals.tsy la allowlist de comandos. - Recomendaciones: Implementar normalización de comandos y expandir la blocklist.
3.4 Persistence (AML.TA0006)
Sección titulada «3.4 Persistence (AML.TA0006)»T-PERSIST-001: Malicious Skill Installation
Sección titulada «T-PERSIST-001: Malicious Skill Installation»- Descripción: Publicación de una skill maliciosa en ClawHub.
- Riesgo residual: Crítico (no hay sandboxing y la revisión es limitada).
- Recomendaciones: Integración con VirusTotal (en progreso), sandboxing de skills y revisión de la comunidad.
T-PERSIST-002: Skill Update Poisoning
Sección titulada «T-PERSIST-002: Skill Update Poisoning»- Descripción: Compromiso de una skill popular para enviar una actualización maliciosa.
- Afecta a: Versionado de ClawHub y flujos de auto-update.
- Recomendaciones: Firma de actualizaciones, capacidad de rollback y pinning de versiones.
T-PERSIST-003: Agent Configuration Tampering
Sección titulada «T-PERSIST-003: Agent Configuration Tampering»- Descripción: Modificación de la configuración del agente para mantener el acceso.
- Mitigaciones actuales: Permisos de archivos.
- Recomendaciones: Verificación de integridad de la config y logs de auditoría para cambios.
3.5 Defense Evasion (AML.TA0007)
Sección titulada «3.5 Defense Evasion (AML.TA0007)»T-EVADE-001: Moderation Pattern Bypass
Sección titulada «T-EVADE-001: Moderation Pattern Bypass»- Descripción: Contenido diseñado para evadir los patrones de moderación.
- Vector: Homoglifos Unicode, trucos de codificación o carga dinámica.
- Afecta a:
moderation.tsen ClawHub. - Recomendaciones: Análisis de comportamiento (VirusTotal Code Insight) y detección basada en AST.
T-EVADE-002: Content Wrapper Escape
Sección titulada «T-EVADE-002: Content Wrapper Escape»- Descripción: Contenido que escapa del contexto del wrapper XML.
- Mitigaciones actuales: Etiquetas XML y avisos de seguridad.
- Recomendaciones: Múltiples capas de wrapping y validación en el lado de la salida.
3.6 Discovery (AML.TA0008)
Sección titulada «3.6 Discovery (AML.TA0008)»T-DISC-001: Tool Enumeration
Sección titulada «T-DISC-001: Tool Enumeration»- Descripción: Enumeración de herramientas disponibles mediante prompts.
- Riesgo residual: Bajo (las herramientas suelen estar documentadas).
- Recomendaciones: Controles de visibilidad de herramientas.
T-DISC-002: Session Data Extraction
Sección titulada «T-DISC-002: Session Data Extraction»- Descripción: Extracción de datos sensibles del contexto de la sesión.
- Afecta a: Transcripciones de sesión y ventana de contexto.
- Recomendaciones: Redacción de datos sensibles dentro del contexto.
3.7 Collection & Exfiltration (AML.TA0009, AML.TA0010)
Sección titulada «3.7 Collection & Exfiltration (AML.TA0009, AML.TA0010)»T-EXFIL-001: Data Theft via web_fetch
Sección titulada «T-EXFIL-001: Data Theft via web_fetch»- Descripción: Exfiltración de datos enviándolos a una URL externa.
- Mitigaciones actuales: Bloqueo de SSRF para redes internas.
- Riesgo residual: Alto (se permiten URLs externas).
- Recomendaciones: Allowlisting de URLs y clasificación de datos.
T-EXFIL-002: Unauthorized Message Sending
Sección titulada «T-EXFIL-002: Unauthorized Message Sending»- Descripción: El agente envía mensajes con datos sensibles a terceros.
- Mitigaciones actuales: Gating de mensajería saliente.
- Recomendaciones: Requerir confirmación explícita para nuevos destinatarios.
T-EXFIL-003: Credential Harvesting
Sección titulada «T-EXFIL-003: Credential Harvesting»- Descripción: Una skill maliciosa recolecta credenciales del contexto del agente.
- Riesgo residual: Crítico (las skills se ejecutan con los privilegios del agente).
- Recomendaciones: Sandboxing de skills e isolación de credenciales.
3.8 Impact (AML.TA0011)
Sección titulada «3.8 Impact (AML.TA0011)»T-IMPACT-001: Unauthorized Command Execution
Sección titulada «T-IMPACT-001: Unauthorized Command Execution»- Descripción: Ejecución de comandos arbitrarios en el sistema del usuario.
- Afecta a: Herramienta Bash y ejecución de comandos.
- Mitigaciones actuales: Aprobaciones de ejecución y opción de sandbox Docker.
- Recomendaciones: Sandbox por defecto y mejora de la experiencia de usuario en aprobaciones.
T-IMPACT-002: Resource Exhaustion (DoS)
Sección titulada «T-IMPACT-002: Resource Exhaustion (DoS)»- Descripción: Agotamiento de créditos de API o recursos de cómputo.
- Vector: Flood de mensajes automatizados o llamadas a herramientas costosas.
- Recomendaciones: Rate limits por remitente y presupuestos de costes.
T-IMPACT-003: Reputation Damage
Sección titulada «T-IMPACT-003: Reputation Damage»- Descripción: El agente envía contenido dañino u ofensivo.
- Mitigaciones actuales: Políticas de contenido del proveedor del LLM.
- Recomendaciones: Capa de filtrado de salida y controles de usuario.
Solución de problemas
Sección titulada «Solución de problemas»Si detectas comportamientos extraños, revisa estos problemas comunes:
- Problema: Los tokens están expuestos en el sistema de archivos.
- Solución: Asegúrate de restringir los permisos de
~/.openclaw/credentials/y considera implementar cifrado en reposo.
- Solución: Asegúrate de restringir los permisos de
- Problema: El agente ignora las instrucciones de seguridad del wrapper XML.
- Solución: Implementa múltiples capas de wrapping y añade validación de salida para detectar escapes.
- Problema: Comandos maliciosos pasan el filtro de aprobación.
- Solución: Revisa
exec-approvals.ts, activa el modo sandbox de Docker y no confíes únicamente en la lista de permitidos.
- Solución: Revisa
- Problema: Consumo excesivo de créditos de API.
- Solución: Configura límites de presupuesto en tu proveedor de API y aplica rate limiting en el Gateway.
¿Necesitas ayuda para asegurar tu despliegue? Consulta al AI Setup Assistant.
Próximos pasos
Sección titulada «Próximos pasos»- Configuración de Gateway
- Gestión de Skills en ClawHub
- Seguridad en exec-approvals.ts
- Uso del Docker Sandbox
¿Alguna vez has sentido que integrar herramientas de terceros es como dejar las llaves de tu casa a un extraño? La seguridad en la cadena de suministro es un dolor de cabeza constante. Quieres automatizar procesos, pero te preocupa que un script malicioso termine robando credenciales o ejecutando código no autorizado en tu entorno.
ClawHub maneja este riesgo con una serie de controles técnicos. Aquí te explico cómo funciona el sistema actual y qué estamos haciendo para mejorarlo.
Lo que necesitas saber
Sección titulada «Lo que necesitas saber»Para entender este análisis, es necesario conocer estos componentes mencionados en la documentación técnica:
- El archivo
moderation.tspara el filtrado de patrones. - El requisito obligatorio de un archivo
SKILL.md. - Los límites de bundle de 50MB.
- Las funciones de validación como
sanitizePath()eisTextFile().
Quick Start: Cómo funciona la moderación actual
Sección titulada «Quick Start: Cómo funciona la moderación actual»Si quieres entender el flujo de seguridad en menos de 5 minutos, estos son los pasos que sigue el sistema:
- Validación de identidad: Se ejecuta
requireGitHubAccountAge()para filtrar cuentas creadas recientemente por atacantes. - Limpieza de archivos: El sistema aplica
sanitizePath()para evitar ataques de path traversal y verifica que solo existan archivos de texto conisTextFile(). - Escaneo de patrones: Se revisan los campos
slug,displayName,summary, frontmatter, metadata y rutas de archivos buscando coincidencias con expresiones regulares. - Asignación de estado: Cada Skill recibe un
moderationStatuspara permitir revisiones manuales si es necesario.
4. Análisis de la cadena de suministro de ClawHub
Sección titulada «4. Análisis de la cadena de suministro de ClawHub»4.1 Controles de seguridad actuales
Sección titulada «4.1 Controles de seguridad actuales»| Control | Implementación | Efectividad |
|---|---|---|
| GitHub Account Age | requireGitHubAccountAge() | Media - Dificulta el acceso a atacantes nuevos |
| Path Sanitization | sanitizePath() | Alta - Previene path traversal |
| File Type Validation | isTextFile() | Media - Solo archivos de texto, pero pueden ser maliciosos |
| Size Limits | 50MB total bundle | Alta - Previene el agotamiento de recursos |
| Required SKILL.md | Readme obligatorio | Baja - Solo valor informativo |
| Pattern Moderation | FLAG_RULES en moderation.ts | Baja - Fácil de evadir |
| Moderation Status | Campo moderationStatus | Media - Permite revisión manual |
4.2 Patrones de banderas de moderación
Sección titulada «4.2 Patrones de banderas de moderación»Estos son los patrones actuales definidos en moderation.ts:
// Identificadores conocidos como maliciosos/(keepcold131\/ClawdAuthenticatorTool|ClawdAuthenticatorTool)/i
// Palabras clave sospechosas/(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)/iLimitaciones detectadas:
- El sistema solo revisa el slug, displayName, summary, frontmatter, metadata y rutas de archivos.
- No analiza el contenido real del código de la Skill.
- Las regex simples se pueden evadir con ofuscación.
- No existe un análisis de comportamiento.
4.3 Mejoras planificadas
Sección titulada «4.3 Mejoras planificadas»| Mejora | Estado | Impacto |
|---|---|---|
| Integración con VirusTotal | En progreso | Alto - Análisis de comportamiento con Code Insight |
| Community Reporting | Parcial (existe tabla skillReports) | Medio |
| Audit Logging | Parcial (existe tabla auditLogs) | Medio |
| Badge System | Implementado | Medio - highlighted, official, deprecated, redactionApproved |
5. Matriz de riesgos
Sección titulada «5. Matriz de riesgos»5.1 Probabilidad vs Impacto
Sección titulada «5.1 Probabilidad vs Impacto»| Threat ID | Probabilidad | Impacto | Nivel de Riesgo | Prioridad |
|---|---|---|---|---|
| T-EXEC-001 | Alta | Crítico | Crítico | P0 |
| T-PERSIST-001 | Alta | Crítico | Crítico | P0 |
| T-EXFIL-003 | Media | Crítico | Crítico | P0 |
| T-IMPACT-001 | Media | Crítico | Alto | P1 |
| T-EXEC-002 | Alta | Alto | Alto | P1 |
| T-EXEC-004 | Media | Alto | Alto | P1 |
| T-ACCESS-003 | Media | Alto | Alto | P1 |
| T-EXFIL-001 | Media | Alto | Alto | P1 |
| T-IMPACT-002 | Alta | Medio | Alto | P1 |
| T-EVADE-001 | Alta | Medio | Medio | P2 |
| T-ACCESS-001 | Baja | Alto | Medio | P2 |
| T-ACCESS-002 | Baja | Alto | Medio | P2 |
| T-PERSIST-002 | Baja | Alto | Medio | P2 |
5.2 Cadenas de ataque en la ruta crítica
Sección titulada «5.2 Cadenas de ataque en la ruta crítica»Cadena 1: Robo de datos basado en Skills
T-PERSIST-001 → T-EVADE-001 → T-EXFIL-003
(Publicar Skill maliciosa) → (Evadir moderación) → (Recolección de credenciales)
Cadena 2: Prompt Injection hacia RCE
T-EXEC-001 → T-EXEC-004 → T-IMPACT-001
(Inyectar prompt) → (Bypass de aprobación de ejecución) → (Ejecutar comandos)
Cadena 3: Inyección indirecta vía contenido obtenido
T-EXEC-002 → T-EXFIL-001 → Exfiltración externa
(Envenenar contenido de URL) → (El agente obtiene y sigue instrucciones) → (Datos enviados al atacante)
6. Resumen de recomendaciones
Sección titulada «6. Resumen de recomendaciones»6.1 Inmediatas (P0)
Sección titulada «6.1 Inmediatas (P0)»| ID | Recomendación | Aborda |
|---|---|---|
| R-001 | Completar integración con VirusTotal | T-PERSIST-001, T-EVADE-001 |
| R-002 | Implementar sandboxing de Skills | T-PERSIST-001, T-EXFIL-003 |
| R-003 | Validación de salida para acciones sensibles | T-EXEC-001, T-EXEC-002 |
6.2 A corto plazo (P1)
Sección titulada «6.2 A corto plazo (P1)»| ID | Recomendación | Aborda |
|---|---|---|
| R-004 | Implementar rate limiting | T-IMPACT-002 |
| R-005 | Cifrado de tokens en reposo | T-ACCESS-003 |
| R-006 | Mejorar UX y validación de aprobación de ejecución | T-EXEC-004 |
| R-007 | Allowlisting de URLs para web_fetch | T-EXFIL-001 |
6.3 A medio plazo (P2)
Sección titulada «6.3 A medio plazo (P2)»| ID | Recomendación | Aborda |
|---|---|---|
| R-008 | Verificación criptográfica de canales | T-ACCESS-002 |
| R-009 | Verificación de integridad de configuración | T-PERSIST-003 |
| R-010 | Firma de actualizaciones y fijación de versiones | T-PERSIST-002 |
Solución de problemas
Sección titulada «Solución de problemas»- Problema: El sistema marca una Skill legítima como maliciosa.
- Solución: Revisa si el
displayNameo elsummarycontienen términos bloqueados en la regex demoderation.ts(como “password” o “webhook”).
- Solución: Revisa si el
- Problema: No se puede subir el bundle.
- Solución: Verifica que el tamaño total no exceda los 50MB y que todos los archivos sean detectados correctamente por
isTextFile().
- Solución: Verifica que el tamaño total no exceda los 50MB y que todos los archivos sean detectados correctamente por
¿Necesitas ayuda para configurar estos controles? Prueba nuestro AI Setup Assistant.
Próximos pasos
Sección titulada «Próximos pasos»- Integración con VirusTotal y Behavioral Analysis
- Guía de Sandboxing para Skills
- Configuración de URL Allowlisting
- Implementación de Audit Logs
¿Alguna vez has sentido que proteger una aplicación de IA es como intentar atrapar sombras? Es difícil saber qué ataques son reales y, sobre todo, en qué parte del código se detienen estas amenazas.
Tener una referencia clara de dónde reside la lógica de seguridad te ayuda a auditar tu sistema sin perder tiempo buscando entre carpetas interminables. Aquí tienes los detalles técnicos para entender cómo OpenClaw se defiende.
Requisitos previos
Sección titulada «Requisitos previos»- Acceso al código fuente de OpenClaw.
- Conocimiento básico del framework MITRE ATLAS.
Inicio rápido
Sección titulada «Inicio rápido»Para asegurar tu implementación en 5 minutos, sigue esta ruta:
- Identifica la amenaza específica en la tabla de mapeo ATLAS.
- Localiza el archivo de seguridad correspondiente en la estructura de directorios
src/. - Revisa la lógica de validación en los archivos marcados como Critical.
- Reporta cualquier vulnerabilidad detectada a security@openclaw.ai.
7. Appendices
Sección titulada «7. Appendices»7.1 ATLAS Technique Mapping
Sección titulada «7.1 ATLAS Technique Mapping»Esta tabla vincula las amenazas de OpenClaw con el framework estándar de la industria para sistemas de IA.
| ATLAS ID | Technique Name | OpenClaw Threats |
|---|---|---|
| AML.T0006 | Active Scanning | T-RECON-001, T-RECON-002 |
| AML.T0009 | Collection | T-EXFIL-001, T-EXFIL-002, T-EXFIL-003 |
| AML.T0010.001 | Supply Chain: AI Software | T-PERSIST-001, T-PERSIST-002 |
| AML.T0010.002 | Supply Chain: Data | T-PERSIST-003 |
| AML.T0031 | Erode AI Model Integrity | T-IMPACT-001, T-IMPACT-002, T-IMPACT-003 |
| AML.T0040 | AI Model Inference API Access | T-ACCESS-001, T-ACCESS-002, T-ACCESS-003, T-DISC-001, T-DISC-002 |
| AML.T0043 | Craft Adversarial Data | T-EXEC-004, T-EVADE-001, T-EVADE-002 |
| AML.T0051.000 | LLM Prompt Injection: Direct | T-EXEC-001, T-EXEC-003 |
| AML.T0051.001 | LLM Prompt Injection: Indirect | T-EXEC-002 |
7.2 Key Security Files
Sección titulada «7.2 Key Security Files»Si necesitas auditar o modificar la seguridad, estos son los archivos donde reside la lógica principal.
| Path | Purpose | Risk Level |
|---|---|---|
src/infra/exec-approvals.ts | Lógica de aprobación de comandos | Critical |
src/gateway/auth.ts | Autenticación del Gateway | Critical |
src/web/inbound/access-control.ts | Control de acceso al canal | Critical |
src/infra/net/ssrf.ts | Protección contra SSRF | Critical |
src/security/external-content.ts | Mitigación de Prompt Injection | Critical |
src/agents/sandbox/tool-policy.ts | Aplicación de políticas de herramientas | Critical |
convex/lib/moderation.ts | Moderación de ClawHub | High |
convex/lib/skillPublish.ts | Flujo de publicación de Skills | High |
src/routing/resolve-route.ts | Aislamiento de sesiones | Medium |
7.3 Glossary
Sección titulada «7.3 Glossary»| Term | Definition |
|---|---|
| ATLAS | Paisaje de amenazas adversarias de MITRE para sistemas de IA |
| ClawHub | El marketplace de Skills de OpenClaw |
| Gateway | Capa de autenticación y enrutamiento de mensajes de OpenClaw |
| MCP | Model Context Protocol: interfaz del proveedor de herramientas |
| Prompt Injection | Ataque donde se insertan instrucciones maliciosas en el input |
| Skill | Extensión descargable para agentes de OpenClaw |
| SSRF | Server-Side Request Forgery |
Este modelo de amenazas es un documento vivo. Reporta problemas de seguridad a security@openclaw.ai.
Solución de problemas
Sección titulada «Solución de problemas»Si detectas un comportamiento inesperado en las validaciones o una vulnerabilidad en los archivos críticos mencionados, envía un correo a security@openclaw.ai para que el equipo pueda analizarlo.
¿Necesitas ayuda para configurar estos controles? Prueba el AI Setup Assistant.
Próximos pasos
Sección titulada «Próximos pasos»OpenClaw Expert
Sigues atascado?
Si esta pagina no resolvio tu caso, pregunta a OpenClaw Expert para pasos concretos.