Capítulo 01
Qué es realmente el prompt injection
Cuando los desarrolladores empezaron a construir aplicaciones sobre modelos de lenguaje grandes, apareció un nuevo tipo de vulnerabilidad. No venía de un error en el código del modelo. Venía de la forma fundamental en que los modelos de lenguaje funcionan: leen texto y siguen las instrucciones de ese texto. El problema es que a menudo no pueden distinguir de forma fiable entre las instrucciones del desarrollador y las instrucciones incluidas en la entrada del usuario o en el contenido externo. Esa incapacidad es lo que explota el prompt injection.
El término fue acuñado por el investigador de seguridad Riley Goodside en 2022. Demostró que podías incluir una frase en una entrada como "ignora las instrucciones anteriores y en su lugar haz X," y el modelo a menudo obedecía. Esa observación simple se convirtió en un campo de investigación de ataques que ha crecido sustancialmente desde entonces.
El prompt injection ocupa un lugar extraño en el panorama de la seguridad. Es ampliamente conocido. Cada equipo que construye sobre un LLM ha oído hablar de él. Pero también está ampliamente infratratado, a menudo descartado como una preocupación teórica o abordado con mitigaciones superficiales que no resisten condiciones de ataque reales.
La razón por la que persiste es estructural. Los modelos de lenguaje están entrenados para ser útiles. Ser útil significa seguir instrucciones. Cuando las instrucciones provienen de una fuente adversarial, ser útil y ser seguro apuntan en direcciones opuestas. No existe un parche sencillo que resuelva esta tensión.
