OWASP Top 10 voor LLM-toepassingen
Wat is de OWASP Top 10 voor LLM-toepassingen?
De OWASP Top 10 voor LLM-toepassingen is een lijst van de tien beveiligingsrisico's die het vaakst opduiken in software die op een taalmodel draait. Het OWASP GenAI Security Project schrijft ze, een vrijwilligersgroep van securityonderzoekers en leveranciers, zodat iedereen rond de tafel dezelfde woorden gebruikt voor hetzelfde probleem.
OWASP staat voor Open Worldwide Application Security Project, een non-profitorganisatie die in 2001 begon en sinds begin deze eeuw een Top 10 voor webapplicatiebeveiliging publiceert. OWASP noemt dat zelf een awareness document, en die woorden mag je letterlijk nemen: er is geen audit en OWASP-conform bestaat niet. Wat je krijgt is gedeelde woordenschat en een lijst om af te lopen voor je iets voor klanten zet.
De huidige editie draagt het jaartal 2026 en verscheen op 4 augustus 2026. Dat jaartal hoort bij het nummer, want de volgorde schuift van editie tot editie.
De edities en waarom het jaartal telt
Er bestaan drie edities en alle drie worden ze ergens nog geciteerd. De editie 2023 (versie 1.0 op 1 augustus 2023, versie 1.1 in oktober) had insecure plugin design, model denial of service en model theft nog als aparte items. De editie 2025 verscheen in november 2024, voegde system prompt leakage en vector and embedding weaknesses toe en bracht dienstverstoring en model theft samen onder één item, unbounded consumption. Dat is de nummering die de meeste blogposts en leverancierspagina's vandaag nog gebruiken. De editie 2026 verschoof acht van de tien items en hernoemde er een.
Die editie veranderde ook hoe de volgorde tot stand komt. Vroeger bepaalde alleen de stemming binnen de gemeenschap de rangschikking. Nu telt die stemming voor drie kwart mee en gaat het laatste kwart naar 6.639 echte incidenten uit publieke kwetsbaarheidsdatabanken en een databank met AI-schadegevallen. Op sommige punten spreken de twee elkaar tegen: prompt injection kwam als eerste uit de stemming, maar valt volledig uit de tien zodra je op aantal incidenten sorteert. Het project leest dat als een teken dat teams zich er goed tegen wapenen.
Niet elke OWASP-pagina is tegelijk bijgewerkt, dus een overzichtspagina of een vertaalde PDF geeft je soms nog de lijst van 2025. Kijk naar het jaartal in het nummer voor je een cijfer overneemt.
De tien risico's in de editie 2026
LLM01:2026 Prompt Injection
Er komt tekst bij het model terecht die zijn gedrag verandert op een manier die jij niet bedoeld had, of die nu van een gebruiker komt, uit een opgehaald document, uit tool-output of uit een afbeelding. Prompt injection heeft hier een eigen artikel.LLM02:2026 Sensitive Information Disclosure
Het systeem geeft vertrouwelijke of gereguleerde gegevens vrij langs een kanaal dat niemand goedkeurde. Het antwoord zelf is de voor de hand liggende weg; logs, opgehaalde fragmenten en tool-argumenten zijn de weg die mensen vergeten.LLM03:2026 Excessive Agency
Het systeem kan meer dan de taak vraagt: te veel tools, te veel rechten, te weinig menselijk toezicht. Slechte modeloutput wordt pas schade als ze ergens naartoe kan. Over excessive agency staat hier een apart artikel.LLM04:2026 Supply Chain
De modellen, adapters en datasets die je niet zelf gebouwd hebt en niet zomaar kan doorlichten. Een fine-tuning adapter van een model hub is een afhankelijkheid die geen enkele buildstap controleert.LLM05:2026 Data and Model Poisoning
Iemand manipuleert waar het model uit leert, tijdens pre-training, fine-tuning, embedding of een doorlopende leerloop. Data poisoning heeft een eigen artikel.LLM06:2026 Unbounded Consumption
Niets begrenst hoeveel het systeem mag rekenen, dus een aanvaller kan de dienst platleggen, je factuur laten oplopen, of het model kopiëren door het vaak genoeg te bevragen. De geldkant daarvan staat in het artikel over denial of wallet.LLM07:2026 Misinformation
Output die fout of niet onderbouwd is, en vlot genoeg klinkt dat iemand er iets mee doet. Overreliance zit in hetzelfde item, want een zelfverzekerd antwoord dat niemand nakijkt is een ontwerpkeuze.LLM08:2026 Hidden Context Exposure
Iemand krijgt te pakken of reconstrueert wat jij achter de schermen samenstelde: de system prompt, de beleidstekst die je retrieval erbij haalde, de toolbeschrijvingen. In 2025 heette dit system prompt leakage; het is hernoemd omdat de prompt nooit het enige verborgen stuk in het contextvenster was.LLM09:2026 Vector and Embedding Weaknesses
De ophaallaag hoort bij je vertrouwensgrens. Geplante inhoud kan hoog genoeg scoren om opgehaald en geloofd te worden, en een similarity search loopt vaak over de volledige index voordat je toegangsregels erop worden toegepast. RAG poisoning komt apart aan bod.LLM10:2026 Improper Output Handling
Modeloutput gaat ongecontroleerd verder, een shell in, een SQL-query in of een browser in. Het item zakte van de vijfde naar de tiende plaats, wat meer zegt over hoe goed de oplossing bekend is dan over hoe vaak het nog gebeurt.
Wat verschoven is, en wat dat betekent voor een beleid dat je al schreef
Staat er in je AI-beleid of je leveranciersvragenlijst een kaal LLM-nummer, dan is dat nu dubbelzinnig. Excessive agency ging van LLM06 naar LLM03, dus het nummer dat de meeste mensen onthouden hadden betekent iets anders. Improper output handling ging van LLM05 naar LLM10 en unbounded consumption van LLM10 naar LLM06, dus een oude en een nieuwe verwijzing naar LLM10 wijzen naar tegengestelde risico's. System prompt leakage (LLM07) werd hidden context exposure (LLM08).
De oplossing is een zoek-en-vervang: schrijf LLM03:2026 in plaats van LLM03. De volgende herschikking leest dan als een verouderde verwijzing en niet als een foute.
Hoe de lijst zich verhoudt tot de agentic lijst
Hetzelfde project publiceert de OWASP Top 10 for Agentic Applications, met de nummers ASI01 tot ASI10. De scheidslijn is wat het aangevallen ding mag doen. De LLM-lijst gaat ervan uit dat het model een onderdeel is binnen jouw applicatie: er gaat tekst in, er komt tekst uit, en jouw code beslist wat er dan gebeurt. De agentic lijst gaat ervan uit dat het model zelf beslist, met tools die het kan aanroepen en geheugen dat het meeneemt tussen sessies. Een aantal risico's komt op beide lijsten voor, telkens vanuit een andere hoek. Prompt injection is LLM01; zodra de lezer ook kan handelen, heet dezelfde techniek agent goal hijack (ASI01). LLM05 gaat over trainings- en ophaaldata, memory poisoning (ASI06) over wat de agent vorige maand over jou heeft opgeschreven.
Waar een KMO met één assistent begint
Tien items is veel voor een bedrijf dat één assistent draait op het product van een leverancier. Drie ervan zijn een namiddag waard. Prompt injection zit er bewust niet bij: het staat op één en je kan er geen oplossing voor kopen, dus wat je wel in de hand hebt is hoe weinig het model kan bereiken wanneer zo'n injectie binnenkomt.
LLM02 Sensitive Information Disclosure, omdat je dat bereik zelf gekozen hebt. Alles wat de assistent mag lezen, mag hij herhalen. Op welke gedeelde mappen heb je hem losgelaten, en wie ziet de antwoorden nog?
LLM03 Excessive Agency, omdat het bepaalt hoe erg de andere negen worden. Een assistent die alleen tekst schrijft heeft een kleine blast radius. Zodra hij een tool krijgt die verstuurt, betaalt of verwijdert, krijgt elk ander item een gevolg. Vraag welke acties zonder menselijke klik doorgaan en haal weg wat niemand gevraagd heeft.
LLM06 Unbounded Consumption, omdat het je geld kost zonder dat iemand je aanvalt. De gewone oorzaak is je eigen automatisatie die in een lus draait, of een documentenset die groter bleek dan iemand had ingeschat. Een harde uitgavelimiet en een alert kosten je een uur werk.
De andere zeven zijn het waard om één keer te lezen, en om echt door te nemen de dag dat de assistent een tweede tool krijgt.