
Investigadores de ciberseguridad han identificado una grave vulnerabilidad de inyección de avisos indirecta en GitLab Duo, el asistente de inteligencia artificial (IA) integrado en la plataforma de desarrollo GitLab. Esta falla podría haber permitido a atacantes robar código fuente de proyectos privados, exfiltrar vulnerabilidades críticas y redirigir a las víctimas a sitios web maliciosos mediante la inserción de HTML no confiable en las respuestas del asistente.
¿Qué es GitLab Duo y cómo funciona?
GitLab Duo es un asistente de codificación basado en IA, diseñado para ayudar a los desarrolladores a escribir, revisar y modificar código de forma eficiente. Introducido en junio de 2023, este sistema utiliza los modelos de lenguaje de Claude, desarrollados por Anthropic, y forma parte del esfuerzo de GitLab por integrar inteligencia artificial en sus flujos de trabajo de DevOps.
La vulnerabilidad: inyección de avisos indirecta
Según la firma Legit Security, el asistente GitLab Duo Chat era vulnerable a un tipo de ataque conocido como inyección de avisos indirecta. A diferencia de las inyecciones directas, este tipo de ataques introduce instrucciones maliciosas ocultas en contextos aparentemente inofensivos, como comentarios, descripciones de issues, mensajes de confirmación o incluso fragmentos de código. Al procesar estos elementos, la IA ejecuta sin saberlo comandos diseñados por el atacante.
Impacto potencial
Los efectos de esta vulnerabilidad son significativos:
- Robo de código fuente privado de proyectos confidenciales.
- Manipulación de las sugerencias de código que GitLab Duo muestra a otros usuarios.
- Filtración de vulnerabilidades de día cero aún no divulgadas públicamente.
- Inyección de HTML malicioso que puede generar enlaces a sitios de phishing o ejecutar código JavaScript no autorizado.
Técnicas de evasión utilizadas por los atacantes
Los atacantes utilizaron técnicas avanzadas para ocultar sus instrucciones maliciosas:
- Codificación en Base16 y Unicode.
- Uso de formatos como KaTeX en texto blanco.
- Aprovechamiento de la representación de Markdown en streaming, que permite interpretar HTML mientras se genera la respuesta del asistente.
Estas técnicas complicaban la detección de los avisos inyectados y permitían que se ejecutaran silenciosamente en el navegador del usuario.
Cómo fue posible la explotación
La vulnerabilidad radica en que GitLab Duo analiza todo el contexto visible en la página, sin realizar un filtrado adecuado de los datos introducidos por los usuarios. Esto incluye descripciones, comentarios y código fuente. Esta falta de sanitización permitió que los atacantes sembraran instrucciones maliciosas en múltiples partes del entorno de desarrollo.
El investigador Omer Mayraz señaló que esto también permitía incluir código JavaScript malicioso dentro de los fragmentos sugeridos por Duo o disfrazar URL maliciosas como enlaces seguros, redirigiendo a las víctimas a páginas falsas de inicio de sesión para el robo de credenciales.
Filtración de datos mediante solicitudes de fusión
Legit Security demostró que era posible insertar comentarios maliciosos en las descripciones de las solicitudes de fusión (merge requests). Cuando GitLab Duo procesaba estas solicitudes, el código fuente sensible podía ser enviado automáticamente a un servidor controlado por los atacantes.
Esto fue posible gracias al uso de Markdown de streaming, que interpretaba las respuestas en HTML mientras se generaban, permitiendo la ejecución inadvertida de código HTML malicioso.
Medidas tomadas por GitLab
Tras una divulgación responsable realizada el 12 de febrero de 2025, GitLab corrigió la vulnerabilidad. Sin embargo, el incidente destaca los riesgos asociados con la incorporación de asistentes de IA en procesos de desarrollo sensibles, especialmente en plataformas utilizadas por grandes equipos y empresas.
"Esta vulnerabilidad pone de relieve el doble filo de los asistentes de IA como GitLab Duo", afirmó Mayraz. "Pueden ser herramientas poderosas, pero también introducen vectores de ataque que antes no existían".
Contexto más amplio: otros incidentes similares
Este hallazgo coincide con otras investigaciones recientes sobre asistentes de IA:
- Microsoft Copilot para SharePoint también fue señalado por permitir a atacantes acceder a documentos confidenciales incluso desde archivos con permisos restringidos.
- ElizaOS (anteriormente Ai16z), un framework de agentes IA descentralizados para Web3, puede ser manipulado con instrucciones ocultas que afectan múltiples usuarios y provocan transferencias de activos indeseadas.
- Se ha identificado que los modelos de lenguaje también son vulnerables a técnicas de jailbreaking y alucinaciones, donde la IA produce respuestas erróneas o inventadas sin base en los datos de entrada.
En fin, la exposición de GitLab Duo a ataques por inyección de avisos indirecta revela los desafíos en la seguridad de sistemas basados en inteligencia artificial. Aunque GitLab actuó con rapidez para resolver el problema, el incidente subraya la necesidad de aplicar controles de seguridad más estrictos en entornos de desarrollo con asistencia de IA.
Las organizaciones que adopten soluciones de IA deben considerar no solo los beneficios en productividad, sino también los riesgos latentes que pueden comprometer la integridad de sus sistemas y la privacidad de sus datos.
Fuente: No tienes permitido ver enlaces. Registrate o Entra a tu cuenta