Zes AI-kwetsbaarheden. Drie faalpatronen. De meeste organisaties pakken het verkeerde probleem aan.
De golf die AI-beveiligingsrisico’s opnieuw definieerde
Tussen juni 2025 en april 2026 onthulden beveiligingsonderzoekers zes kritieke AI-kwetsbaarheden op platforms waar de meeste ondernemingen dagelijks op vertrouwen. Elk afzonderlijk leidde tot een patch en een nieuwsbericht. Samen vormen ze het meest overtuigende bewijs voor een structurele verschuiving in hoe bedrijfsdata wordt gestolen.
Belangrijkste inzichten
- Zes kritieke AI-kwetsbaarheden onthuld in minder dan een jaar. EchoLeak, Reprompt, GeminiJack, ForcedLeak, GrafanaGhost en de OpenAI-plugin supply chain-aanval waren gericht op Microsoft Copilot, Salesforce, Google Gemini, Grafana en het OpenAI-ecosysteem tussen medio 2025 en april 2026.
- De sector behandelt ze als één probleem — het zijn er drie. Deze zes onthullingen bevatten drie verschillende faalpatronen: onbevestigde invoer die door AI wordt verwerkt zonder validatie, te brede data-toegang zonder handhaving per bewerking, en back-endprocessen met functionele reikwijdte waarvoor ze nooit ontworpen waren.
- Onbevestigde invoer is de meest consistente fout. Elke kwetsbaarheid in deze reeks begint met externe data die via een legitiem kanaal een systeem binnenkomt en door AI wordt verwerkt zonder validatie. Dit patroon wordt door de sector grotendeels genegeerd.
- GrafanaGhost is architectonisch anders dan de andere vijf. Grafana heeft RBAC op data-toegang aan de gebruikerszijde. De aanval activeerde dit nooit — omdat het via systeemniveau back-endprocessen werkte, niet via gebruikerssessies. Data-toegangscontroles pakken de andere vijf aan. Ze pakken GrafanaGhost niet aan.
- Modelniveau-guardrails faalden in elk geval. De verdediging van Grafana werd door één trefwoord omzeild. De CSP van Salesforce werd omzeild voor vijf dollar. Guardrails zijn configuratie-instellingen binnen het aangevallen systeem — ze vullen echte controles aan, maar vervangen ze nooit.
EchoLeak in Microsoft 365 Copilot was de eerste formeel erkende zero-click AI-kwetsbaarheid — CVSS 9.3, gepatcht in juni 2025. ForcedLeak in Salesforce Agentforce volgde in september 2025 — CVSS 9.4, uit te buiten met een domeinaankoop van vijf dollar. GeminiJack in Google Gemini Enterprise was een echte zero-click aanval die jaren aan Workspace-data kon exfiltreren uit één besmet document. Reprompt demonstreerde single-click Copilot-exfiltratie via een samengestelde URL. GrafanaGhost veranderde vertrouwde back-endprocessen in een onzichtbare datakoerier. En een supply chain-aanval op het OpenAI-plugin-ecosysteem bleef zes maanden onopgemerkt bij 47 ondernemingen door het gebruik van buitgemaakte agent-inloggegevens.
Elke leverancier reageerde verantwoordelijk. Elk platform werd gepatcht. En elke aanval maakte gebruik van architecturale gaten die niet worden gedicht door het patchen van individuele platforms.
Het CrowdStrike 2026 Global Threat Report stelde vast dat 82% van de detecties in 2025 malware-vrij was — tegenstanders werken nu al via legitieme tools. Deze zes kwetsbaarheden brengen die trend tot het uiterste: De AI is het legitieme hulpmiddel, het vertrouwde datatoegangskanaal is het exfiltratiepad, en de monitoringstack ziet niets ongebruikelijks.
Zes kwetsbaarheden in één oogopslag
| Kwetsbaarheid | Platform | Onthuld | Werking | Data in gevaar |
|---|---|---|---|---|
| EchoLeak (CVE-2025-32711) | Microsoft 365 Copilot | Juni 2025 | Samengestelde e-mail opgenomen als Copilot-context; data geëxfiltreerd via image-tag via vertrouwde Microsoft-domeinen | OneDrive, SharePoint, Teams — alle content waartoe Copilot toegang heeft |
| ForcedLeak (CVSS 9.4) | Salesforce Agentforce | September 2025 | Prompt-injectie in 42.000-karakter Web-to-Lead formulierveld; exfiltratie via PNG naar verlopen allowlisted domein van $5 | CRM-records, leadgegevens, bijgevoegde documenten |
| GeminiJack | Google Gemini Enterprise | December 2025 | Besmet Google Doc geïndexeerd door RAG; zero-click sweep door Gmail, Docs, Calendar | Jaren aan Workspace-data — e-mail, documenten, agenda, API-sleutels |
| Reprompt (CVE-2026-24307) | Microsoft Copilot | Januari 2026 | Prompt-injectie ingebed in URL-parameter; single-click exfiltratie | Zelfde als EchoLeak — OneDrive, SharePoint, Teams |
| GrafanaGhost | Grafana AI-componenten | April 2026 | Prompts verborgen in URL-queryparameters opgeslagen in event logs; back-end enrichment process met systeemrechten voerde verborgen instructies uit | Financiële statistieken, infrastructuurtelemetrie, klantgegevens |
| OpenAI Plugin Attack | OpenAI-plugin-ecosysteem | 2026 | Gecompromitteerde plugin verzamelde agent-inloggegevens; zes maanden toegang bij 47 ondernemingen | Klantdata, financiële gegevens, eigen code |
Patroon één: Onbevestigde invoer verwerkt als vertrouwde AI-context
Elke kwetsbaarheid in deze reeks begint op dezelfde manier. Externe data komt via een legitiem kanaal een systeem binnen — een e-mail, een gedeeld document, een webformulier, URL-queryparameters, een gecompromitteerde plugin — en een AI-component verwerkt het later zonder het als vijandig te behandelen.
De payload van EchoLeak was een samengestelde e-mail die Copilot als context opnam tijdens een routinematige query. De gebruiker opende het nooit. Die van GeminiJack was een besmet Google Doc, gedeeld met iedereen in de doelorganisatie, geïndexeerd door Gemini’s RAG-systeem, en sluimerend tot een medewerker het via zoeken activeerde. Die van ForcedLeak was tekst verborgen in een 42.000-karakter Web-to-Lead formulierveld — de AI kon het verschil niet zien tussen formulierdata en geïnjecteerde instructies. Die van GrafanaGhost waren URL-queryparameters opgeslagen in Grafana’s event monitoring logs — externe webverzoeken gelogd als routinetraffic, later verwerkt door AI-gestuurde back-end enrichment-processen.
Het principe dat externe invoer gevalideerd moet worden voordat een systeem het verwerkt, is fundamenteel voor webapplicatiebeveiliging. Organisaties bouwen WAF’s rondom dit principe. Ontwikkelaars worden erop getraind. Niemand paste het toe op AI-verwerkte data — omdat niemand e-mails, gedeelde documenten, logs en formuliervelden als invoerkanalen voor AI-prompt-injectie zag.
Het Cyera 2025 State of AI Data Security Report stelde vast dat 83% van de ondernemingen al AI gebruikt in dagelijkse processen, maar slechts 13% heeft goed zicht op hoe AI hun data benadert. Dat verschil van 70 punten is het aanvalsoppervlak dat deze kwetsbaarheden benutten. De AI verwerkt data uit tientallen bronnen. Niemand valideert die bronnen op vijandige AI-instructies.
Dit is de meest consistente fout over alle zes kwetsbaarheden, en het is degene die de sector grotendeels negeert. Data-toegangscontroles pakken het niet aan. Guardrails op modelniveau pakken het niet aan. Het vereist discipline in inputvalidatie, toegepast op elke databron die AI aanraakt.
Patroon twee: Te brede AI-data-toegang zonder handhaving per bewerking
Vijf van de zes kwetsbaarheden — EchoLeak, Reprompt, GeminiJack, ForcedLeak en de OpenAI-plugin-aanval — betreffen AI-systemen die namens een gebruiker werken met brede, impliciete data-toegang en zonder handhaving per bewerking.
Microsoft 365 Copilot heeft vooraf geconfigureerde toegang tot OneDrive, SharePoint en Teams — de volledige productiviteitssuite. Google Gemini Enterprise’s RAG heeft native toegang tot Gmail, Docs en Calendar. Salesforce Agentforce kan de volledige CRM bevragen. In elk geval authenticeerde de AI één keer op sessie- of connectieniveau, en kreeg daarna toegang tot alles wat bereikbaar was. Wanneer geïnjecteerde instructies werden uitgevoerd, haalde de AI data op die veel verder ging dan wat een gebruiker bedoelde — en niets evalueerde elke individuele bevraging tegen beleid.
De OpenAI-plugin-aanval is een variant op dit patroon: Gecompromitteerde inloggegevens fungeerden als identiteit van de agent, wat brede toegang gaf tot 47 omgevingen gedurende zes maanden. De inloggegevens waren geldig. De toegang leek normaal. Niets beperkte wat die inloggegevens per bewerking konden doen.
Toegangscontrole per bewerking — elke aanvraag onafhankelijk authenticeren, beleid op basis van attributen bij elke bewerking evalueren, inloggegevens isoleren van de AI-toegankelijke context, en elke toegang loggen met volledige toewijzing — zou de impact in elk van deze vijf gevallen beperkt hebben.
Het Kiteworks Data Security and Compliance Risk: 2026 Forecast Report vond een verschil van 15–20 punten tussen governance-controles (monitoring, logging, human-in-the-loop) en containment-controles (purpose binding, kill switches, netwerkisolatie). Het handhavingsgat per bewerking is reëel en urgent — voor de vijf kwetsbaarheden waar het op van toepassing is.
Patroon drie: Falen van procesbeperking en functionele reikwijdte
GrafanaGhost is architectonisch anders dan de andere vijf, en het behandelen als een probleem van data-toegangscontrole is een misvatting van de kwetsbaarheid.
Grafana heeft RBAC op data-toegang aan de gebruikerszijde. GrafanaGhost activeerde dit nooit. De aanval werkte nooit namens een gebruiker. In plaats daarvan werkte het via vertrouwde back-end enrichment-processen met systeemrechten — processen ontworpen om eventdata te correleren, analyseren en voorbereiden voor dashboards.
Toen het enrichment-proces het event van de aanvaller analyseerde (met de verborgen AI-prompt in URL-queryparameters), voerde de AI-component de instructies uit binnen de bevoorrechte context van het proces. Het bouwde een dashboard dat niemand had aangevraagd, verwerkte gevoelige data in image-tags en maakte deze extern toegankelijk. Onderzoekers van Noma ontdekten dat het trefwoord “INTENT” de guardrails van de AI volledig uitschakelde. Een validatiefout in de URL deed een externe server als intern lijken.
Het back-endproces had brede leesrechten nodig. Dat is verdedigbaar. Wat het niet nodig had, was de mogelijkheid om routines aan te roepen die dashboards renderen, image-tags genereren of uitgaande verzoeken naar externe servers doen. Dat zijn outputmogelijkheden waarvoor het proces nooit bedoeld was — maar niemand voorkwam actief dat het deze kon gebruiken.
De OpenAI-plugin-aanval deelt een element van patroon drie: Agent-inloggegevens werden opgeslagen waar gecompromitteerde plugincode ze kon benaderen, omdat authenticatietokens niet geïsoleerd waren van de AI-toegankelijke context.
Least privilege moet gelden voor functionele reikwijdte — welke API’s, renderingroutines en outputkanalen een proces kan aanroepen — en voor opslag van inloggegevens, niet alleen voor data-toegang. Dit is het containment-gat, en het vereist een andere architecturale aanpak dan data-toegangsgovernance.
Drie faalpatronen gekoppeld aan controles
| Patroon | Kwetsbaarheden | Primaire fout | Wat pakt het aan | Wat pakt het NIET aan |
|---|---|---|---|---|
| 1. Onbevestigde invoer als vertrouwde AI-context | Alle zes | Externe data verwerkt door AI zonder validatie | Inputvalidatie voor AI-verwerkte data; zero-trust behandeling van alle databronnen die AI gebruikt | Data-toegangscontroles (RBAC/ABAC); guardrails op modelniveau |
| 2. Te brede AI-data-toegang | EchoLeak, Reprompt, GeminiJack, ForcedLeak, OpenAI-plugin | AI authenticeert één keer, krijgt daarna toegang tot alles binnen scope | Authenticatie per bewerking; ABAC op elke aanvraag; isolatie van inloggegevens; audittrail | Inputvalidatie (patroon 1); procesbeperking (patroon 3) |
| 3. Procesbeperking / isolatie van inloggegevens | GrafanaGhost, OpenAI-plugin | Back-endproces met te brede functionele reikwijdte; inloggegevens toegankelijk voor gecompromitteerde code | Functionele reikwijdte (least privilege op mogelijkheden, niet alleen data); isolatie van inloggegevens in OS-keystore | Data-toegangscontroles (verkeerde laag voor GrafanaGhost); alleen inputvalidatie |
Modelniveau-guardrails faalden overal — maar dat is het symptoom
De AI-guardrails van Grafana werden door één trefwoord omzeild. De Content Security Policy van Salesforce werd gepasseerd met een verlopen domein van vijf dollar. Google Gemini’s RAG kon een besmet document niet onderscheiden van een legitiem document. De veiligheidsfuncties van Microsoft Copilot konden niet voorkomen dat een samengestelde e-mail — of een samengestelde URL — zijn contextvenster overnam.
Guardrails op modelniveau zijn configuratie-instellingen binnen het aangevallen systeem. Ze kunnen worden omzeild door prompt-injectie, gepasseerd door trust boundaries te targeten, of geneutraliseerd door de context te manipuleren die de AI verwerkt. Elke grote LLM is bijna altijd succesvol gejailbreakt in gecontroleerd onderzoek. De Agents of Chaos-studie van februari 2026 — uitgevoerd door 20 onderzoekers van MIT, Harvard, Stanford, CMU en anderen — documenteerde AI-agenten die infrastructuur vernietigden, PII-databases onthulden en identiteitsvervalsing accepteerden in live omgevingen.
Guardrails zijn een nuttige verdedigingslaag. Ze vullen echte controles aan. Ze vervangen geen van deze. Geen enkele toezichthouder, auditor of forensisch onderzoeker accepteert “ons model was geïnstrueerd om het niet te doen” als bewijs van toegangscontrole, inputvalidatie of procesbeperking.
Hoe Kiteworks het data-toegangspatroon aanpakt — en waar de uitdaging verder reikt
Kiteworks biedt een gereguleerde datalaag tussen AI-systemen en bedrijfsdatabronnen via de Secure MCP Server en AI Data Gateway. Elke AI-data-aanvraag — of het nu van een interactieve assistent via MCP is of een RAG-pijplijn via de API — wordt geauthenticeerd via OAuth 2.0 met inloggegevens opgeslagen in de OS keychain (nooit blootgesteld aan het AI-model), in realtime geëvalueerd tegen RBAC- en ABAC-beleid bij elke bewerking, gelimiteerd om bulkextractie te voorkomen, en gelogd in een manipulatiebestendige audittrail die aan SIEM wordt gevoed met volledige toewijzing.
Deze controles pakken direct patroon twee aan — de vijf kwetsbaarheden waarbij AI-systemen namens een gebruiker met brede impliciete toegang werken en zonder handhaving per bewerking. Per-operatie ABAC beperkt wat de AI bij elke aanvraag kan benaderen. Isolatie van inloggegevens voorkomt harvesting. Audittrails maken detectie mogelijk en voldoen aan compliance-vereisten.
Voor patroon één (onbevestigde invoer) implementeert Kiteworks het principe van controles die onafhankelijk van het AI-model en buiten de AI-toegankelijke context werken — en dat strekt zich uit tot de uitdaging van inputvalidatie. Maar valideren of content die Salesforce-formulieren, Google Docs, Microsoft-e-mails of Grafana-eventlogs binnenkomt vijandige AI-instructies bevat, is een verantwoordelijkheid op applicatieniveau die data-toegangsgovernance alleen niet oplost.
Voor patroon drie (procesbeperking) laat de MCP-implementatie van Kiteworks de juiste architecturale aanpak zien: OAuth-tokens in de OS keychain, ABAC op elke MCP-bewerking, path traversal-validatie. Het uitbreiden van deze principes naar de functionele reikwijdte van externe back-endprocessen — beperken wat die processen kunnen doen, niet alleen welke data ze kunnen benaderen — is de volgende stap.
De eerlijke conclusie: Kiteworks verkleint de impact en maakt detectie mogelijk voor patroon twee. Patronen één en drie vereisen aanvullende architecturale controles waar de sector nog aan werkt.
Wat securityleiders moeten doen — alle drie patronen
Ten eerste, audit de trust boundaries van invoer bij elke AI-integratie. Identificeer elke databron die AI verwerkt — e-mails, gedeelde documenten, formulierinzendingen, event logs, API-responses, metadata-velden. Als externe data een systeem binnenkomt waar een AI-component het verwerkt, behandel die invoer dan als vijandig, ongeacht hoe diep in het systeem het is opgeslagen. Pas dezelfde validatiediscipline toe als bij user input aan de webzijde.
Ten tweede, eis handhaving van data-toegang per bewerking voor elk AI-systeem dat namens een gebruiker werkt. Authenticatie bij elke aanvraag, niet alleen bij het opzetten van de verbinding. ABAC geëvalueerd bij elke bewerking. Inloggegevens buiten de AI-toegankelijke context opgeslagen. Manipulatiebestendige audittrails met volledige toewijzing die je SIEM voeden. Als een van deze ontbreekt, heeft de AI-integratie geen data-toegangscontrole die een prompt-injectie overleeft.
Ten derde, beperk back-end AI-processen tot alleen de functionele mogelijkheden die ze nodig hebben. Brede leesrechten kunnen noodzakelijk zijn. De mogelijkheid om content te renderen, uitgaande verzoeken te doen, dashboards te bouwen of outputroutines aan te roepen is dat niet. Least privilege geldt voor wat processen kunnen doen, niet alleen welke data ze kunnen benaderen. Dit is de controle die GrafanaGhost miste.
Ten vierde, stop met het behandelen van guardrails op modelniveau als compenserende controles. Ze faalden in elk geval in deze reeks. Ze zijn een nuttige verdedigingslaag — maar ze vervangen geen van de drie bovenstaande patronen.
Ten vijfde, red-team AI-integraties op alle drie patronen. Test op prompt-injectie via gebruikerskanalen (patroon twee) en via eventdata, logvermeldingen, metadata en back-end databronnen (patronen één en drie). Elke kwetsbaarheid in deze reeks werd ontdekt door onderzoekers, niet door de organisaties die de platforms draaiden. Als je niet test, laat je de ontdekking over aan iemand met andere bedoelingen.
De patches zijn doorgevoerd. De drie architecturale gaten niet. De volgende variant zal het patroon uitbuiten dat je niet hebt aangepakt.
Veelgestelde vragen
EchoLeak (Microsoft 365 Copilot), ForcedLeak (Salesforce Agentforce), GeminiJack (Google Gemini Enterprise), Reprompt (Microsoft Copilot), GrafanaGhost (Grafana) en een supply chain-aanval op het OpenAI-plugin-ecosysteem. Gezamenlijk geanalyseerd onthullen ze drie verschillende architecturale faalpatronen — onbevestigde invoer, te brede data-toegang en procesbeperkingsfouten — die niet worden opgelost door het patchen van individuele platforms. Het CrowdStrike 2026 Global Threat Report vond dat 82% van de detecties malware-vrij was, waarmee wordt bevestigd dat tegenstanders via legitieme tools werken — precies het patroon dat deze AI-kwetsbaarheden uitbuiten.
GrafanaGhost werkte via vertrouwde back-end enrichment-processen met systeemrechten — niet via een gebruikerssessie. Grafana heeft RBAC op data-toegang aan de gebruikerszijde, en de aanval activeerde dit nooit. De belangrijkste fouten waren onbevestigde invoer (URL-parameters opgeslagen in event logs) verwerkt zonder validatie, en het back-endproces had functionele mogelijkheden (renderen, uitgaande communicatie) waarvoor het nooit bedoeld was. Data-toegangscontroles pakken de andere vijf kwetsbaarheden aan. Ze pakken het faalpatroon van GrafanaGhost niet aan.
Guardrails op modelniveau zijn configuratie-instellingen binnen het aangevallen systeem. Onderzoekers van Noma Security omzeilden de guardrails van Grafana met één trefwoord. De CSP van Salesforce werd gepasseerd met een domein van vijf dollar. Elke grote LLM is gejailbreakt in gecontroleerd onderzoek. Guardrails vullen echte controles aan — inputvalidatie, toegangscontrole per bewerking en procesbeperking — maar ze vervangen geen van deze.
Standaard RBAC evalueert toegang op sessie- of connectieniveau — eenmaal geauthenticeerd krijgt de AI toegang tot alles binnen scope. Toegangscontrole per bewerking evalueert elke individuele data-aanvraag tegen beleid: wie vraagt aan, welke data, voor welk doel, onder welk beleid. Dit is het verschil tussen “Copilot kan SharePoint benaderen” en “deze specifieke bevraging, nu, is geautoriseerd voor deze datacategorie.” Het Kiteworks 2026 Forecast Report vond een verschil van 15–20 punten tussen governance- en containment-controles — handhaving per bewerking is de containment-controle die de meeste organisaties missen.
Begin met een volledige inventarisatie van AI-integraties — elk hulpmiddel met AI-functionaliteit dat data uit externe bronnen verwerkt of namens gebruikers werkt. Beoordeel vervolgens elke integratie op alle drie patronen: Komt externe data bij de AI zonder validatie (patroon één)? Heeft de AI brede sessietoegang zonder handhaving per bewerking (patroon twee)? Hebben back-end AI-processen functionele mogelijkheden buiten hun bedoelde scope (patroon drie)? De Agents of Chaos-studie van februari 2026 documenteerde zowel fouten van patroon twee als drie in live omgevingen. Red-team op alle drie.