Miles de empresas dependen del marco Ray para escalar y gestionar cargas de trabajo de IA complejas y intensivas en computación. De hecho, es difícil encontrar un modelo de lenguaje grande (LLM) que no haya sido desarrollado utilizando Ray. Sin embargo, estas cargas suelen contener datos sensibles, los cuales los investigadores han identificado como vulnerables debido a una grave falla de seguridad (CVE) dentro de este marco de computación unificado de código abierto.
Durante los últimos siete meses, esta falla ha permitido a los atacantes explotar los entornos productivos de IA, obteniendo acceso a potencia de cómputo, credenciales, contraseñas, claves, tokens y una multitud de otra información sensible, según investigaciones de Oligo Security. Esta vulnerabilidad, denominada "ShadowRay", sigue siendo objeto de debate. Está clasificada como una “vulnerabilidad sombra”, lo que significa que no es reconocida como una amenaza y carece de un parche oficial, lo que hace que no aparezca en los procesos de escaneo estándar.
Este caso marca “la primera instancia conocida de cargas de trabajo de IA siendo explotadas activamente a través de vulnerabilidades en la infraestructura de IA contemporánea”, según los investigadores Avi Lumelsky, Guy Kaplan y Gal Elbaz. Ellos afirman: “Cuando los atacantes acceden a un clúster de producción Ray, es un gran premio. Los valiosos datos de la empresa combinados con la ejecución remota de código crean oportunidades de monetización, todo mientras permanecen indetectados”.
Un Punto Ciego Significativo
Muchas organizaciones dependen de Ray para cargas de trabajo de IA a gran escala, datos y SaaS, incluyendo Amazon, Instacart, Shopify, LinkedIn y OpenAI—todas las cuales entrenaron su modelo GPT-3 utilizando Ray. Este marco es esencial para modelos con miles de millones de parámetros que requieren una considerable potencia computacional y no pueden ejecutarse en una sola máquina. Ray, mantenido por Anyscale, apoya cargas de trabajo distribuidas para el entrenamiento, servicio y ajuste de diversos modelos de IA. Los usuarios no necesitan un amplio conocimiento de Python, y el proceso de instalación es sencillo con mínimas dependencias.
Los investigadores de Oligo se refieren a Ray como la “navaja suiza para Pythonistas y profesionales de IA”. A pesar de sus ventajas, la vulnerabilidad ShadowRay hace que esta dependencia en Ray sea aún más preocupante. Conocida como CVE-2023-48022, la vulnerabilidad surge de una autorización insuficiente en la API de Ray Jobs, lo que la expone a ataques de ejecución remota de código. Cualquiera con acceso al panel de control puede ejecutar trabajos arbitrarios sin permisos.
Aunque esta vulnerabilidad fue reportada a Anyscale junto con otras cuatro a finales de 2023, la única que queda sin resolver es CVE-2023-48022. Anyscale disputó la vulnerabilidad, alegando que representa un comportamiento esperado y una característica del producto que facilita la activación de trabajos y la ejecución dinámica de código dentro de un clúster. Anyscale sostiene que los paneles no deberían ser accesibles públicamente o deberían estar restringidos a usuarios de confianza; por lo tanto, Ray carece de autorización porque asume la operación dentro de un entorno seguro con “lógica de enrutamiento adecuada” mediante aislamiento de red, espacios de nombres de Kubernetes, reglas de firewall o grupos de seguridad.
Esta decisión ilustra “la complejidad de equilibrar la seguridad y la usabilidad en el desarrollo de software”, destacan los investigadores de Oligo, subrayando la necesidad de considerar cuidadosamente al modificar sistemas críticos como Ray. Además, dado que las vulnerabilidades disputadas a menudo evaden la detección, muchos escáneres de seguridad las pasan por alto. Los investigadores de Oligo descubrieron que ShadowRay no apareció en múltiples bases de datos, incluida la Base de Datos de Vulnerabilidades de Código Abierto de Google (OSV), ni fue visible para soluciones de pruebas de seguridad de aplicaciones estáticas (SAST) y análisis de composición de software (SCA). “Esto creó un punto ciego: los equipos de seguridad no eran conscientes de los riesgos potenciales”, resaltaron los investigadores, añadiendo que “los expertos en IA no son expertos en seguridad, dejándolos vulnerables a los riesgos que plantean los marcos de IA”.
Desde Cargas de Trabajo de Producción hasta Tokens Críticos
Los investigadores revelaron que servidores comprometidos filtraron un "tesoro" de información sensible, incluyendo:
- Interrupciones en las cargas de trabajo de producción de IA, lo que lleva a una integridad o precisión del modelo comprometida durante el entrenamiento.
- Acceso a entornos en la nube sensibles (AWS, GCP, Azure) que podrían exponer bases de datos de clientes y datos de producción sensibles.
- Acceso a la API de Kubernetes, permitiendo infecciones de cargas de trabajo en la nube o extracción de secretos de Kubernetes.
- Credenciales sensibles para plataformas como OpenAI, Stripe y Slack.
- Credenciales de base de datos que permiten descargas o modificaciones silenciosas de bases de datos completas.
- Claves SSH privadas para acceder a máquinas adicionales para actividades maliciosas.
- Tokens de OpenAI, que podrían agotar créditos de cuenta.
- Tokens de Hugging Face, que proporcionan acceso a repositorios privados, facilitando ataques a la cadena de suministro.
- Tokens de Stripe que podrían ser explotados para agotar cuentas de pago.
- Tokens de Slack, que podrían usarse para mensajería no autorizada o lectura.
Los investigadores informaron que muchas GPUs comprometidas son actualmente escasas y costosas. Han identificado “cientos” de clústeres comprometidos, utilizados principalmente en minería de criptomonedas. “Los atacantes apuntan a estos sistemas no solo por la valiosa información, sino también porque las GPUs son caras y difíciles de adquirir, especialmente hoy en día”, señalaron los investigadores, con algunos precios de GPUs bajo demanda en AWS alcanzando un costo anual de $858,480. Con los atacantes teniendo siete meses para explotar este hardware, las estimaciones sugieren que las máquinas comprometidas y la potencia de cómputo podrían valorarse en $1 mil millones.
Abordando Vulnerabilidades Sombra
Los investigadores de Oligo reconocen que “las vulnerabilidades sombra siempre existirán” y que los indicadores de explotación pueden variar. Recomiendan varias acciones para las organizaciones:
- Operar Ray dentro de un entorno seguro y de confianza.
- Implementar reglas de firewall y grupos de seguridad para prevenir accesos no autorizados.
- Monitorear continuamente los clústeres de IA y los entornos de producción en busca de anomalías.
- Usar un proxy que agregue una capa de autorización si un panel de Ray necesita ser accesible públicamente.
- Nunca asumir que la seguridad predeterminada es suficiente.
En última instancia, enfatizan: “La carga técnica de asegurar el código abierto recae en ti. No te bases únicamente en los mantenedores”.