---
title: "Beveiliging van AI-agents: OWASP Top 10, incidenten en verdediging · DotsAgent"
description: "Naslagwerk over agentbeveiliging: beide OWASP Top 10-lijsten van 2026, 17 echte incidenten van MCP tot OpenClaw, 15 verdedigingsmaatregelen en een checklist voor teams die AI-agents uitrollen."
url: https://dotsagent.io/nl/security
---

Beveiliging · naslagwerk

# Agentbeveiliging

Agents lezen tekst van onbekenden en handelen vervolgens met je inloggegevens. Op deze pagina vind je de basisregel, beide OWASP-lijsten van 2026, de incidenten tot nu toe en de maatregelen die deze hadden kunnen voorkomen.

## De dodelijke trifecta

1. **Toegang tot privégegevens** E-mail, repositories, databases, bestanden en alles wat achter je inloggegevens zit.
2. **Blootstelling aan niet-vertrouwde content** Webpagina's, issues, supporttickets, inkomende e-mail en toolbeschrijvingen: alle tekst die een aanvaller kan schrijven.
3. **Extern kunnen communiceren** E-mail versturen, pull requests openen, URL's ophalen of externe afbeeldingen weergeven. Simon Willison benoemde deze combinatie van drie onderdelen in juni 2025.

Als één agent alle drie heeft, ga er dan van uit dat prompt injection ertoe kan leiden dat die je gegevens aan een aanvaller doorspeelt. Vertrouw er niet op dat het model weigert; haal minstens één onderdeel weg bij elke agent en sessie.

- [Beveiligingschecklist](https://dotsagent.io/nl/security/checklist): 22 controles voor inputs, tools, runtime, MCP, CI en beheer. Vink ze af en exporteer het resultaat als Markdown-bestand.

- [Incidentenlogboek](https://dotsagent.io/nl/security/incidents): Voor elk openbaar incident rond agentbeveiliging sinds april 2025: wat er gebeurde, waarom de aanval slaagde en wat je in je eigen setup kunt aanpassen.

## Recente incidenten

- 5 jun 2026 [Sessiekaping en toegang tot taken van andere sessies in MCP Python SDK](https://dotsagent.io/nl/security/incidents/2026-06-mcp-python-sdk-session-hijack)
- jun 2026 [Automatische goedkeuring van Claude Code WebFetch maakte data-exfiltratie via huggingface.co mogelijk](https://dotsagent.io/nl/security/incidents/2026-06-claude-code-webfetch-exfiltration)
- 15 apr 2026 [Comment and Control: PR-tekst steelt secrets van CI-agents](https://dotsagent.io/nl/security/incidents/2026-04-comment-and-control-ci-secrets)
- 4 feb 2026 [MCP TypeScript SDK lekte responses tussen clients](https://dotsagent.io/nl/security/incidents/2026-02-mcp-typescript-sdk-response-leak)
- 1 feb 2026 [ClawHavoc: honderden kwaadaardige ClawHub-skills verspreiden AMOS](https://dotsagent.io/nl/security/incidents/2026-02-clawhavoc-malicious-skills)

## OWASP Top 10 voor agentic applicaties 2026

Het OWASP GenAI Security Project publiceerde deze lijst op 9 december 2025. De lijst behandelt risico's die ontstaan zodra een model plannen maakt, geheugen bijhoudt, tools aanroept en samenwerkt met andere agents.

1. `ASI01` **Agentdoel kapen** Een aanvaller verandert wat de agent probeert te bereiken, meestal via instructies die verborgen zitten in inhoud die de agent leest. De agent streeft vervolgens het doel van de aanvaller na met de tools en machtigingen van de gebruiker.
2. `ASI02` **Misbruik en uitbuiting van tools** De agent gebruikt legitieme tools op schadelijke manieren, bijvoorbeeld om records te verwijderen, berichten te versturen of aanroepen aan elkaar te koppelen. Dat kan komen doordat de agent is gemanipuleerd of tools heeft met ruimere bevoegdheden dan de taak vereist.
3. `ASI03` **Misbruik van identiteit en bevoegdheden** Agents handelen met inloggegevens, gedelegeerde tokens en overgenomen machtigingen. Aanvallers maken misbruik van die identiteiten of de lacunes ertussen om hun bevoegdheden uit te breiden of zich als iemand anders voor te doen.
4. `ASI04` **Kwetsbaarheden in de agentische toeleveringsketen** Tools, MCP-servers, skills, plugins, modellen en prompts die tijdens het bouwen of uitvoeren worden geladen, kunnen kwaadaardig of gecompromitteerd zijn. Omdat agents er veel dynamisch laden, bereikt één schadelijk component elke sessie waarin het wordt gebruikt.
5. `ASI05` **Onverwachte code-uitvoering (RCE)** Agents die code schrijven en uitvoeren, of modeluitvoer doorgeven aan shells en interpreters, kunnen ertoe worden aangezet om op de host door de aanvaller gekozen opdrachten uit te voeren.
6. `ASI06` **Vergiftiging van geheugen en context** Aanvallers plaatsen onjuiste feiten of instructies in het geheugen van een agent, opgehaalde documenten of opgeslagen context. De vergiftiging blijft bestaan en beïnvloedt latere sessies, lang nadat de oorspronkelijke input is verdwenen.
7. `ASI07` **Onveilige communicatie tussen agents** Berichten tussen agents worden verstuurd zonder de juiste authenticatie, integriteitscontroles of validatie. Daardoor kunnen ze worden vervalst, opnieuw afgespeeld of aangepast om de ontvangende agent te misleiden.
8. `ASI08` **Ketenstoringen** Eén fout, zoals vergiftigde input, een verkeerd toolresultaat of een gecompromitteerde agent, verspreidt zich via verbonden agents en geautomatiseerde stappen sneller dan mensen kunnen ingrijpen.
9. `ASI09` **Misbruik van vertrouwen tussen mens en agent** Agents klinken zelfverzekerd en behulpzaam, waardoor mensen geneigd zijn hun voorstellen goed te keuren. Aanvallers maken misbruik van dat vertrouwen om iemand schadelijke acties te laten bevestigen of informatie te laten prijsgeven.
10. `ASI10` **Onbetrouwbare agents** Een gecompromitteerde agent of een agent die is afgeweken van zijn beoogde gedrag, blijft zelfstandig handelen buiten de gegeven scope en het bijbehorende toezicht.

## OWASP Top 10 voor LLM-applicaties 2026

Deze editie verscheen op 4 augustus 2026 en vervangt de lijst van 2025. Excessive Agency steeg van de zesde naar de derde plaats en System Prompt Leakage kreeg de nieuwe naam Hidden Context Exposure.

1. `LLM01` **Prompt injection** Input verandert het gedrag van het model op manieren die de ontwikkelaar niet heeft bedoeld. Die input kan rechtstreeks van de gebruiker komen of indirect uit documenten, webpagina's en toolresultaten die het model leest.
2. `LLM02` **Blootstelling van gevoelige informatie** Het model of de applicatie onthult in de output persoonsgegevens, inloggegevens, bedrijfsgeheimen of ander vertrouwelijk materiaal uit trainingsdata, context of gekoppelde systemen.
3. `LLM03` **Overmatige autonomie** De applicatie geeft het model meer functies, rechten of autonomie dan nodig is voor de taak, waardoor een gemanipuleerde of onjuiste output echte schade veroorzaakt. Deze categorie steeg van de zesde plaats in 2025 naar de derde plaats in 2026.
4. `LLM04` **Toeleveringsketen** Modellen, datasets, adapters, packages en plugins van derden kunnen zijn gemanipuleerd of kwetsbaar zijn. Ze brengen dat risico mee naar je applicatie.
5. `LLM05` **Vergiftiging van data en modellen** Aanvallers manipuleren pre-training-, fine-tuning- of embeddingdata om backdoors, vooroordelen of onjuist gedrag te introduceren dat pas later in productie zichtbaar wordt.
6. `LLM06` **Onbegrensd verbruik** Zonder limieten voor requests, inputgrootte of rekenkracht kunnen aanvallers je kosten opdrijven, resources uitputten of via grote aantallen queries een model kopiëren.
7. `LLM07` **Desinformatie** Het model produceert onjuiste of misleidende output die geloofwaardig lijkt, waarna gebruikers of downstreamsystemen er zonder controle naar handelen.
8. `LLM08` **Blootstelling van verborgen context** Heette voorheen System Prompt Leakage. Systeemprompts, verborgen instructies en andere context die niet voor de gebruiker bedoeld is, kunnen worden achterhaald. Daardoor komen de regels, logica of geheimen die erin zijn opgenomen bloot te liggen.
9. `LLM09` **Zwakheden in vectoren en embeddings** Fouten in de manier waarop embeddings worden gegenereerd, opgeslagen en opgehaald, stellen aanvallers in staat content te injecteren, data tussen tenants te lekken of brontekst te reconstrueren. Vooral RAG-systemen lopen hierdoor risico.
10. `LLM10` **Onjuiste verwerking van output** Modeloutput bereikt browsers, shells, databases of andere componenten zonder validatie of encoding. Dat maakt XSS, SQL-injectie, code-uitvoering en data-exfiltratie mogelijk.

## Verdedigingsmaatregelen

Vijftien gedocumenteerde verdedigingsmaatregelen, elk met een link naar de bron. Combineer er meerdere, want geen enkele maatregel houdt alle aanvallen zelfstandig tegen.

### Doorbreek de dodelijke trifecta

De regel van Simon Willison: een agent die privédata kan lezen, onbetrouwbare content te zien krijgt en data naar buiten kan sturen, kan door elke tekst die hij leest tegen je worden ingezet. Schakel voor elke agent of sessie minstens één van deze drie mogelijkheden uit. Geef de agent die openbare issues triageert bijvoorbeeld geen geheimen, en geef de agent met toegang tot geheimen geen kanaal om data naar buiten te sturen.

[simonwillison.net](https://simonwillison.net/2025/jun/16/the-lethal-trifecta/)

### Beperk de agent na onbetrouwbare input

Onderzoek naar ontwerppatronen voor agentbeveiliging komt neer op één regel: zodra een agent niet-vertrouwde invoer heeft verwerkt, mag die invoer geen ingrijpende acties kunnen starten. De patronen zijn onder meer action-selector, plan-then-execute, dual LLM en contextminimalisatie. Kies per workflow één patroon, bijvoorbeeld door het plan vast te leggen voordat de agent niet-vertrouwde gegevens leest.

[arxiv.org](https://arxiv.org/abs/2506.08837)

### Volg de gegevensstroom met CaMeL

CaMeL splitst de agent in tweeën: een planner met privileges schrijft code op basis van het verzoek van de gebruiker, terwijl een afgeschermd model niet-vertrouwde gegevens verwerkt. Waarden van de afgeschermde kant krijgen capability-tags. Beleidsregels controleren die tags voordat een tool wordt uitgevoerd. In het artikel loste CaMeL 77% van de AgentDojo-taken op met aantoonbare beveiliging, tegenover 84% voor een agent zonder verdediging.

[arxiv.org](https://arxiv.org/abs/2503.18813)

### Gebruik inloggegevens met minimale rechten

Geef agents standaard alleen-lezen toegang die beperkt is tot het project. Gebruik nooit een admin- of service_role-sleutel: die omzeilt in Supabase de beveiliging op rijniveau. Beperk CI- en repositorytokens tot de ene taak waarvoor ze nodig zijn. Het incident met Amazon Q Developer bleek terug te voeren op een GitHub-token met te ruime rechten in CodeBuild.

[supabase.com](https://supabase.com/blog/defense-in-depth-mcp)[aws.amazon.com](https://aws.amazon.com/security/security-bulletins/AWS-2025-015/)

### Vraag goedkeuring voor ingrijpende acties

Laat iemand toolaanroepen bevestigen die gegevens schrijven of verwijderen, berichten versturen of geld uitgeven. Weiger standaard als niemand reageert. Supabase raadt handmatige goedkeuring van MCP-toolaanroepen aan. Stel in OpenClaw tools.exec.ask in op always en laat askFallback op deny staan. Toon alle argumenten, zodat de beoordelaar ziet wat er daadwerkelijk wordt uitgevoerd.

[supabase.com](https://supabase.com/blog/defense-in-depth-mcp)[docs.openclaw.ai](https://docs.openclaw.ai/tools/exec-approvals)

### Voer code en tools uit in een sandbox

Voer shellcommando's en gegenereerde code uit in een container of VM zonder inloggegevens, met alleen toegang tot de workspace. OpenClaw wordt geleverd met sandboxing uitgeschakeld en tools.exec.security ingesteld op full op gatewayhosts. Schakel sandboxing daarom in, stel exec security in op deny of allowlist, zet fs.workspaceOnly op true en laat de uitgebreide modus uitgeschakeld. Controleer het resultaat met openclaw sandbox explain.

[docs.openclaw.ai](https://docs.openclaw.ai/gateway/sandboxing)[docs.openclaw.ai](https://docs.openclaw.ai/gateway/security/hardened-baseline)

### Beperk uitgaand netwerkverkeer

Blokkeer standaard uitgaand verkeer van agents en MCP-servers en sta daarna alleen de hosts toe die ze nodig hebben. Keur fetches naar multi-tenant hosts waar iedereen kan publiceren nooit automatisch goed. Zo werd huggingface.co via CVE-2026-54316 een kanaal voor data-exfiltratie. Een mailserver hoort alleen de mail-API te kunnen bereiken, zoals postmark-mcp liet zien.

[nvd.nist.gov](https://nvd.nist.gov/vuln/detail/CVE-2026-54316)[koi.ai](https://www.koi.ai/blog/postmark-mcp-npm-malicious-backdoor-email-theft)

### Houd control planes buiten het internet

Bind agentgateways, dashboards en debugproxies aan loopback en eis een token van minstens 24 tekens, bijvoorbeeld gegenereerd met openssl rand -hex 32. Maak er op afstand verbinding mee via een SSH-tunnel of Tailscale Serve. Gebruik Tailscale Funnel alleen met wachtwoordauthenticatie. Voer regelmatig openclaw security audit --deep uit.

[docs.openclaw.ai](https://docs.openclaw.ai/gateway/security/network-exposure)[docs.openclaw.ai](https://docs.openclaw.ai/gateway/tailscale)[docs.openclaw.ai](https://docs.openclaw.ai/gateway/security/running-the-audit)

### Valideer de MCP-tokenaudience

De MCP-autorisatiespecificatie vereist dat een server toegangstokens weigert die niet voor die server zijn uitgegeven. De specificatie verbiedt ook om de token van een client door te sturen naar een upstream-API. Clients sturen RFC 8707-resource-indicators mee, zodat elke token aan één server is gekoppeld. Een proxyserver heeft toestemming nodig van elke client; anders wordt die een confused deputy.

[modelcontextprotocol.io](https://modelcontextprotocol.io/specification/2026-07-28/basic/authorization/security-considerations)[modelcontextprotocol.io](https://modelcontextprotocol.io/docs/tutorials/security/security_best_practices)

### Isoleer MCP-sessies en tenants

Maak voor elke sessie een aparte server- en transportinstantie in plaats van er één met meerdere clients te delen. Koppel elke sessie en taak aan de geauthenticeerde principal die deze heeft aangemaakt en controleer die koppeling bij elk verzoek. Beide MCP SDK-beveiligingsadviezen uit 2026 kwamen voort uit gedeelde of niet-gekoppelde status.

[github.com](https://github.com/advisories/GHSA-345p-7cg4-v4c7)[github.com](https://github.com/advisories/GHSA-JPW9-PFVF-9F58)

### Controleer skills, plugins en MCP-servers

Leg exacte versies vast, bekijk de diff vóór elke update en controleer scannerresultaten, zoals die van VirusTotal, en de beveiligingsauditstatus van ClawHub. Hash toolbeschrijvingen wanneer je een server goedkeurt en waarschuw als ze veranderen; zo spoor je rug pulls op. OpenClaw blokkeert standaard niets tijdens de installatie, dus stel security.installPolicy zelf in.

[openclaw.ai](https://openclaw.ai/blog/virustotal-partnership)[docs.openclaw.ai](https://docs.openclaw.ai/clawhub/security-audits)[invariantlabs.ai](https://invariantlabs.ai/blog/mcp-security-notification-tool-poisoning-attacks)[docs.openclaw.ai](https://docs.openclaw.ai/help/faq/security-and-access-control)

### Bepaal wie de agent berichten kan sturen

Beperk DM-toegang tot pairing of een allowlist, vereis een vermelding voordat de agent in groepschats handelt en stel session.dmScope in op per-channel-peer, zodat afzenders nooit context delen. Iedereen die de agent berichten kan sturen, kan proberen instructies te geven. De lijst met afzenders hoort dus bij je aanvalsoppervlak.

[docs.openclaw.ai](https://docs.openclaw.ai/gateway/security/access-control)[docs.openclaw.ai](https://docs.openclaw.ai/gateway/security/hardened-baseline)

### Houd secrets buiten niet-vertrouwde CI-runs

Voer geen agent met repositorysecrets uit in workflows die buitenstaanders via een pull request, issue of commentaar kunnen starten. Behandel titels, beschrijvingen en commentaren uit die events als kwaadwillig. Als een stap echt secrets nodig heeft, voer die dan pas uit nadat een maintainer de run heeft goedgekeurd.

[oddguan.com](https://oddguan.com/blog/comment-and-control-prompt-injection-credential-theft-claude-code-gemini-cli-github-copilot/)

### Behandel modeluitvoer als niet-vertrouwd

Escape of saniteer modeluitvoer voordat je die weergeeft. Geef de uitvoer nooit ongecontroleerd door aan een shell, SQL-query of browser. Blokkeer het automatisch laden van Markdown-afbeeldingen en links naar externe domeinen en stel een strikt Content Security Policy in. EchoLeak verplaatste gegevens via URL's die automatisch werden geladen.

[genai.owasp.org](https://genai.owasp.org/resource/owasp-genai-llm-top-10-2026/)[nvd.nist.gov](https://nvd.nist.gov/vuln/detail/cve-2025-32711)

### Controleer agentsignaturen en autoriseer daarna

Als je wilt vaststellen welke agent je site of API aanroept, controleer dan de Web Bot Auth-signatuur aan de hand van de sleutels die de operator publiceert op /.well-known/http-message-signatures-directory. De ChatGPT-agent ondertekent met Signature-Agent https://chatgpt.com. Een geldige signatuur vertelt je wie de agent beheert, niet welke gebruiker de aanvraag heeft gedaan of wat die gebruiker mag doen. Autoriseer daarom elk verzoek afzonderlijk.

[datatracker.ietf.org](https://datatracker.ietf.org/doc/draft-ietf-webbotauth-httpsig-protocol/)[help.openai.com](https://help.openai.com/en/articles/11845367-chatgpt-agent-allowlisting)

## Vragen over agentbeveiliging

### Wat is prompt injection bij AI-agents?

Prompt injection is tekst die het model als instructies behandelt, hoewel de tekst als data is binnengekomen, bijvoorbeeld op een webpagina, in een e-mail of in een toolbeschrijving. In een agent kunnen zulke instructies toolaanroepen activeren die met jouw inloggegevens worden uitgevoerd. OWASP vermeldt dit als LLM01:2026; Agent Goal Hijack (ASI01) beschrijft de agentische variant.

### Wat is de dodelijke trifecta voor AI-agents?

Simon Willison gebruikt deze term voor een agent die toegang tot privégegevens, blootstelling aan niet-vertrouwde inhoud en een manier om extern te communiceren combineert. Als alle drie aanwezig zijn, kan prompt injection je gegevens uitlezen en versturen. Het MCP-tokenlek bij Supabase in 2025 is een schoolvoorbeeld.

### Hoe beveilig ik een MCP-server?

Wijs access tokens af die niet voor jouw server zijn uitgegeven en geef het token van een client nooit door aan een upstream-API. Maak per sessie één server- en transportinstantie en koppel sessies en taken aan de geauthenticeerde gebruiker. Gebruik de TypeScript SDK versie 1.26.0 of hoger en de Python SDK versie 1.27.2 of hoger; die verhelpen een responselek tussen clients en het kapen van sessies.

### Kan een betere system prompt prompt injection voorkomen?

Vertrouw daar niet op. Onderzoek naar ontwerppatronen voor agents stelt dat een agent, zodra die niet-vertrouwde input heeft verwerkt, zo moet worden beperkt dat die input geen ingrijpende acties kan activeren. CaMeL, dat dit afdwingt met capability-tracking, loste 77% van de AgentDojo-taken op met aantoonbare beveiliging, tegenover 84% voor een onbeschermde agent.

### Wat is het verschil tussen de OWASP LLM Top 10 en de Agentic Top 10?

De OWASP Top 10 for LLM Applications, waarvan de editie van 2026 op 4 August 2026 verscheen, behandelt risico's in elke toepassing die op een taalmodel is gebaseerd. De OWASP Top 10 for Agentic Applications, gepubliceerd op 9 December 2025, behandelt wat er verandert wanneer het model plannen maakt, tools gebruikt, geheugen bijhoudt en met andere agents communiceert. De meeste ontwikkelaars van agents hebben beide nodig.

### Is het veilig om een OpenClaw-gateway aan internet bloot te stellen?

Nee. Laat gateway.bind op de standaardwaarde loopback staan en gebruik een SSH-tunnel of Tailscale Serve voor externe toegang. OpenA2A telde op 1 September 2026 192,492 blootgestelde gateways. CVE-2026-25253 liet bovendien zien dat zelfs installaties die alleen op loopback luisteren snel gepatcht moeten worden.

## Bronnen

1. [genai.owasp.org](https://genai.owasp.org/resource/owasp-top-10-for-agentic-applications-for-2026/)/resource/owasp-top-10-for-agentic-applications-for-2026/
2. [genai.owasp.org](https://genai.owasp.org/download/52117)/download/52117
3. [genai.owasp.org](https://genai.owasp.org/resource/owasp-genai-llm-top-10-2026/)/resource/owasp-genai-llm-top-10-2026/
4. [github.com](https://github.com/GenAI-Security-Project/GenAI-LLM-Top10)/GenAI-Security-Project/GenAI-LLM-Top10

Onafhankelijke referentie voor iedereen die AI-agents bouwt. Niet verbonden aan een van de genoemde leveranciers.

© 2026 DotsAgent · Feiten gecontroleerd op 1 oktober 2026
