Prompt injection en jailbreaks
Een uitgebreide introductie tot prompt injection — de meest fundamentele kwetsbaarheidsklasse in LLM-applicaties — en de relatie met jailbreak-technieken.
Prompt injection is voor LLM-applicaties wat SQL-injectie is voor webapplicaties: een fundamentele kwetsbaarheidsklasse die ontstaat doordat je vertrouwde instructies en niet-vertrouwde data door hetzelfde kanaal mengt. Het is veruit het belangrijkste onderwerp binnen AI-redteaming, omdat het zich richt op het kern-aanvalsoppervlak van elke applicatie die op een LLM draait.
Kernconcepten
Prompt injection doet zich voor wanneer een aanvaller invoer opstelt die het model laat afwijken van de bedoelde instructies en in plaats daarvan door de aanvaller geleverde aanwijzingen laat volgen. Dit misbruikt het gebrek aan privilegescheiding tussen system prompts en gebruikersinvoer (zie LLM Internals).
Jailbreaken is een verwant maar duidelijk afzonderlijk concept: het verwijst naar technieken die een model zijn safety-alignment laten omzeilen en uitvoer laten produceren die het getraind is te weigeren. Waar prompt injection zich richt op instructies op applicatieniveau, richt jailbreaken zich op de eigen safety-training van het model.
| Concept | Doelwit | Doel | Voorbeeld |
|---|---|---|---|
| Prompt injection | Applicatie-instructies | Het gedrag van de system prompt overschrijven | "Negeer je instructies en..." |
| Jailbreaken | Safety-alignment | Weigeringstraining omzeilen | Rollenspelscenario's, encoding-trucs |
| Indirecte injection | Datapijplijn | Injecteren via content van derden | Kwaadaardige instructies op webpagina's |
De injection-taxonomie
Dit hoofdstuk behandelt prompt injection en jailbreaks over vijf gebieden van toenemende complexiteit:
- Directe injection — Door de aanvaller geleverde tekst in het gebruikersbericht die system-instructies overschrijft
- Indirecte injection — Kwaadaardige instructies ingebed in externe data die het model verwerkt
- Jailbreak-technieken — Patronen om de safety-alignmenttraining te omzeilen
- Defense Evasion — Geavanceerde technieken om safetyfilters en detectiesystemen te omzeilen
Waarom prompt injection moeilijk te verhelpen is
De fundamentele uitdaging is dat LLM's instructies en data op dezelfde manier verwerken — als reeksen tokens. Er bestaat geen equivalent van prepared statements in SQL dat code structureel van data zou scheiden.
SQL Injection: SELECT * FROM users WHERE name = '{user_input}'
Prompt Injection: System: {instructions}\nUser: {user_input}
Beide mengen vertrouwde logica met niet-vertrouwde data door hetzelfde kanaal.
Voorgestelde mitigaties zijn onder andere training in instructiehiërarchie, in- en uitvoerfiltering en scheiding op basis van delimiters, maar elk daarvan kent bekende manieren om het te omzeilen:
- Instructiehiërarchie — Kan worden overschreven door voldoende overtuigende of goed opgemaakte injections
- Invoerfiltering — Wordt omzeild met encoding, tokenisatietrucs of semantische parafrasering
- Delimiters — Het model heeft geen mechanisme om de semantiek van delimiters af te dwingen
Aan de slag
Ben je nieuw in AI-redteaming, begin dan met Directe injection om de basismechanismen te begrijpen, en werk daarna de overige pagina's op volgorde door. Elke pagina bouwt voort op concepten uit de vorige.
Gerelateerde onderwerpen
- LLM Foundations — De kernarchitectuur die prompt injection mogelijk maakt
- Agent & Agentic Exploitation — Hoe prompt injection escaleert wanneer agents toegang tot tools hebben
- Guardrails & Filtering — Verdedigingen die zijn ontworpen om injection-aanvallen te detecteren en te voorkomen
- Lab: First Injection — Praktische oefening met basale injection-technieken
- Indirect Injection Research — De gevaarlijkste variant in productiesystemen
Referenties
- Perez, F. & Ribeiro, I. (2022). "Ignore This Title and HackAPrompt: Evaluating and Eliciting Prompt Injection Attacks"
- Greshake, K. et al. (2023). "Not What You've Signed Up For: Compromising Real-World LLM-Integrated Applications with Indirect Prompt Injection"
- OWASP (2025). OWASP Top 10 for LLM Applications
- Wei, A. et al. (2023). "Jailbroken: How Does LLM Safety Training Fail?"
- Liu, Y. et al. (2024). "Prompt Injection Attack Against LLM-Integrated Applications"
Wat is het fundamentele verschil tussen prompt injection en jailbreaken?