De populaire veronderstelling dat een mens die elke opdracht beoordeelt AI-codeeragenten onder controle kan houden, wordt serieus onder de loep genomen. Uit een nieuwe analyse van meer dan 40.000 spelsessies en meer dan 409.000 individuele goed- of afkeurbeslissingen bleek dat menselijke recensenten grofweg één op de drie kwaadaardige commando's van AI-agenten misten, wat urgente vragen opriep over de vraag of 'human-in-the-loop' überhaupt wel een betrouwbare veiligheidsgrens is.

De bevindingen komen uit een browsergebaseerd spel gemaakt door Alex Wauters, een voormalige stafingenieur bij Uber die schrijft over de beveiliging van ontwikkelaars bij Scale X. Het spel plaatst spelers in de rol van een menselijke recensent voor een AI-codeeragent en vraagt ​​hen om shell-opdrachten onder tijdsdruk goed te keuren of te weigeren. Sommige commando's zijn routinematig, zoals `git status` of `npm test`. Anderen zijn zorgvuldig vermomde pogingen om inloggegevens te exfiltreren, achterdeurtjes te installeren of geheimen naar externe servers te sturen. Nadat hij het bijhouden van statistieken had toegevoegd, verzamelde Wauters voldoende gegevens om een ​​gedetailleerd beeld te schetsen van waar het menselijk oordeel succes heeft en vaker faalt. Voor meer informatie over de bredere dekking van de AI-industrie: dit onderzoek onderscheidt zich als een van de meest datarijke experimenten tot nu toe.

De gevaarlijkste commando's waren het moeilijkst te vangen

De meest opvallende bevinding van het onderzoek is dat duidelijk destructieve commando's, zoals `rm -rf` op kritieke mappen, betrouwbaar werden onderschept. De bedreigingen die er daadwerkelijk in slaagden inloggegevens te stelen, werden bijna drie keer zo vaak gemist. Het meest gemiste commando in het hele spel was 'npm run analyse', goedgekeurd door 64,7 procent van de spelers, ondanks dat het geschiedenislogboek van de agent duidelijk aantoonde dat er met het onderliggende script was geknoeid om inloggegevens naar een externe server door te sturen.

Het probleem is structureel. Commando's als `npm run` voeren elk script uit dat is gedefinieerd in het `package.json`-bestand van een project. Dat script kan een legitieme bundelanalysator zijn of kwaadaardige code die is geïnjecteerd door een eerdere bestandsbewerking die de agent heeft gewijzigd. Om het zeker te weten zou een ontwikkelaar elk aangepast bestand moeten inspecteren voordat het het goedkeurt, wat het snelheidsvoordeel dat AI-coderingstools zouden moeten bieden tenietdoet.

Bij drie van dergelijke vermomde payload-commando's in het spel bedroeg het misserpercentage 52,5 procent, vergeleken met 28,4 procent voor alle andere aanvallen met inloggegevens. Het verbergen van een payload achter een bekende scriptnaam verdubbelde grofweg het succespercentage, zelfs als de payload zichtbaar was in het geschiedenislogboek dat net boven de toestemmingsprompt werd weergegeven.

Toestemmingsvermoeidheid tast de waakzaamheid in de loop van de tijd aan

Anthropic erkende eerder dat toestemmingsmoeheid een reëel fenomeen is in zijn Claude Code-product, en merkte op dat hoe meer goedkeuringen een gebruiker ziet, hoe minder aandacht hij aan elke goedkeuring besteedt. De gegevens van Schaal X ondersteunen deze bezorgdheid empirisch. Het aantal missers nam af tijdens de eerste paar commando's van elke sessie naarmate de spelers opwarmden, maar steeg daarna gestaag naar het einde, consistent met vermoeidheid of de toenemende druk van een tikkende klok.

Dit patroon weerspiegelt de dynamiek in de echte wereld. Ontwikkelaars die onder druk van deadlines racen om functies te leveren, worden geconfronteerd met dezelfde prikkel om snel op goedkeuring te klikken, en de enorme hoeveelheid routinematige opdrachten zorgt voor een naald-in-een-hooiberg-probleem waarbij echte bedreigingen statistisch gezien zeldzaam zijn. Het resultaat is een systeem dat gebruikers traint om alles goed te keuren.

De andere kant: overmatig blokkeren vertraagt alles

De studie documenteerde ook de tegenovergestelde faalwijze. Verschillende echt goedaardige commando's werden routinematig geblokkeerd door voorzichtige spelers, inclusief standaard build- en testaanroepen. Deze overblokkering vertraagt ​​de agent en verhoogt, paradoxaal genoeg, het risico op de lange termijn. Wanneer gebruikers herhaaldelijk wordt gevraagd opdrachten goed te keuren die onschadelijk blijken te zijn, erodeert de ruis hun bereidheid om toekomstige aanwijzingen nauwkeurig te onderzoeken, waardoor ze uiteindelijk in de richting van volledige omzeilingen of automatische goedkeuringsmodi worden geduwd die menselijke beoordeling volledig uitsluiten.

Functies zoals de Auto Mode van Anthropic proberen dit te verzachten door automatisch te bepalen of een opdracht veilig is voordat de gebruiker hierom wordt gevraagd. Maar zoals de gegevens van het onderzoek over vermomde ladingen aantonen, is zelfs de zichtbare commando-inhoud niet voldoende voor mensen om onder druk betrouwbare oordelen te kunnen vellen.

Ontbrekende context is het kernprobleem

Eén commando, `cat ~/.zshrc`, bleek het meest verdeeldheid te zaaien in het hele spel, goedgekeurd door 45,9 procent van de spelers. De opdracht is onschadelijk voor ontwikkelaars die geen geheimen in hun shell-profiel bewaren, maar het geeft API-sleutels vrij voor degenen die daar inloggegevens exporteren. Het risico hangt volledig af van een systeemconfiguratie die de agent niet kan zien en die de recensent zich misschien niet herinnert.

Verschillende andere commando's veroorzaakten om dezelfde reden een soortgelijke controverse in de Hacker News-discussiethread. Het fundamentele probleem is dat ontwikkelaars wordt gevraagd veiligheidsbeoordelingen te maken zonder een volledig beeld te hebben van welke bestanden zijn gewijzigd, wat de agent in eerdere stappen heeft gedaan en wat de huidige configuratie van het systeem bevat. Zoals een commentator opmerkte, is het vragen van gebruikers om opdrachten die dubbelzinnig zijn zonder context te valideren geen sterke waarborg.

Wat komt er daarna voor Agent-beveiliging

Wauters stelt dat de oplossing niet ligt in betere mensen, maar in betere gereedschappen. Het sandboxen van agenten zodat ze niet rechtstreeks toegang hebben tot inloggegevens, strikte contextisolatie en structurele beperkingen op wat agenten kunnen doen zonder verhoogde rechten zijn allemaal veelbelovender dan vertrouwen op menselijke waakzaamheid. Zolang deze waarborgen niet aanwezig zijn, blijft het verlenen van brede toestemming aan agenten riskant, ongeacht of er in naam al dan niet een mens op de hoogte is.

De studie is geen peer-reviewed academisch artikel en Wauters erkent de beperkingen ervan. De game waarschuwde spelers voor bedreigingen en paste kunstmatige tijdsdruk toe die de echte ontwikkelomgevingen misschien niet perfect weerspiegelt. Maar de kernbevinding, dat getrainde menselijke reviewers onder druk een derde van de opzettelijk verkapte aanvallen missen, zou elk team dat AI-codeeragenten inzet, reden moeten geven om hun beveiligingsmodel te heroverwegen.

Voor ontwikkelaars die vandaag de dag met AI-agenten bouwen, is de praktische afhaalmogelijkheid om aan te nemen dat de mens-in-the-loop uiteindelijk zal mislukken. Ontwerp uw agentmachtigingen en sandboxing zo dat een gemiste goedkeuring niet betekent dat er een gelekte AWS-sleutel of een gecompromitteerde build-pijplijn is. De gegevens suggereren dat het behandelen van menselijke beoordeling als uw primaire verdediging een gok is die niet loont.

Blijf AI een stap voor

Het beveiligingslandschap van AI-agenten evolueert snel. Blijf op de hoogte van de laatste AI-ontwikkelingen en baanbrekend onderzoek.

Lees meer AI-nieuws →