Techniek / LLM01:2026 / AML.T0051

Wat is prompt injection?

Prompt injection is een aanval waarbij tekst die een taalmodel verwerkt, getypt door een gebruiker of verstopt in een document, e-mail of webpagina, de instructies van de ontwikkelaar overschrijft. Kort gezegd: het kapen van de instructies van een AI-systeem. OWASP zet het in 2026 opnieuw bovenaan de risico’s voor LLM-toepassingen.

Opgehaald / KB/0212 / Slenkwater Verzekeringen / fictie

Waterschade door een gesprongen leiding is gedekt tot de polislimiet.

Een claim wordt binnen tien werkdagen na de melding beoordeeld.

Een regel die een reviewer niet ziet en het model als opdracht leest. De tekst staat nergens op deze site.

Vragen die deze pagina niet beantwoordt, gaan naar de claimafdeling.

Een pagina die een assistent ophaalt, zoals een reviewer haar ziet. Lees haar zoals het model, en ze heeft één regel meer.

Prompt injection, kort gezegd

Prompt injection is een aanval op een toepassing die op een groot taalmodel (LLM) is gebouwd: tekst die het model verwerkt, verandert wat het model doet, tegen de bedoeling in van de mensen die de toepassing bouwden. Die tekst kan komen van de persoon in de chat, of van alles wat het model te lezen krijgt.

De naam is van september 2022. Simon Willison bedacht hem en trok meteen de vergelijking met SQL-injectie: in beide gevallen worden gegevens die alleen gelezen hadden moeten worden, als opdracht opgevolgd.1 Die vergelijking helpt de eerste vijf minuten. Daarna zit ze in de weg, om redenen die verderop aan bod komen.

OWASP spreekt van een prompt injection-kwetsbaarheid als prompts het gedrag of de output van het model op onbedoelde wijze veranderen, en zet die op de eerste plaats van de OWASP Top 10 for LLM Applications, de tien grootste risico’s van toepassingen op een taalmodel.2 Daar stond ze in de editie van 2025, en daar staat ze nog, als LLM01:2026, in de editie van 3 augustus 2026.3

MITRE ATLAS, de kennisbank van aanvalstechnieken op AI-systemen, beschrijft dezelfde aanval als techniek AML.T0051, LLM Prompt Injection: een mogelijke eerste toegang, een voet tussen de deur waarvandaan een aanvaller de volgende stappen zet.4

Wat is het verschil tussen directe en indirecte prompt injection?

Bij directe injectie is de aanvaller de gebruiker. Hij typt in de chat en probeert de toepassing van haar instructies af te praten. Bij indirecte injectie praat de aanvaller helemaal niet met het systeem. Hij zet tekst op een plek die het systeem later leest: een webpagina, een gedeeld document, een e-mail, een supportticket of de output van een tool.5

De indirecte vorm werd in 2023 beschreven door Greshake en collega’s, die haar lieten zien in echte toepassingen met een taalmodel en betoogden dat zulke toepassingen de grens tussen gegevens en instructies laten vervagen.6 ATLAS kent inmiddels een derde subtechniek, Triggered: een injectie die afgaat door een handeling van de gebruiker of een gebeurtenis in diens eigen omgeving.7

Directe en indirecte prompt injection naast elkaar
DirectIndirect
Wie schrijft de tekstDe gebruiker van het systeemIedereen die kan schrijven waar het systeem leest
KanaalDe chat of de API-invoerOpgehaalde documenten, webpagina’s, e-mail, tickets, bestanden, tooloutput, geheugen
Wie de schade heeftVooral de aanbieder: beleid, kosten, reputatieVaak een andere gebruiker, met wiens rechten het systeem werkt
Wat het begrenstWat de gebruiker zelf al mag zien en doenWat het systeem namens het slachtoffer mag zien en doen

Die laatste rij verklaart waarom indirecte injectie vooral voor agents telt. Een directe aanvaller kan alleen zijn eigen sessie misbruiken. Een indirecte aanvaller leent die van een ander: de agent leest de geplante tekst terwijl hij voor een legitieme gebruiker werkt, en handelt met diens toegang. Fig. 1 volgt zo’n regel door de supportagent van een fictieve verzekeraar, van de kennisbank tot in de stack eronder.

MODEL LAYER

STACK LAYER

  • KNOWLEDGE BASE
  • RETRIEVAL
  • AGENT
  • TOOLS
    EMAIL / CRM / REFUNDS
  • MCP SERVER
  • WEB APP
  • API GATEWAY
  • IDENTITY
  • TENANT DATA
  • OBJECT STORAGE
  • CLOUD ACCOUNT
  1. 01 UNREVIEWED TEXT
    STORED AS POLICY LLM01:2026 / PROMPT
    INJECTION
  2. 02 RETRIEVED AS TRUSTED
    CONTEXT ASI06 / MEMORY AND
    CONTEXT POISONING
  3. 03 INSTRUCTION FOLLOWED LLM03:2026 / EXCESSIVE
    AGENCY
  4. 04 THIRD-PARTY TOOL,
    NEVER REVIEWED ASI04 / AGENTIC SUPPLY
    CHAIN
  5. 05 TOKEN SCOPED WIDER
    THAN THE TASK API1:2023 / BROKEN
    OBJECT LEVEL
    AUTHORIZATION
    GET /claims/48213 / 200
  6. 06 ANOTHER TENANT’S
    RECORD WSTG-ATHZ / TENANT
    ISOLATION
FIG. 1 / HET BEREIK. Eén regel die niemand controleerde, opgeslagen in de kennisbank van een fictieve verzekeraar, opgehaald als vertrouwde context, opgevolgd door de agent, doorgegeven via een MCP-server van derden tot in de API-gateway, die het record van een andere klant teruggeeft.

Is prompt injection hetzelfde als een AI-jailbreak?

Nee, maar ze overlappen. Een jailbreak probeert een model zijn veiligheidstraining te laten negeren: het moet iets zeggen wat het niet hoort te zeggen. Prompt injection probeert een toepassing de instructies van haar ontwikkelaar te laten negeren: het systeem moet iets doen wat het niet hoort te doen, met de gegevens en tools die het heeft. OWASP ziet jailbreaken als een vorm van prompt injection.8 MITRE ATLAS houdt ze uit elkaar en geeft de jailbreak een eigen techniek, AML.T0054, LLM Jailbreak.9

Voor een organisatie die een chatbot of agent inzet, is het onderscheid praktisch. Een jailbreak is vooral een probleem van imago en beleid. Een injectie die een agent een tool laat aanroepen, een document van een andere klant laat ophalen of een betaling laat voorbereiden, is een beveiligingsprobleem met een slachtoffer.

Waarom werkt prompt injection?

Een model krijgt één stroom tokens binnen. De instructies van de ontwikkelaar, het bericht van de gebruiker, een opgehaald document en het resultaat van een tool komen allemaal in diezelfde stroom, en niets daarin geeft aan welk deel een opdracht is en welk deel materiaal om mee te werken (Fig. 2). Modellen zijn getraind om de instructies van de ontwikkelaar zwaarder te laten wegen, maar dat is een geleerde neiging, geen regel die het systeem afdwingt.

Instructies van de ontwikkelaar

Bericht van de gebruiker

Opgehaald document

Resultaat van een tool

Eén contextvenster / geen type op een rij

De gemarkeerde rij kwam uit een document. Niets markeert haar als gegevens.

Fig. 2 / Eén contextvenster Vier bronnen, één stroom. Een zin in het opgehaalde document is geformuleerd als instructie; voor het model is het gewoon nog een rij tekst.

Het Britse National Cyber Security Centre zei het in december 2025 zonder omwegen: huidige taalmodellen dwingen geen beveiligingsgrens af tussen instructies en gegevens, prompt injection is misschien nooit helemaal te voorkomen, en het realistische doel is de kans op en de impact van aanvallen te verkleinen.10 De auteur noemt het model een “inherently confusable deputy”: een tussenpersoon die zich van nature laat verwarren. Precies daar breekt de vergelijking met SQL: SQL-injectie heeft een structurele oplossing, de geparametriseerde query, die gegevens uit het opdrachtkanaal houdt. Een taalmodel heeft geen apart kanaal om ze uit te houden.

OWASP komt via een andere route tot dezelfde conclusie: retrieval-augmented generation (RAG) en finetuning maken antwoorden relevanter, maar nemen prompt injection niet volledig weg.11 De nuttige vraag is dus niet hoe je het model onovertuigbaar maakt. De vraag is wat een overtuigd model kan doen.

Wat kan een aanvaller met prompt injection?

De impact van prompt injection is het bereik van het systeem waarin ze landt. De woorden van het model zijn zelden de schade; wat de toepassing ermee doet, wel. De gevolgen vallen in vier groepen.

  • Lekken. Het model geeft prijs wat het wel kreeg maar niet mocht doorgeven: verborgen instructies, configuratie, gegevens van een andere gebruiker, documenten van de verkeerde klant. OWASP is duidelijk: een systeemprompt is geen geheim en geen beveiligingsmaatregel.12
  • Handelingen. Een agent roept namens de aanvaller de tools aan die hij heeft: hij verstuurt de mail, dient de terugbetaling in, past het record aan. ATLAS beschrijft hoe een aanvaller zo de rechten van de gekoppelde dienst krijgt, en hoe een tool die schrijft gegevens kan meenemen in een handeling die er legitiem uitziet.13
  • Output. Het antwoord van het model wordt verderop getoond of uitgevoerd zonder dat het als onbetrouwbare invoer wordt behandeld, en de injectie wordt een klassiek web- of code-execution-lek. OWASP noemt dat LLM10:2026, Improper Output Handling.3
  • Blijvende sturing. De instructie belandt in het geheugen of in een gedeelde opslag, en blijft het systeem sturen, lang nadat de oorspronkelijke inhoud weg is.

De OWASP Top 10 for Agentic Applications, de tien grootste risico’s van AI-agents, noemt de agentversie van dit risico ASI01, Agent Goal Hijack: de aanvaller hoeft het model niets verkeerds te laten zeggen, alleen een ander doel te laten najagen met de tools die het al heeft.14

Werkt prompt injection ook in het Nederlands, en wat zegt de AI Act?

Ja. Een taalmodel leest Nederlands, en een aanvaller kan schrijven in elke taal die het model begrijpt, of in een mengsel van talen. Voor indirecte injectie maakt de taal van de bron niet uit: een Nederlandstalig beleidsdocument, een klantmail of een webpagina in de kennisbank wordt even gewillig gelezen. Een filter dat is afgesteld op Engelstalige voorbeelden, herkent een Nederlandse formulering niet vanzelf als hetzelfde verzoek. Daarom testen wij in de talen waarin je gebruikers en je bronnen echt schrijven, standaard Nederlands en Engels, en noteren we bij elke bevinding de taal waarin ze reproduceerde.

De Europese AI-verordening, in Nederland meestal de AI Act genoemd, raakt prompt injection via artikel 15. Dat eist dat AI-systemen met een hoog risico bestand zijn tegen pogingen van ongeautoriseerde derden om hun gebruik, outputs of prestaties te wijzigen, en noemt onder meer “vijandige voorbeelden” en “modelontwijking”: invoer die het model moet laten falen.15 Een geïnjecteerde instructie kan zulke invoer zijn; zo lezen wij artikel 15. Voor systemen uit bijlage III gelden die eisen vanaf 2 december 2027; de meeste klantenservicechatbots vallen er niet onder. Meer daarover op onze pagina over de AI Act en beveiligingstests.

Hoe test je op prompt injection?

Testen op prompt injection is niet een lijst beroemde prompts afwerken. Zo’n lijst meet alleen of een filter ze al eens heeft gezien. Wij testen de structuur, in een afgebakende omgeving en onder schriftelijke spelregels.

  1. De kanalen in kaart. Elke plek waar tekst de context binnenkomt: berichten, uploads, bronnen voor retrieval, webtoegang, e-mail, tickets, tooloutput en geheugen, en wie in elk daarvan kan schrijven.
  2. De mogelijkheden in kaart. Elke tool, elk token, elke scope en elke renderer waar het model bij kan, en met wiens rechten.
  3. Koppelen. Voor elk kanaal en elke mogelijkheid proberen we inhoud uit dat kanaal die mogelijkheid te laten sturen, met probes die we in ons eigen lab voor dit systeem schrijven.
  4. Herhalen. De output van een model verschilt per poging, dus elke geslaagde poging spelen we opnieuw af en rapporteren we met een reproductiescore, model, versie en instellingen.
  5. Doorvolgen in de stack. Laat het model zich sturen, dan volgen we het verzoek dat het doet: komt het token erachter bij objecten, records of klanten waar het niet bij hoort?

Het rapport noemt per bevinding de maatregel die haar had tegengehouden, koppelt haar aan LLM01:2026 en de ATLAS-techniek, en geeft een ernst die het bereik weerspiegelt, niet de slimheid van de formulering. Voor een chatbot of RAG-toepassing doen we dat in een chatbot- en RAG-test, voor een agent met tools in een test van AI-agents en MCP, en voor een SaaS-platform met een AI-functie in Launch Clearance. Hoe de tien risico’s van OWASP zich tot elkaar verhouden, lees je in de OWASP Top 10 for LLM Applications 2026, uitgelegd.

Hoe bescherm je een AI-toepassing tegen prompt injection?

Ga ervan uit dat het model zich tot alles laat overhalen wat het kan, en zorg dat wat het kan veilig is. De verdediging die werkt, zit buiten het model, waar gedrag voorspelbaar is. Het Britse NCSC legt precies daar de nadruk, en vraagt daarnaast om genoeg logging van invoer, output en toolaanroepen om misbruik te zien als het gebeurt.16

Maatregelen tegen prompt injection
MaatregelWat ze doetWat ze niet doet
Minimale rechten per taakBeperkt elke tool en elk token tot de taak en de gebruiker waarvoor ze werkenDe injectie stoppen; ze beperkt wat de injectie bereikt
Autorisatie buiten het modelControleert elk object in de API, wat de agent ook vraagtHelpen als het token zelf breder is dan de gebruiker
Menselijke goedkeuring voor risicovolle actiesZet een mens tussen het model en betalingen, verwijderingen en uitgaande berichtenSchalen naar elke handeling; goedkeuringsmoeheid bestaat
Output als onbetrouwbaar behandelenValideert toolargumenten tegen een schema; codeert voor het tonenLekken in gewone tekst voorkomen
Externe inhoud apart houdenMarkeert opgehaalde tekst als materiaal, niet als instructieBetrouwbaar standhouden; het maakt een aanval wel moeilijker
Filters op invoer en outputVangen bekende patronen en duidelijk misbruikEen nieuwe formulering tegenhouden; zwarte lijsten verouderen snel
Logging en monitoringLegt invoer, output en toolaanroepen vast voor detectie en onderzoekOp zichzelf iets voorkomen
Aanvallend testenVindt de paden voordat een aanvaller dat doet, en opnieuw na elke modelwisselBewijzen dat er niets is; het meet één systeem op één moment

De meeste staan ook in de lijst van OWASP voor LLM01, van het gedrag van het model begrenzen tot menselijke goedkeuring en aanvallend testen.17 De volgorde hierboven is de onze: de eerste drie begrenzen de schade, de rest verlaagt de kans.

De les past in één regel: een prompt is geen kluis, en een model is geen autorisatiesysteem. Leg de regels die ertoe doen waar tekst er niet tegenin kan gaan.

Vragen die mensen stellen

Kan prompt injection helemaal worden opgelost?

Niet met de huidige modellen. Het Britse NCSC schreef in december 2025 dat taalmodellen geen grens afdwingen tussen instructies en gegevens. Het haalbare doel is een kleinere kans en een kleinere impact: minimale rechten, controles buiten het model, menselijke goedkeuring voor risicovolle acties, en testen.

Beschermt een verbod in de systeemprompt ons?

Nee. De systeemprompt is tekst die concurreert met andere tekst, en OWASP raadt af hem als geheim of als beveiligingsmaatregel te gebruiken. Gebruik hem om gedrag te sturen, en dwing de regels die ertoe doen af in code: in de API, in de rechten van elk token en in wat de interface toont.

Welke systemen lopen het meeste risico op indirecte prompt injection?

Elk systeem waarin een model inhoud leest die iemand anders kan schrijven, en daarna kan handelen: agents die browsen, e-mail of tickets lezen, uit een gedeelde kennisbank ophalen of tools aanroepen. Een chatbot zonder tools en zonder privégegevens heeft weinig te verliezen; een agent met een breed token heel veel.

Valt prompt injection onder de AI Act?

Voor AI-systemen met een hoog risico wel: artikel 15 eist dat ze bestand zijn tegen pogingen van onbevoegden om hun gebruik of output te wijzigen, en noemt input die het model moet misleiden. Voor de meeste chatbots geldt alleen de transparantieplicht van artikel 50. Testen blijft verstandig, ongeacht de classificatie.

Waar we dit testen

Bronnen

Elke feitelijke zin hierboven heeft een genummerde noot; dit zijn de documenten erachter.

  1. 1

    Prompt injection attacks against GPT-3

    Simon Willison / 2022-09-12 / gecontroleerd 2026-10-10

  2. 2581117

    LLM01:2025 Prompt Injection

    OWASP GenAI Security Project / gecontroleerd 2026-10-10

  3. 3

    OWASP Top 10 for LLM Applications 2026

    OWASP GenAI Security Project / 2026-08-03 / gecontroleerd 2026-10-09

  4. 47913

    MITRE ATLAS data, release v2026.09 (ATLAS-2026.09.yaml)

    MITRE / 2026-09-15 / gecontroleerd 2026-10-10

  5. 6

    Not what you've signed up for: Compromising Real-World LLM-Integrated Applications with Indirect Prompt Injection

    Greshake, Abdelnabi, Mishra, Endres, Holz en Fritz (arXiv 2302.12173) / 2023-02-23 / gecontroleerd 2026-10-10

  6. 1016

    Prompt injection is not SQL injection (it may be worse)

    National Cyber Security Centre (VK) / 2025-12-08 / gecontroleerd 2026-10-10

  7. 12

    LLM07:2025 System Prompt Leakage

    OWASP GenAI Security Project / gecontroleerd 2026-10-10

  8. 14

    OWASP Top 10 for Agentic Applications for 2026

    OWASP GenAI Security Project / 2025-12-09 / gecontroleerd 2026-10-09

  9. 15

    Verordening (EU) 2024/1689 (AI-verordening), Nederlandse tekst

    Bureau voor publicaties van de Europese Unie (Publicatieblad L) / gecontroleerd 2026-10-10