Falla en DeepSeek Harness

Una vulnerabilidad crítica en DeepSeek Harness, la herramienta de código abierto de DeepSeek para ejecutar agentes de codificación de IA, permite a estos agentes desactivar su propia sandbox con un único comando. Este entorno de ejecución está diseñado para limitar las acciones de un agente trabajando con archivos no confiables, evitando que pueda realizar modificaciones fuera de su espacio de trabajo.

La vulnerabilidad, registrada como CVE-2026-82533, fue corregida el 27 de agosto, pero hasta entonces, un agente podía eludir estas restricciones accediendo a la interfaz web de la herramienta desde la misma máquina. Esto permitía que los comandos se ejecutaran fuera de la sandbox sin necesidad de aprobación. Según un informe de OX Research, un solo comando era suficiente para invocar la interfaz local de la herramienta y cambiar la configuración de la sesión del agente a un modo conocido como danger-full-access, desactivando así la sandbox y eliminando los mensajes de aprobación.

Detalles de la vulnerabilidad

Los comandos estándar no requerían aprobación inicialmente, y esta solo se aplicaba cuando se solicitaba un acceso más amplio del que la sesión ya tenía. En este caso, el comando no solicitaba dicho acceso, sino que simplemente modificaba la configuración de la sesión. OX Research verificó que la sandbox estaba operando correctamente antes de que se produjera la fuga, ejecutando dos sesiones desde la misma configuración predeterminada y enviando ambos la misma orden. El agente que realizó la llamada logró escribir en una carpeta fuera de su espacio de trabajo, mientras que el otro fue bloqueado.

La sandbox solo limita el acceso a archivos. La documentación de referencia para esta versión afectada aclara que, bajo la configuración predeterminada, las escrituras permanecen dentro del espacio de trabajo y las carpetas temporales, mientras que "las lecturas y el acceso a la red no están confinados". Esto dejó la interfaz de la herramienta accesible desde dentro de la sandbox.

Acceso no autenticado

La herramienta proporciona a la consola del agente la dirección de esta interfaz y el identificador de la sesión actual, por lo que el agente no necesita buscarlos. No había autenticación en la interfaz. En la versión afectada, la verificación que determinaba si una solicitud podía acceder a ella simplemente leía el encabezado Host de la solicitud, sin verificar el origen de la conexión. Un comentario en el archivo indica que esta verificación "no es una capa de autenticación". Esto permitió que una máquina externa pudiera hacerse pasar por local y controlar al agente.

La línea de comandos de la herramienta no escuchaba en todas las interfaces de red, por lo que acceder a ella desde fuera requería que el usuario hubiera redirigido o enviado el puerto a través de un túnel, un SSH forward o un editor. La misma interfaz también permitía solicitar la descarga del registro completo de una sesión.

Soluciones y recomendaciones

Las versiones afectadas son las 0.1.1-rc.2 y anteriores. Aunque se menciona la versión 0.1.2-alpha.1 como la corregida, esta nunca se publicó en el registro de npm. La primera versión corregida disponible en npm es la 0.1.2-alpha.2, lanzada el 30 de agosto, seguida de la versión 0.1.2-rc.1 el 3 de septiembre.

Se recomienda instalar la versión 0.1.2-alpha.2 o posterior. Si se utilizó una aplicación de escritorio de terceros, es importante verificar qué versión se incluye. En caso de no poder actualizar, se aconseja desactivar la interfaz web cuando no esté en uso y eliminar cualquier túnel, proxy o redirección de puerto que permita su acceso.

La corrección implementada añade una verificación de identidad a la interfaz, donde ahora se imprime un token de un solo uso en la dirección de inicio. El navegador intercambia este token por una cookie firmada, y cada llamada a la interfaz requiere dicha cookie. Sin embargo, la sandbox no ha sido modificada sustancialmente; sigue permitiendo lecturas y accesos a la red sin restricciones.

La naturaleza del DeepSeek Harness, al ejecutar los comandos de un agente bajo la cuenta que lo inició, lo convierte en un objetivo atractivo para los atacantes, dado que proporciona acceso a una shell.

Fuente

Ver noticia original