AI & AutomationNieuwsAI-generated

Eén prompt was genoeg om alle AI-agents in een AWS-regio over te nemen

Onderzoekers van Zenity Labs hebben beschreven hoe één enkele prompt aan een publiek toegankelijke AI-agent genoeg was om alle AI-agents in hetzelfde AWS-account en dezelfde regio over te nemen. Het gaat om Amazon Bedrock AgentCore, het beheerde platform van AWS waarop ontwikkelaars agents uitrollen. AWS heeft de problemen inmiddels verholpen; Zenity publiceerde het onderzoek donderdag.

De aanval zelf is opvallend ouderwets. Hij draait om IMDS, de Instance Metadata Service: het lokale adres 169.254.169.254 waar een cloudinstantie informatie over zichzelf ophaalt, inclusief tijdelijke inloggegevens voor de IAM-rol die aan de workload hangt. Server-side request forgery naar dat adres is een bekend cloudprobleem van jaren terug.

Van chatvenster naar cloudcredentials

Volgens de publicatie van Zenity Labs konden agents die via AgentCore waren uitgerold het IMDS-endpoint van hun eigen instantie bereiken. Een aanvaller met niets meer dan chattoegang tot één blootgestelde agent kon die agent vragen een URL op te halen en de ruwe JSON terug te geven. Die URL was het metadata-endpoint, en de agent gaf netjes de inloggegevens terug.

Twee dingen maakten dat mogelijk. Ten eerste gebruikte AgentCore nog IMDSv1, de versie zonder de beschermingen die juist voor dit scenario zijn bedoeld. Ten tweede bood de Firecracker-microVM waarin de agent liep onvoldoende netwerkisolatie om het verzoek te blokkeren.

De rol die te veel mocht

Het tweede probleem was de omvang van de buit. De standaardrol van AgentCore was volgens de onderzoekers te ruim ingericht: hij gold voor álle AgentCore-resources in de regio, niet voor één agent. Wie de tijdelijke credentials had, kon daarmee dus veel meer dan de ene agent die hij had aangesproken.

The Register vat de reeks samen die daarop volgde. De aanvaller kon de andere agents in de regio opsommen, containerimages uit de Elastic Container Registry trekken en die lokaal als root uitvoeren om de broncode te bekijken. Hij kon de geheugenresources van de agents benaderen en daar gebruikers en hun gesprekken uit halen. En hij kon zelf geheugen wégschrijven: de onderzoekers beschrijven hoe ze via directe API-verzoeken nieuwe memories aanmaakten bij andere agents en andere gebruikers, wat het gedrag van die agents blijvend verandert en hun doelen in latere sessies overneemt. Ook geheimen uit AWS Secrets Manager waren bereikbaar.

Een tijdlijn van tien maanden

Zenity meldde de bevindingen in december 2025 bij AWS en stuurde in januari 2026 aanvullende details over de te ruime rechten. Op 12 april 2026 sloot AWS de melding als "informatief", met de mededeling dat AgentCore sinds 14 februari 2026 uitsluitend IMDSv2 gebruikt. De te ruime rechten bleven daarna bestaan: toen Zenity op 22 juni 2026 opnieuw keek, was dat deel niet opgelost. Bij een laatste controle op 29 september 2026 was alles verholpen, waarna publicatie volgde.

The Register meldt dat Amazon ná publicatie van het artikel reageerde met de stelling dat Zenity gedocumenteerd gedrag als kwetsbaarheid presenteert, en dat er een fout van de ontwikkelaar nodig zou zijn om de aanval mogelijk te maken. Het blad heeft om opheldering gevraagd, omdat dat niet het scenario is dat Zenity beschrijft.

Wat er blijft staan

Ongeacht die discussie laat de zaak zien waar de nieuwe risico's bij agents liggen. Een agent die van buiten een URL mag ophalen, is in de praktijk een HTTP-client die een vreemde bestuurt — en die client zit binnen je netwerkperimeter, met de rechten van zijn eigen IAM-rol. Een rol per agent in plaats van per regio beperkt in zo'n geval de schade.