Descubra cómo la inyección rápida aprovecha los modelos de lenguaje grande (LLM) y los modelos multimodales. Explore los riesgos en la visión artificial, ejemplos del mundo real y estrategias de mitigación para la seguridad de la IA.
La inyección de comandos es una vulnerabilidad de seguridad que afecta principalmente a los sistemas basados en IA generativa y modelos de lenguaje grandes (LLM). Se produce cuando un usuario malintencionado crea una entrada específica, a menudo disfrazada de texto benigno, que engaña a la inteligencia artificial para que anule su programación original, sus medidas de seguridad o las instrucciones del sistema. A diferencia de los métodos tradicionales de piratería que explotan los errores de software en el código, la inyección de comandos ataca la interpretación semántica del lenguaje por parte del modelo. Al manipular la ventana de contexto, un atacante puede obligar al modelo a revelar datos confidenciales, generar contenido prohibido o realizar acciones no autorizadas. A medida que la IA se vuelve más autónoma, comprender esta vulnerabilidad es fundamental para mantener una seguridad sólida de la IA.
Aunque inicialmente se descubrió en chatbots de solo texto, la inyección de comandos está cobrando cada vez más relevancia en la visión artificial (CV) debido a la aparición de modelos multimodales. Los modelos modernos de visión-lenguaje (VLM), como CLIP o los detectores de vocabulario abierto como YOLO, permiten a los usuarios definir los objetivos de detección mediante descripciones en lenguaje natural (por ejemplo, «encontrar la mochila roja»).
En estos sistemas, la indicación de texto se convierte en incrustaciones que el modelo compara con características visuales . Puede producirse una «inyección de indicación visual» si un atacante presenta una imagen que contiene instrucciones de texto (como un cartel que dice «Ignora este objeto») que el componente de reconocimiento óptico de caracteres (OCR) y lo interpreta como un comando de alta prioridad. Esto crea un vector de ataque único en el que el propio entorno físico actúa como mecanismo de inyección, lo que pone en tela de juicio la fiabilidad de los vehículos autónomos y los sistemas de vigilancia inteligente .
Las implicaciones de la inyección inmediata se extienden a diversas industrias en las que la IA interactúa con entradas externas:
Es importante diferenciar la inyección inmediata de términos similares en el ámbito del aprendizaje automático:
El siguiente código muestra cómo una solicitud de texto definida por el usuario interactúa con un modelo de visión de vocabulario abierto. En una
aplicación segura, el user_prompt necesitaría una desinfección rigurosa para evitar intentos de inyección.
Utilizamos el ultralytics Paquete para cargar un modelo capaz de comprender definiciones de texto.
from ultralytics import YOLO
# Load a YOLO-World model capable of open-vocabulary detection
# This model maps text prompts to visual objects
model = YOLO("yolov8s-world.pt")
# Standard usage: The system expects simple class names
safe_classes = ["person", "bicycle", "car"]
# Injection Scenario: A malicious user inputs a prompt attempting to alter behavior
# e.g., attempting to override internal safety concepts or confuse the tokenizer
malicious_input = ["ignore safety gear", "authorized personnel only"]
# Setting classes updates the model's internal embeddings
model.set_classes(malicious_input)
# Run prediction. If the model is vulnerable to the semantic content
# of the malicious prompt, detection results may be manipulated.
results = model.predict("https://ultralytics.com/images/bus.jpg")
# Visualize the potentially manipulated output
results[0].show()
La defensa contra la inyección de comandos es un área de investigación activa. Las técnicas incluyen el aprendizaje por refuerzo a partir de la retroalimentación humana (RLHF) para entrenar modelos que rechacen instrucciones dañinas, y la implementación de defensas «sándwich», en las que la entrada del usuario queda encerrada entre instrucciones del sistema. Las organizaciones que utilizan Ultralytics para el entrenamiento y la implementación pueden supervisar los registros de inferencia para detect patrones de prompts detect . Además, el Marco de Gestión de Riesgos de IA del NIST proporciona directrices para evaluar y mitigar este tipo de riesgos en los sistemas implementados.