Un LLM es un tipo de modelo de Machine Learning que se entrena con grandes cantidades datos y está diseñado para responder instrucciones en lenguaje natural (humano). La prompt injection explota el hecho de que muchas veces los LLM confunden las entradas de los usuarios con las instrucciones predefinidas que le dan los desarrolladores —a través de prompts— sobre cómo deben manejar las entradas.
Estos prompts predefinidos se dan gracias al método de instruction fine-tunning, una técnica ajusta los LLMs mediante el añadido de instrucciones específicas a los datos de entrenamiento, y en general no escriben código a la hora del entrenamiento.
Tanto las entradas de los usuarios como los prompt de instruction fine tunning son cadenas de texto de lenguaje natural y por lo tanto el modelo es susceptible de confundirlo lo que deja abierta la vulnerabilidad.
Se ha establecido una clasificación primaria de este tipo de ataque:
– Prompt injection directas: Cuando la entrada del usuario afecta directamente el comportamiento del LLM, ya sea de manera intencional (cuando el usuario lo planea y lo arma) o no intencional, cuando por accidente los usuarios envían un prompt que por sus características generan una alteración del funcionamiento esperado del LLM.
– Prompt injection indirectas: El modelo acepta prompts de fuentes externas o cuando el modelo acepta prompt de fuentes externas, como sitios web o archivos, cuyo contenido al ser interpretado genera la alteración. Nuevamente pueden ser intencionales o no.
Ante una prompt injection el modelo podría:
– Responder con información confidencial, tanto de usuarios como sobre la infraestructura del propio sistema
– Generar resultados sesgados o incorrectos para otros usuarios,
– Permitir acceso a distintas funciones del modelo (acceso que en principio no es abierto)
– Manipular la toma de decisiones, entre otras posibles consecuencias.
– Ejecución de código malicioso en dispositivos del usuario. Uno de los riesgos más graves a nivel de la ciberseguridad.
El prompt Injecton es básicamente la técnica definida en este artículo y usualmente es vinculado o confundido con los Jailbreaks.
Los Jailbreaks son métodos de manipulación del modelo para que realice acciones o de outputs con contenido restringido, en contra de las políticas del modelo evadiendo así las configuraciones de seguridad de este.
Un ejemplo muy conocido es el modo DAN donde previó a la entrada del prompt se escribe “Do anything now” induciendo al modelo a hacer cualquier cosa que se le pida con posterioridad a esa instrucción lo cual puede llevar a que este acepte tales instrucciones.
Mientras que el prompt injection manipula los outputs y comportamiento del modelo mediante la inserción de instrucciones maliciosas, el jailbreak busca eludir las políticas de seguridad y así desbloquear funciones no permitidas.
El framework Mittre ATLAS que trata exclusivamente las técnicas, tácticas y procesos que realizan los cibercriminales en sus ataques a modelos de IA, propone las siguientes formas de mitigación.
Establecer barreras de seguridad
Básicamente se las establece entre el modelo y la entrada y salida o output que recibe el usuario entre un modelo de IA. El objetivo es que el usuario no pueda generar los prompt ni que el modelo de salidas no deseadas o no permitidas. Estos podrían ser filtros, métodos de validación, reglas, clasificadores, entre otros.
Directrices para IA generativa
Las directrices son controles de seguridad que guían el modelo de IA generativa para generar respuestas deseadas y evitar salidas no autorizadas. Se implementan como instrucciones adicionales en las indicaciones del usuario o en las solicitudes del sistema, definiendo objetivos, funciones y parámetros de seguridad.
Alineación de modelos de IA generativa
Es crucial emplear técnicas de ajuste en modelos de IA generativa que fortalezcan su alineación con políticas de seguridad y protección, como el ajuste fino supervisado y el aprendizaje por refuerzo, para evitar la eliminación de mecanismos de seguridad.
Registro de telemetría de IA
Implementar el registro de entradas y salidas de los modelos de IA implementados. La supervisión de registros puede ayudar a detectar amenazas de seguridad y mitigar los impactos.
Fuente: Welivesecurity
© 2022 - Todos los derechos reservados.