Microsoft corrige una vulnerabilidad en AutoGen Studio que permitía ejecución de código

Una cadena de vulnerabilidades denominada AutoJack en la interfaz AutoGen Studio de Microsoft, utilizada para prototipar agentes de IA, podría permitir a los atacantes manipular un agente para que ejecute comandos arbitrarios en su sistema anfitrión simplemente visitando una página web maliciosa.

AutoGen Studio es el componente gráfico de AutoGen, el framework de código abierto de Microsoft para construir sistemas de IA multiagente. El framework permite a los desarrolladores crear agentes de IA que pueden colaborar entre sí, usar herramientas, navegar por la web, ejecutar código, interactuar con APIs y conectarse a sistemas externos.

El proyecto es muy popular, con más de 59.000 estrellas y casi 9.000 forks en GitHub. Microsoft señala que el impacto de AutoJack fue limitado porque el problema se abordó durante el desarrollo.

"Este problema fue identificado y solucionado antes de cualquier publicación en PyPI, por lo que el código afectado nunca llegó a distribuirse en un paquete publicado. La exposición se limitó a los desarrolladores que construyeron AutoGen Studio desde la rama principal de GitHub durante el período entre la incorporación del plugin MCP y la confirmación de la corrección."

Detalles de AutoJack

Microsoft describe el ataque AutoJack como basado en tres debilidades separadas en AutoGen Studio:

  • El WebSocket MCP confía en conexiones originadas desde localhost, lo que permite que un agente de navegación que se ejecuta en la misma máquina sea engañado para cargar JavaScript controlado por el atacante que parece provenir de una fuente local confiable.
  • El middleware de autenticación de AutoGen Studio excluye las rutas /api/mcp/* de las comprobaciones de autenticación, mientras que el endpoint WebSocket MCP no implementa su propia autenticación, quedando accesible sin credenciales.
  • El WebSocket MCP acepta un valor server_params codificado en base64 desde la URL y lo pasa al código de lanzamiento de procesos, lo que permite a los atacantes especificar y ejecutar comandos arbitrarios de PowerShell, Bash o ejecutables.

En un escenario de ataque realista presentado por Microsoft, un JavaScript malicioso se ejecuta en una página visitada por un agente de IA del desarrollador, que abre una conexión WebSocket al endpoint MCP local de AutoGen Studio. El payload indica a AutoGen Studio que lance un comando elegido por el atacante con los privilegios de la cuenta del desarrollador. Para demostrar el efecto, Microsoft mostró el lanzamiento de la Calculadora de Windows.

Cabe destacar que los usuarios que instalaron AutoGen Studio desde el Python Package Index (PyPI) nunca estuvieron expuestos al código afectado. El paquete actual más reciente, autogenstudio 0.4.2.2, no contiene las debilidades de AutoJack. Sin embargo, los desarrolladores que construyeron AutoGen directamente desde GitHub durante una ventana limitada antes de la confirmación b047730 se vieron afectados por un breve período.

Microsoft recomienda a los usuarios que instalen AutoGen Studio que lo desplieguen "estrictamente como un prototipo de desarrollador en un entorno aislado" que no esté expuesto a internet. Además, el mantenedor enfatiza que el proyecto no debe ejecutarse con un agente capaz de navegar o ejecutar código arbitrario en una máquina con contenido no confiable.

"Ejecute AutoGen Studio bajo una cuenta de bajos privilegios en un perfil de usuario o contenedor aislado, de modo que cualquier futura RCE impulsada por un agente quede contenida en un perfil de desarrollo, no en su cuenta de uso diario," aconseja Microsoft.
image
image
Origin bypass via the AI agent
Origin bypass via the AI agent
AutoJack demo launching Calc.exe
AutoJack demo launching Calc.exe
article image
article image