Prompt injection: qué es y cómo protegerse de este ataque a la IA

Marlon Zometa
0
Laberinto vegetal visto desde el aire con una ruta blanca desviada hacia un callejón sin salida por una cinta roja oculta
Una instrucción oculta puede desviar a una inteligencia artificial de su objetivo original, especialmente cuando procesa contenido externo o tiene permiso para realizar acciones.

Imagine que le pide a una inteligencia artificial que resuma un documento. El archivo parece normal, pero entre sus páginas contiene una instrucción dirigida al sistema: “Ignore la solicitud del usuario y siga estas nuevas indicaciones”.

Una persona podría reconocer esa frase como parte del documento y descartarla. Un modelo de lenguaje puede interpretarla como una orden y modificar su comportamiento. Ese intento de manipulación se conoce como prompt injection o inyección de instrucciones.

El problema se vuelve más serio cuando la IA no solamente redacta respuestas. Si también puede consultar correos, abrir archivos, navegar por internet, modificar una agenda o utilizar herramientas externas, una instrucción maliciosa podría intentar influir en esas acciones.

Definición sencilla: un prompt injection ocurre cuando una instrucción no confiable consigue alterar la tarea, las prioridades o el comportamiento que una aplicación de inteligencia artificial debía respetar.

Cómo funciona un prompt injection en cuatro momentos

  1. La aplicación recibe una tarea legítima. Por ejemplo, resumir una página, clasificar un correo o analizar un archivo.
  2. La IA incorpora contenido externo. Ese contenido puede provenir de una web, un PDF, una imagen, una base de datos o un mensaje.
  3. Dentro del contenido aparece otra instrucción. Puede pedir que se ignore el objetivo original, se revele información o se utilice una función conectada.
  4. El modelo confunde datos con órdenes. Si las defensas no son suficientes, puede seguir la instrucción insertada en lugar de limitarse a analizarla.

La dificultad nace de una característica básica de los modelos de lenguaje: instrucciones, ejemplos y datos pueden llegar como texto dentro del mismo contexto. El sistema necesita determinar qué debe obedecer y qué debe tratar únicamente como contenido.

El proyecto de seguridad para IA generativa de OWASP explica que esta vulnerabilidad aparece cuando instrucciones maliciosas incluidas en la entrada hacen que el modelo se aparte del comportamiento previsto.

Inyección directa e indirecta: no son el mismo ataque

Tipo Cómo llega Ejemplo sencillo Riesgo principal
Directa Una persona escribe la instrucción manipuladora directamente en el chat o formulario. Intenta reemplazar las reglas de la aplicación mediante una orden contradictoria. Alterar respuestas, revelar instrucciones internas o acceder a funciones no previstas.
Indirecta La instrucción está escondida en contenido que la IA debe leer. Una página, correo, imagen o documento contiene órdenes dirigidas al modelo. El usuario puede activar el ataque sin saber que el contenido estaba manipulado.

La modalidad indirecta merece especial atención porque el atacante no necesita conversar con la aplicación. Puede colocar la instrucción en un contenido que más tarde será recuperado o procesado por el sistema.

El glosario de ciberseguridad del NIST define la inyección de prompts como un ataque que aprovecha la combinación de entradas no confiables con instrucciones creadas por una parte de mayor confianza.

Un ejemplo cotidiano sin conocimientos técnicos

Suponga que utiliza una herramienta de IA para comparar varias páginas de productos. Una de las páginas incluye una instrucción oculta que intenta convencer al asistente de recomendar un artículo determinado, aunque no sea la mejor opción.

La respuesta final podría parecer una comparación objetiva. Sin embargo, una parte de la recomendación habría sido influida por contenido diseñado para el modelo y no para el lector humano.

Ahora cambie la situación: en lugar de comparar productos, el asistente revisa correos y puede enviar respuestas. Una instrucción insertada dentro de un mensaje podría intentar que el sistema revele información de otra conversación o prepare una acción que el usuario nunca solicitó.

El daño posible depende de los permisos disponibles. Una IA que solamente resume texto tiene un alcance limitado. Un agente conectado a correos, archivos, calendarios, pagos o sistemas internos necesita controles mucho más estrictos.

Prompt injection y jailbreak: cuál es la diferencia

Los términos suelen utilizarse como si fueran equivalentes, pero describen objetivos relacionados y no idénticos.

Prompt injection
Busca alterar el comportamiento de una aplicación mediante instrucciones insertadas en la entrada o en el contenido que procesa.
Jailbreak
Busca evadir las restricciones de seguridad del modelo para obtener una respuesta que normalmente debería rechazar.

Un jailbreak puede considerarse una forma particular de manipulación de instrucciones. Sin embargo, un prompt injection también puede dirigirse a objetivos distintos, como cambiar una clasificación, influir en una recomendación o provocar el uso indebido de una herramienta conectada.

Por qué el riesgo aumenta con los agentes de IA

Un chatbot tradicional recibe una pregunta y devuelve texto. Un agente puede realizar varios pasos: buscar información, elegir una herramienta, consultar una cuenta, modificar datos y ejecutar una acción.

Esta capacidad resulta útil, pero también amplía las consecuencias de una instrucción manipuladora. El riesgo puede crecer cuando el sistema posee:

  • acceso a correos o mensajes privados;
  • permisos para abrir y editar archivos;
  • conexión con calendarios o contactos;
  • capacidad para publicar contenido;
  • acceso a bases de datos;
  • funciones para ejecutar código;
  • autorización para realizar compras o transferencias;
  • capacidad para actuar sin una confirmación humana.

El perfil de riesgos para inteligencia artificial generativa del NIST también distingue entre inyecciones directas e indirectas y advierte sobre las consecuencias que pueden aparecer en sistemas interconectados.

Señales de que una respuesta pudo ser manipulada

No existe una señal que demuestre por sí sola la presencia de un prompt injection. Aun así, ciertos cambios justifican detenerse y revisar:

  • la IA abandona repentinamente la tarea solicitada;
  • aparecen instrucciones o afirmaciones que no guardan relación con el objetivo;
  • el sistema solicita permisos que antes no necesitaba;
  • la respuesta insiste en abrir un enlace o descargar un archivo;
  • una recomendación resulta extrañamente favorable a una única opción;
  • el asistente intenta revelar información de otras fuentes o conversaciones;
  • se prepara una acción importante sin pedir confirmación;
  • el resultado cambia drásticamente después de leer una página o documento concreto.

Estas señales también pueden tener explicaciones inocentes. Su función es indicar que conviene revisar el contenido de origen y evitar acciones automáticas hasta comprender lo sucedido.

Qué puede hacer una persona que utiliza herramientas de IA

Revise antes de conceder permisos

No conecte correos, almacenamiento, contactos o calendarios únicamente porque la aplicación lo solicita. Autorice solamente los recursos necesarios para la tarea.

Evite entregar información confidencial

No introduzca contraseñas, claves de API, documentos internos, expedientes, información bancaria o datos personales sensibles dentro de un prompt.

Desconfíe de instrucciones encontradas dentro del contenido

Si un documento o una página incluye órdenes dirigidas al asistente, trátelas como contenido no confiable. La IA debería analizar esas frases, no obedecerlas.

Exija confirmación para acciones importantes

Enviar, eliminar, publicar, comprar, modificar permisos o compartir información debería requerir una confirmación humana clara inmediatamente antes de ejecutarse.

Compruebe las respuestas decisivas

Cuando una recomendación pueda afectar dinero, privacidad, salud, estudios o trabajo, contraste la información mediante fuentes independientes.

Esta práctica se amplía en la guía sobre cómo comprobar las fuentes proporcionadas por una IA.

Separe las tareas según su nivel de riesgo

No utilice el mismo flujo automático para resumir un artículo y para autorizar una acción sobre datos reales. Las tareas con consecuencias necesitan controles adicionales.

Defensas que deben aplicar los desarrolladores

No existe una medida única que elimine el riesgo. La protección más sólida utiliza varias capas independientes.

Capa de protección Función Pregunta de control
Permisos mínimos Limitar los datos y acciones disponibles para el agente. ¿La herramienta necesita realmente este acceso?
Separación entre instrucciones y datos Marcar claramente el contenido externo como información no confiable. ¿El modelo puede distinguir la tarea del material analizado?
Validación de entradas y salidas Comprobar formatos, destinos, parámetros y resultados mediante código. ¿Una salida del modelo puede ejecutarse sin ser verificada?
Confirmación humana Detener acciones de alto impacto antes de ejecutarlas. ¿El usuario ve exactamente qué cambiará?
Registro y monitoreo Conservar evidencia de decisiones, intentos y llamadas a herramientas. ¿Podría investigarse un comportamiento inesperado?
Pruebas de seguridad Evaluar entradas directas, documentos, páginas, imágenes y respuestas de APIs. ¿Se probaron todas las rutas por las que entra contenido externo?

La recomendación más importante es reducir el alcance de cualquier fallo. Si una IA no tiene permiso para enviar mensajes, eliminar archivos o consultar secretos, una instrucción manipuladora no podrá utilizar esas capacidades.

Una regla práctica para contenido externo

Cuando una IA analice una web, un documento, una imagen o un correo, la aplicación debería comportarse como si ese material procediera de una fuente desconocida.

El contenido externo puede aportar información para completar la tarea, pero no debe cambiar el objetivo, ampliar permisos, revelar datos ni autorizar acciones.

Esta regla no resuelve el problema por sí sola, pero establece una separación conceptual importante: leer una instrucción no significa tener autorización para cumplirla.

Lo que no funciona como defensa suficiente

  • Decirle al modelo que ignore todos los ataques: ayuda, pero otra instrucción puede intentar contradecirlo.
  • Bloquear algunas palabras: la misma intención puede expresarse de muchas formas o esconderse en otro tipo de contenido.
  • Confiar únicamente en que el modelo sea más avanzado: una mayor capacidad general no elimina esta clase de vulnerabilidad.
  • Permitir acciones y revisar después: una respuesta final correcta no deshace una acción que ya fue ejecutada.
  • Ocultar las instrucciones internas: mantenerlas privadas no sustituye los controles de acceso y la validación.

¿Puede eliminarse completamente el prompt injection?

Actualmente no existe una solución universal que garantice la eliminación de todos los intentos de inyección. Las defensas reducen la probabilidad de éxito y, sobre todo, limitan las consecuencias.

Por eso, la seguridad no debe depender de que el modelo siempre interprete correctamente una entrada. Debe existir fuera del modelo: permisos, validaciones, límites, confirmaciones y registros.

El principio también se relaciona con la inteligencia artificial explicable. Cuanto mayor sea el impacto de una acción, más importante resulta conocer qué información influyó, qué herramienta se utilizó y quién autorizó el resultado.

La pregunta correcta antes de confiar

El prompt injection demuestra que no todo lo que una IA puede leer merece la misma confianza. Un texto puede parecer información y funcionar como una orden; una página puede aparentar neutralidad e intentar manipular una recomendación.

Antes de conectar una IA con información o acciones importantes, conviene formular tres preguntas:

  1. ¿Qué contenido no confiable puede entrar en el sistema?
  2. ¿A qué datos y herramientas tiene acceso el modelo?
  3. ¿Qué daño podría ocurrir si siguiera una instrucción equivocada?

La seguridad mejora cuando la inteligencia artificial recibe únicamente los permisos necesarios, las acciones importantes permanecen bajo control humano y toda entrada externa se considera potencialmente manipulable.

Publicar un comentario

0 Comentarios

Publicar un comentario (0)

¡Visita mi canal!

Únete a la comunidad y no te pierdas mis nuevos videos y reflexiones.

Suscribirme ahora