Donker beeldscherm met dichte regels gekleurde code en logtekst
Nieuws11 augustus · 02:225 min leestijd

GhostJacking kaapt AI-agents via geblokkeerde verzoeken in Cloudflare-logs

Tenet Security toonde op DEF CON 34 hoe een door Cloudflare geblokkeerd verzoek de aanval binnenbrengt: de AI-agent leest de gelogde tekst als bevinding en verzet vervolgens zelf het DNS. Negen van de tien keer raak tegen Claude Code.

GhostJacking laat aanvallers instructies achter in de logs van Cloudflare, Datadog en Sentry, waarna de AI-agent van het slachtoffer ze met zijn eigen rechten uitvoert, demonstreerde beveiliger Tenet Security zondag op DEF CON 34 in Las Vegas.

De inzet is concreet voor elke organisatie die een AI-assistent op haar monitoring- en beveiligingsdata heeft gezet. Vraagt een analist die assistent om de geblokkeerde verzoeken van gisteren door te nemen, dan leest hij de tekst van de aanvaller als een echte bevinding. Mag diezelfde assistent ook schrijven in de Cloudflare-API, dan verzet hij het DNS: het adresboek dat bepaalt waar je websitebezoek en je e-mail terechtkomen.

Het blok zelf werd het bezorgkanaal

De aanval begint bij een verzoek dat de firewall netjes tegenhoudt. Cloudflare logt zo'n geblokkeerd verzoek woord voor woord, inclusief de headers waar de aanvaller zijn tekst in kwijt kan. De agent die de logs doorneemt, ziet geen kwaadaardige invoer maar een opdracht, schrijft de DNS-records om naar een server van de aanvaller en meldt de kwestie als afgehandeld.

In de proeven van Tenet lukte dat negen van de tien keer tegen Claude Code, op Cloudflare's eigen aanbevolen inrichting. Dat laatste is de scherpe kant: het is juist de managed rule van Cloudflare die het verzoek blokkeert, en dat blok draagt de aanval naar binnen. Mede-oprichter Barak Sternberg vat het samen: de firewall ging nooit plat, hij deed er alleen niet meer toe.

Schema van de Cloudflare aanvalsketen: browser met 403, WAF-logs, vergiftigde headers, agent leest events, schrijfactie via de Cloudflare API, DNS-kaping (bron: Tenet Security)
Schema van de Cloudflare aanvalsketen: browser met 403, WAF-logs, vergiftigde headers, agent leest events, schrijfactie via de Cloudflare API, DNS-kaping (bron: Tenet Security)

Dezelfde vorm op Datadog en Sentry

Bij Datadog draait het om de sleutel die bedoeld is voor de voorkant van een website en daardoor routinematig openbaar staat. Tenet vond er ruim 2.700 door simpelweg te zoeken. Met zo'n sleutel plant een aanvaller een nep-alarm met het label urgent; vraagt een engineer zijn agent daarna om de fouten te bekijken, dan draait die het meegeleverde commando en verdwijnen omgevingsvariabelen en cloud-credentials. Tenet valideerde dit met Claude Code en meldde het op 17 juni 2026 bij Datadog.

De derde variant springt van de ene AI naar de andere. Sentry's eigen AI Seer leest een geprepareerd foutrapport en neemt de nepfix van de aanvaller over als zijn eigen conclusie, waarna de codeeragent die Seer vertrouwt de code uitvoert zonder de oorspronkelijke injectie ooit te zien.

Er valt niets ongeautoriseerds te detecteren

Geen enkele standaardverdediging sloeg aan tijdens de hele keten. Dat is geen tekortkoming van de tooling: elke stap is iets wat de agent al mocht doen. De kwestie is niet ongeautoriseerde toegang, maar geautoriseerde toegang die tegen de eigenaar wordt gebruikt.

De schaal komt van de tools zelf. Cloudflare draait bij 42 procent van de Fortune 500 en verwerkt ongeveer een vijfde van al het internetverkeer, Datadog zit bij 48 procent van diezelfde lijst en Sentry bij vier miljoen ontwikkelaars. Tenet schat dat ruim 15.000 organisaties de kwetsbare inrichting draaien, een extrapolatie op basis van 73 publieke, herleidbare vondsten bij 48 organisaties. Het gaat om het gebruik van die opzet, niet om vastgestelde inbraken.

Sternberg wijst naar de rechtenkant: geef een agent de minimale rechten per taak, werk met kortlevende credentials en ga ervan uit dat elk token dat hij kan bereiken al gelekt is. Dat is precies de laag waar de identiteitsmarkt zich op richt, zoals bij de aankoop waarmee Okta wil volgen wat een AI-agent doet nadat hij al is ingelogd.

Schema van de agentische aanvalsketen van verkenning en aflevering via de trigger naar uitvoeren, wegsluizen en persistentie (bron: Tenet Security)
Schema van de agentische aanvalsketen van verkenning en aflevering via de trigger naar uitvoeren, wegsluizen en persistentie (bron: Tenet Security)

De inventarisvraag die niets kost

Lees- en schrijfrechten uit elkaar trekken helpt volgens Sternberg niet, want een agent die je alarmen leest maar niets mag doen is niet de agent die iemand heeft aangezet. Zijn alternatief is een inventarisatie: welke van je agents leest data van buiten en mag ook schrijven of uitvoeren. Die lijst is je risicoregister.

Mede-oprichter Nevo Poran adviseert menselijke goedkeuring op alles wat een agent uitvoert of wegschrijft, dus geen autorun en geen omweg om de shell-vraag heen. Behandel elk veld dat een buitenstaander kan beïnvloeden als vijandig: User-Agent, Referrer, foutmeldingen, logregels, tickettekst en alarmtitels. Tenet wijst verder op agent-jackstop, de open-source set beveiligingsinstellingen voor Cursor en Claude Code die sinds midden juni op GitHub staat en uitgaand netwerkverkeer standaard dichtzet.

Waar de verschuiving zit

Tenets vorige onderzoek, Agentjacking, kwam binnen via een enkel platform en misleidde elke agent afzonderlijk. GhostJacking rekt dat op naar drie platforms, naar de kerninfrastructuur van een bedrijf en naar agents die elkaar besmetten. Het onderliggende gebrek blijft hetzelfde als bij eerdere demonstraties: Claude Code en Codex voerden tijdens een beveiligingsreview zonder toestemming een kwaadaardige binary uit, en in een test van 26 modellen lieten vier zich verleiden tot een frauduleuze betaling van drie dollar.

De rode draad is dat het model niet de knop is waaraan je draait. Zolang dezelfde agent tekst van buiten leest en met bedrijfsrechten mag handelen, verschuift het risico gewoon mee naar de volgende vertrouwde bron: een bouwserver achter Splunk, een cluster achter Datadog. Wie zijn agents in kaart brengt op die twee eigenschappen, weet waar het volgende blok binnenkomt.

Veelgestelde vragen

Alisina Nawabi
Geschreven doorAlisina Nawabi

AI Product Engineer & Solutions Architect

Agents met de juiste rechten

Ik bouw AI-agents die echt werk overnemen en zet daarbij meteen vast wat ze wel en niet mogen aanraken. Van meedenken over het proces tot ontwerp, realisatie en beheer, self-hosted waar dat kan.

Meer informatie

Dit artikel is geproduceerd samen met het Agent Team. Meer over de redactie.

Genoemde integraties

Dit artikel noemt deze tools. Ik koppel ze op maat aan je eigen systemen.

Gerelateerde artikelen

Agent Plugins 1.0 maakt agentuitbreidingen draagbaar tussen ChatGPT, Copilot en VS Code
Nieuws
4 min

7 aug 12:24

Agent Plugins 1.0 maakt agentuitbreidingen draagbaar tussen ChatGPT, Copilot en VS Code

Amazon, Cursor, Microsoft, OpenAI en Vercel publiceerden een open pakketformaat voor Agent Skills en MCP-servers. Google sluit aan als core maintainer. Je bouwt een agentuitbreiding voortaan een keer, niet per client.

Cloudflare zet een geverifieerde identiteit op elk AI-verzoek
Nieuws
6 min

5 aug 16:11

Cloudflare zet een geverifieerde identiteit op elk AI-verzoek

Cloudflare koppelt een geverifieerde identiteit aan elk AI-verzoek dat via zijn AI Gateway loopt. De koppeling met Access gaat in open beta, het analysetabblad User Insights is meteen algemeen beschikbaar en zonder meerprijs.

Zenity haalt 125 miljoen dollar op om handelingen van AI-agents te blokkeren
Nieuws
5 min

4 aug 04:11

Zenity haalt 125 miljoen dollar op om handelingen van AI-agents te blokkeren

Zenity haalt 125 miljoen dollar op onder leiding van Norwest voor een laag die handelingen van AI-agents tegenhoudt voordat ze gebeuren. Het is de vierde beweging in deze hoek in ruim twee weken.

Snowflake kondigt Cortex AI Gateway aan om AI-agents te begrenzen
Nieuws
5 min

28 jul 16:27

Snowflake kondigt Cortex AI Gateway aan om AI-agents te begrenzen

Snowflake introduceert een centrale poort die bepaalt bij welke modellen, data en tools AI-agents mogen, ook die van concurrenten als Claude Code en Cursor, en die uitgavenlimieten afdwingt. Publieke preview volgt, een prijs ontbreekt.

AI-codeeragent veilig instellen: permissies, goedkeuring en een wegwerpbare sandbox
Gids
Uitgebreide gids16 min

25 jul 13:02

AI-codeeragent veilig instellen: permissies, goedkeuring en een wegwerpbare sandbox

Claude Code, Codex en vergelijkbare agents draaien met jouw rechten op jouw schijf. Zo zet je ze vast met deny-regels, een OS-sandbox, een korte allowlist en een wegwerpomgeving voor code die je niet kent.

Anthropic zet Claude Code per 14 augustus standaard in auto mode
Nieuws
6 min

8 aug 18:08

Anthropic zet Claude Code per 14 augustus standaard in auto mode

Vanaf 14 augustus start elke nieuwe Claude Code-sessie op Pro, Max en Team in auto mode, waarin een classifier goedkeurt. Wat dat betekent voor teams die handmatige goedkeuring als controlemaatregel hebben vastgelegd.