Un reciente incidente reportado en Reddit ha revelado un fallo crítico en el agente de inteligencia artificial Google Antigravity. Durante el uso del “Modo Turbo”, el agente eliminó accidentalmente la unidad D completa de un usuario.
El usuario solicitó simplemente la limpieza de una carpeta específica, .vite. Sin embargo, los registros internos del agente muestran la ejecución del comando rmdir /s /q d:, que corresponde a la eliminación completa de la raíz de la unidad D. Ante la pregunta del usuario sobre si había autorizado la eliminación de toda la unidad, el agente respondió con una serie de autoanálisis confusos, evidenciando problemas en la interpretación de permisos, el análisis de rutas y la ejecución de comandos.
Tarea solicitada por el usuario
- Eliminación de la carpeta de caché
.viteen una ruta específica, por ejemplo:d:...node_modules.vite - El usuario solicitó al agente que realizara la tarea, ya que no comprendía el paso número tres de las instrucciones.
- Esta solicitud no implicaba, en ningún caso, la autorización para eliminar toda la unidad D.
Causas principales del incidente
- El “Modo Turbo” fue diseñado para permitir la ejecución automática de comandos del sistema operativo.
- La falta de validación de rutas y restricciones de ámbito de permisos permitía la eliminación de archivos fuera de la carpeta del proyecto.
- No existía un procedimiento de confirmación adicional para comandos de alto riesgo como
rmdir /s. - El modelo de lenguaje (LLM) subyacente no comprendió completamente el significado real del comando generado internamente.
¿Por qué es un problema grave?
- El agente amplió la solicitud de eliminación de archivos a la eliminación completa de la unidad, a pesar de que el usuario solo había solicitado una tarea específica.
- El propio agente reconoció un “problema de permisos” en los registros, pero fue después de haber ejecutado el comando.
- El diseño que vincula directamente las decisiones del LLM con los permisos reales del sistema de archivos se ha revelado como un factor de riesgo crítico.
Problemas estructurales señalados por la comunidad
- El agente de IA no fuerza el ámbito del directorio de operación a la raíz del proyecto.
- No existe una lista de denegación (deny-list) ni una etapa de confirmación para comandos peligrosos.
- El agente está diseñado para ejecutar comandos directamente en la unidad local real, en lugar de en un entorno aislado.
- El modelo puede juzgar la naturaleza destructiva de un comando a nivel lingüístico, pero no puede verificarlo antes de la ejecución.
Lecciones aprendidas
- La función de ejecución automática de comandos debe estar desactivada por defecto.
- Las herramientas de IA que interactúan con el sistema de archivos deben utilizarse únicamente en entornos aislados como máquinas virtuales (VM), Subsistema de Windows para Linux (WSL) o contenedores.
- Los desarrolladores deben implementar:
- Bloqueo del acceso a rutas externas al proyecto.
- Bloqueo de comandos de eliminación, formateo y partición.
- Verificación mediante resumen en lenguaje natural antes de la ejecución.
Conclusión
- El usuario no autorizó la eliminación de la unidad D. El incidente es el resultado de un fallo estructural debido a la falta de salvaguardias en el diseño, la verificación y la seguridad, al delegar permisos reales del sistema a un agente LLM.
- Este caso servirá como referencia importante para el desarrollo de todas las herramientas y entornos de desarrollo integrados (IDE) basados en agentes con funciones similares.
