¿Qué sucede cuando una empresa de IA se convierte en víctima de una vulnerabilidad en la cadena de suministro de software?

¿Qué ocurre cuando una empresa de IA sufre una vulnerabilidad en su cadena de suministro de software?

El 20 de marzo de 2023, OpenAI suspendió temporalmente la popular herramienta de inteligencia artificial generativa ChatGPT durante unas horas. Más tarde admitió que la razón de la interrupción fue una vulnerabilidad en la cadena de suministro de software que se originó en la biblioteca de almacenamiento de datos en memoria ‘Redis’ de código abierto.

Como resultado de esta vulnerabilidad, hubo un intervalo de tiempo (entre la 1 y las 10 a.m. PST del 20 de marzo) en el que los usuarios podían acceder accidentalmente a los títulos del historial de chat de otros usuarios y posiblemente exponer información relacionada con el pago, como nombres, direcciones de correo electrónico, direcciones de pago, tipo de tarjeta de crédito y los últimos cuatro dígitos del número de la tarjeta de pago.

Este fue un error relativamente menor que se detectó y solucionó rápidamente. Teniendo en cuenta la creciente popularidad de ChatGPT y otros modelos de lenguaje generativos, ¿qué consecuencias podría tener un ataque más dirigido a la cadena de suministro de software?

En este artículo, analizaremos qué sucedió exactamente el 20 de marzo y cómo se expuso la información del usuario. También haremos un breve viaje imaginario a un ataque potencial más grave y veremos qué información se puede exponer y qué se puede hacer para ayudar a prevenir casos similares. Terminaremos con algunas sugerencias generales de seguridad para la cadena de suministro de software que pueden ser relevantes sin importar el software en el que trabaje su empresa.

Esto es lo que sucedió

Como casi cualquier otra empresa de software, el código de OpenAI depende en gran medida de bibliotecas y código de código abierto. En este caso, el error se descubrió en la biblioteca de cliente Redis de código abierto, redis-py. Aquí está la descripción del error tal como aparece en el relato de la propia empresa:

  • OpenAI utiliza Redis para almacenar en caché la información del usuario en su servidor para no tener que consultar su base de datos en cada solicitud.
  • Se utilizan clústeres de Redis para distribuir esta carga entre varias instancias de Redis.
  • La biblioteca redis-py se utiliza para interactuar con Redis desde el servidor Python de la empresa, que se ejecuta con Asyncio.
  • La biblioteca mantiene una piscina compartida de conexiones entre el servidor y el clúster y recicla una conexión para ser utilizada en otra solicitud una vez que se ha completado.
  • Cuando se utiliza Asyncio, las solicitudes y respuestas con redis-py se comportan como dos colas: el solicitante coloca una solicitud en la cola de entrada, extrae una respuesta de la cola de salida y luego devuelve la conexión a la piscina.
  • Supongamos que se cancela una solicitud después de que se haya colocado en la cola de entrada pero antes de que se extraiga la respuesta de la cola de salida. En ese caso, tenemos nuestro error: la conexión se corrompe y la siguiente respuesta que se extrae para una solicitud no relacionada puede recibir datos que quedaron en la conexión.
  • En la mayoría de los casos, esto provoca un error irrecuperable del servidor y el usuario tendrá que volver a intentar su solicitud.
  • Pero en algunos casos, los datos corruptos coinciden con el tipo de datos que el solicitante esperaba, por lo que lo que se devuelve de la caché parece válido, aunque pertenezca a otro usuario.
  • A la 1 a.m. hora del Pacífico del lunes 20 de marzo, OpenAI introdujo accidentalmente un cambio en su servidor que causó un aumento en las cancelaciones de solicitudes de Redis. Esto creó una probabilidad más alta de lo habitual para que cada conexión devolviera datos incorrectos.

Este error específico solo apareció en el cliente Asyncio redis-py para Redis Cluster y desde entonces ha sido solucionado gracias al trabajo conjunto de los ingenieros de OpenAI y los mantenedores de la biblioteca Redis.

Como recordatorio, este error podría exponer accidentalmente el título de búsqueda de otro usuario activo y parte de la información de pago de ese usuario. Algunos usuarios ahora están otorgando a ChatGPT control total o parcial sobre sus finanzas personales, lo que hace que la exposición de esta información pueda tener resultados potencialmente catastróficos.

Esto es lo que podría suceder

En este caso, el error de la cadena de suministro de software heredado por OpenAI de la biblioteca de código abierto Redis fue relativamente simple y se solucionó fácilmente. Me gustaría pedir su indulgencia para imaginar un escenario más grave, en el que se produzca un ataque dirigido a la cadena de suministro de software, similar al que sufrió SolarWinds, y que permanezca sin descubrir durante un período de tiempo significativo, digamos, meses.

Dado que los usuarios ahora están pagando a OpenAI por un acceso más directo a su modelo de lenguaje, dicho ataque podría revelar potencialmente la información del cliente, incluidos sus datos de pago. Pero esa no es realmente la información en la que nuestro grupo de hackers hipotético estaría interesado. ChatGPT actualmente cuenta con 1.160 millones de usuarios. Superó los 1.000 millones de usuarios en marzo de 2023. Estas cifras representan un aumento de casi el 55% entre febrero de 2023 y marzo de 2023. Con numerosas personas utilizando ahora la inteligencia artificial generativa para todo, desde arte hasta tareas de historia y finanzas, el acceso ilimitado a la base de datos de OpenAI podría revelar información potencialmente comprometedora sobre innumerables usuarios. El episodio ‘Shut Up and Dance’ de la serie Black Mirror (temporada 3, episodio 3, 2016) muestra un resultado imaginario bastante impactante de que dicha información explícita llegue a manos de personas sin escrúpulos. Si busca un paralelo más cercano a la realidad, la violación de datos de Ashley Madison en 2015 tuvo algunas consecuencias graves, algunas de las cuales siguen siendo relevantes incluso años después.

Vamos un poco más lejos en nuestro imaginativo hack y digamos que no solo este grupo de hackers sin nombre puede acceder a la base de datos de OpenAI, sino que también puede influir en los resultados de las solicitudes. ¿Te imaginas el potencial de millones de personas recibiendo asesoramiento financiero personalizado por un grupo de hackers? ¿O recibir información falsa de escaneo de seguridad o información de prueba de código cortesía, una vez más, de nuestro misterioso grupo de hackers? El hecho de que ChatGPT ahora pueda acceder a Internet hace que sea aún más fácil ocultar información que entra o sale de los servidores de OpenAI como nada más que datos regulares e inofensivos.

Me detendré aquí, pero creo que puedes ver el enorme daño potencial que un ataque a la cadena de suministro de software contra un LLM exitoso puede causar.

Cómo protegerte a ti mismo y a tu cadena de suministro de software

Una de las primeras cosas que puedes hacer para protegerte es agudizar tu sentido de la sospecha. No confíes implícitamente en ninguna herramienta, por más benigna que parezca, a menos que puedas garantizar que tienes un control total sobre lo que hace, lo que puede hacer potencialmente y a qué recursos tiene acceso. La opción de ejecutar una versión de código abierto de ChatGPT localmente te brinda más control tanto sobre la información de entrenamiento como sobre el nivel de acceso que tiene.

Tener más transparencia sobre lo que está sucediendo con tu cadena de suministro de software y construir un canal es también una buena idea. Puedes comenzar con un SBOM para cada una de tus compilaciones, pero eso es solo un paso, y hay muchas otras cosas que puedes hacer para aumentar la transparencia de lo que está sucediendo exactamente en tus servidores, nube o red.

El futuro de la IA

La IA está aquí para quedarse, sin importar lo que hagamos. El nivel de su participación en nuestra vida cotidiana es objeto de especulación, pero basándonos solo en los últimos seis meses, parece seguro decir que estamos ante un momento importante para la tecnología LLM y sus usos. A medida que la IA hace que la creación de código y aplicaciones completas sea cuestión de encontrar las indicaciones correctas en ‘lenguaje natural’, podríamos enfrentar una avalancha sin precedentes de aplicaciones que no han sido probadas adecuadamente ni tienen las salvaguardias de seguridad adecuadas para proteger tanto a sus usuarios como a las personas o empresas que las crearon.

Hasta el día en que una verdadera inteligencia nos esté escuchando detrás de nuestras pantallas, nos quedará encontrar otras formas de lidiar con nuestra propia seguridad. Creo que promover la visibilidad como precursora de la confianza es un excelente punto de partida.

We will continue to update Zepes; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Inteligencia Artificial

Llama 2 de Meta Revolucionando los modelos de lenguaje de código abierto para uso comercial

Meta ha vuelto a empujar los límites de la IA con el lanzamiento de Llama 2, el esperado sucesor de su revolucionario...

Noticias de Inteligencia Artificial

Los doctores están utilizando chatbots de una manera inesperada.

A pesar de las desventajas de recurrir a la inteligencia artificial en medicina, algunos médicos encuentran que ChatG...

Inteligencia Artificial

Datos de navegación web recopilados con más detalle de lo que se conocía anteriormente.

Según un informe del Irish Council for Civil Liberties, se está recopilando y vendiendo datos de navegación web con m...

Inteligencia Artificial

Este boletín de inteligencia artificial es todo lo que necesitas #56

Esta semana vimos varios nuevos competidores en el mundo de los LLMs, tanto en modelos de código abierto como cerrado...

Inteligencia Artificial

(Note 'Inpainting' is translated as 'relleno de imágenes' which means 'image filling')

¿Cómo se pueden completar de manera efectiva las secciones faltantes de una captura 3D? Este artículo de investigació...

Inteligencia Artificial

LMSYS ORG presenta Chatbot Arena una plataforma de referencia de LLM con batallas anónimas y aleatorias realizadas por la multitud

Muchos proyectos de código abierto han desarrollado modelos lingüísticos completos que se pueden entrenar para llevar...