La seguridad de los grandes modelos de lenguaje (LLM, por sus siglas en inglés) está en riesgo debido a una vulnerabilidad conocida como prompt injection, que permite a atacantes manipular respuestas, acceder a datos sensibles y comprometer el funcionamiento de estos sistemas.
¿Qué es el prompt injection?
Un prompt es una instrucción o texto que los usuarios proporcionan para interactuar con modelos de lenguaje como ChatGPT o Gemini. La prompt injection explota la posibilidad de que estos modelos confundan las entradas de los usuarios con las instrucciones predefinidas durante su configuración o entrenamiento. Esto puede derivar en que el modelo realice acciones o genere respuestas contrarias a sus límites de seguridad.
En estos ataques, un cibercriminal podría lograr que el modelo:
- Proporcione información confidencial.
- Acceda a funciones restringidas.
- Genere contenido malicioso.
- Altere la toma de decisiones.
Incluso, mediante integraciones con APIs, se podría ejecutar código malicioso en dispositivos de los usuarios.
Tipos de prompt injection
Los ataques se dividen en dos categorías principales:
- Prompt injection directas: cuando el usuario introduce intencionalmente una entrada que afecta el comportamiento del modelo.
- Prompt injection indirectas: cuando el modelo procesa prompts provenientes de fuentes externas, como sitios web o archivos, que contienen instrucciones maliciosas.
Ejemplos de ataques
La organización OWASP describe casos hipotéticos de ataques:
- Escenario 1: Inyección directa. Un atacante persuade a un chatbot para que ignore restricciones y acceda a datos privados, resultando en una escalada de privilegios.
- Escenario 2: Inyección indirecta. Un usuario solicita a un modelo resumir una página web que contiene prompts ocultos, lo que deriva en la filtración de datos sensibles.
¿Cómo se diferencia del jailbreak?
El prompt injection se enfoca en manipular salidas y comportamientos mediante instrucciones maliciosas, mientras que el jailbreak busca evadir las configuraciones de seguridad del modelo, desbloqueando funciones restringidas.
Mitigación de riesgos
El framework MITRE ATLAS propone medidas para minimizar esta vulnerabilidad:
- Barreras de seguridad: Filtros y reglas entre las entradas y salidas del modelo para evitar prompts maliciosos.
- Directrices para IA generativa: Instrucciones claras en la configuración del modelo para guiar sus respuestas.
- Alineación de modelos: Ajuste mediante técnicas como aprendizaje por refuerzo para garantizar que el modelo cumpla con las políticas de seguridad.
- Registro de telemetría: Monitorización continua de las entradas y salidas para detectar posibles amenazas.
Con la adopción de estas prácticas, es posible reforzar la seguridad de los modelos de lenguaje y mitigar el impacto de la prompt injection.
¿Qué opinas sobre los retos que presenta la prompt injection en el campo de la inteligencia artificial?