Log in to leave a comment
No posts yet
Ha llegado la era en la que los agentes de IA introducen comandos directamente en mi terminal y modifican archivos. Claude Code de Anthropic es innovador. Sin embargo, esta innovación es un arma de doble filo. Desde la perspectiva de la ingeniería de seguridad, ejecutar una IA con privilegios totales en mi sistema es como plantar la semilla de un desastre masivo.
Un simple error o un episodio de alucinación podrían exponer claves privadas .ssh al exterior o filtrar credenciales de AWS almacenadas en variables de entorno. Esto no es una hipótesis teórica, sino una amenaza real. La solución es clara: hay que enjaular al agente de IA. Por eso necesitamos Incus, que ofrece seguridad a nivel de sistema más allá del simple aislamiento de Docker.
El lugar donde se ejecuta el agente de IA determina el éxito o fracaso de la seguridad de los datos. Ejecutarlo directamente en la terminal local es, de hecho, como dejar la puerta de casa abierta.
| Elemento de comparación | Terminal del host | Contenedor Docker | Contenedor de sistema Incus |
|---|---|---|---|
| Límite de aislamiento | Ninguno (herencia de permisos) | Aislamiento a nivel de proceso | Aislamiento de sistema a nivel de kernel |
| Exposición de secretos | Muy alta | Baja | Muy baja |
| Persistencia de estado | Permanente | Volátil | Permanente |
| Gestión de permisos | Exposición de permisos de usuario | Riesgo de abuso de Root | Modo sin privilegios forzado |
De hecho, según un informe de seguridad publicado en 2024, más del 60% de los casos de abuso de privilegios por parte de agentes autónomos se debieron a configuraciones inadecuadas del sandbox. Docker es ligero, pero muestra sus limitaciones cuando el agente necesita tocar servicios del sistema o gestionar dependencias de paquetes complejas. Por otro lado, Incus ofrece un entorno de sistema operativo independiente similar al de una máquina virtual (VM), pero con mucha menos sobrecarga.
La razón por la que los ingenieros de seguridad sénior eligen Incus en lugar de Docker es clara: Docker es una herramienta para desplegar aplicaciones, no una prisión para encerrar agentes en los que no se confía.
El núcleo de Incus son los User Namespaces (espacios de nombres de usuario). Dentro del contenedor, parece tener privilegios de root (UID 0), pero en el sistema host real, se mapea a un usuario con un número alto (por ejemplo, UID 1,000,000) que no tiene ningún permiso. Incluso si la IA escapa del contenedor, para el sistema host no será más que un usuario común de identidad desconocida.
Los contenedores Docker pierden sus datos al ser eliminados. Sin embargo, agentes como Claude Code necesitan recordar el contexto de tareas anteriores y las herramientas instaladas. Como Incus es un contenedor de sistema, todos los estados se conservan aunque se apague y encienda el contenedor. Es como proporcionarle un cerebro con continuidad al agente.
Dado que Incus utiliza funciones del kernel de Linux, no puede ejecutarse directamente en Mac. En su lugar, utilizamos Colima, una capa de virtualización de Linux ligera, como puente.
Primero, instale las herramientas necesarias y asigne recursos adecuados para las tareas de IA. Si no se asigna suficiente CPU y memoria, la velocidad de inferencia del agente disminuirá notablemente.
bash brew install colima incus colima start --cpu 4 --memory 8 --runtime incus --network-address
Conecte el servidor Incus dentro de la VM de Colima para poder controlarlo desde la terminal de Mac.
colima ssh y ejecute sudo incus admin init --auto.incus remote add colima-vm <IP>.Es común que se bloquee el acceso a Internet. Esto suele ocurrir porque, en entornos donde está instalado Docker, la política de iptables cambia a DROP. Debe abrir el paso con el siguiente comando:
bash sudo firewall-cmd --zone=trusted --change-interface=incusbr0 --permanent sudo firewall-cmd --reload
Veremos a través de escenarios específicos cómo Incus protege el sistema cuando un agente de IA se vuelve malicioso o es hackeado.
El agente intenta ejecutar printenv alegando que está depurando, o una librería maliciosa intenta robar las claves de AWS en memoria.
Un script intenta rastrear la ruta ~/.ssh/id_rsa para enviarla al exterior.
La adopción de IA sin una base de seguridad es una deuda técnica que volverá en el futuro como un coste mayor. Por muy dulce que sea la productividad, no podemos entregarle las llaves de casa a la IA por completo. El sandbox de Incus es el cinturón de seguridad mínimo que un desarrollador en la era de la IA debe poseer.
Detenga inmediatamente Claude Code si se está ejecutando en su terminal local. Migrar a un entorno Incus aislado es la forma más segura de proteger su código, sus activos y su carrera. Le animo a construir hoy mismo su propio laboratorio de desarrollo seguro con el comando colima start --edit.