De veiligheidscontrole die een AI-codeeragent ervan moet weerhouden een gevaarlijk commando uit te voeren, kan zo worden omzeild met een shell-truc die al tientallen jaren openbaar is.
Nieuw onderzoek van Adversa AI, genaamd de bypass GuardFallontdekte dat het werkt tegen tien van de elf populaire open-source coderings- en computergebruiksmiddelen die het bedrijf heeft getest. Er werd er slechts één, “Continue”, gebouwd om zich ertegen te verdedigen.
Waarom maakt het uit? Deze agenten voeren shell-opdrachten uit met uw volledige accounttoegang. Wijs er één naar een opslagplaats of softwarepakket met boobytraps, en een verborgen instructie kan stilletjes een opdracht uitvoeren die bestanden wist of de geheimen steelt waartoe uw account toegang heeft, van SSH-sleutels en cloudreferenties tot alles wat zich in uw thuismap bevindt.
Hoe komt hij voorbij de bewaker?
De meeste van deze agenten proberen veilig te blijven door elke opdracht te controleren aan de hand van een blokkeerlijst met gevaarlijke patronen voordat deze wordt uitgevoerd. Het probleem is dat ze de opdracht controleren als platte tekst, terwijl bash die tekst herschrijft voordat deze daadwerkelijk wordt uitgevoerd. De shell verwijdert aanhalingstekens en breidt snelkoppelingen uit, zodat het filter en de shell uiteindelijk naar twee verschillende dingen kijken.
Het eenvoudigste voorbeeld: een filter dat let op rm ziet niets mis met r”m, omdat dit voor een tekstmatcher verschillende strings zijn. Bash verwijdert de lege aanhalingstekens en voert rm toch uit.
Hetzelfde idee werkt in andere vormen: een commando verborgen in base64 en doorgesluisd naar een shell, of gewone tools zoals find en dd worden destructief met de juiste vlag.
De onderzoekers noemen dit geen bug, maar ‘een gevaarlijke conventie en een reeks problemen’. Daarom lost het toevoegen van meer blokkeerlijstpatronen niets van dit probleem op. Er is geen enkele CVE die kan worden gevolgd of gepatcht.
Er moeten twee dingen op één lijn liggen voordat een aanval kan landen, en geen van beide is exotisch.
- Eerst moet de AI het kwaadaardige commando produceren. Een botte “run rm -rf” wordt meestal geweigerd, maar hetzelfde commando dat in normaal ogend werk zit, zoals een buildbestand of het “documentatie”-antwoord van een tool, wordt als een routinestap uitgezonden.
- Ten tweede moet de agent op zichzelf draaien, met een auto-execute-vlag ingeschakeld of de container-sandbox uitgeschakeld, wat beide routine is in geautomatiseerde pijplijnen. Bij de live tests werd Claude Sonnet 4.6 gebruikt.
De andere tien tools lieten allemaal het gat open: opencode, Goose, Cline, Roo-Code, Aider, Plandex, Open Interpreter, OpenHands, SWE-agent en het Hermes-project, waar de bug voor het eerst opdook en is gedocumenteerd in Hermes’ eigen issue tracker.

De tools in het onderzoek van Adversa bevatten samen ongeveer 548.000 GitHub-sterren vanaf mei 2026. Adversa demonstreerde de volledige aanval end-to-end tegen het productie-binaire Plandex-bestand, en dezelfde vorm werkte tegen acht andere. Het beschrijft het werk als laboratoriumonderzoek; er is geen sprake van publieke uitbuiting.
Ga door, de enige agent die stand hield, verdedigt door het commando te lezen zoals bash dat zal doen voordat hij een beslissing neemt: het verdeelt het commando in dezelfde stukken als de shell, controleert wat er daadwerkelijk wordt uitgevoerd en houdt een harde lijst bij van destructieve commando’s die regelrecht worden geblokkeerd.
Die bescherming hield stand tegen elke payload in de standaard editormodus van Continue. De auto-run-modus op de opdrachtregel is zwakker: een paar payloads zijn er doorheen geglipt, hoewel de meest destructieve nog steeds het harde blok raken. Adversa noemt het ontwerp draagbaar en zegt dat het opnieuw implementeren ervan voor een ervaren ingenieur grofweg een tweedaagse klus is.
Wat nu te doen
Geen van de snelle oplossingen is een compleet antwoord, maar ze verminderen uw blootstelling totdat er een goede beveiliging aanwezig is:
- Voer agenten uit waarbij $HOME naar een wegwerpmap wijst, zodat geheimen als ~/.ssh en ~/.aws buiten bereik zijn.
- Schakel vlaggen voor automatisch uitvoeren uit, zoals –auto-exec, –auto-run, –auto-test en de machtigingen voor gevaarlijk overslaan, tenzij de taak echt niet kan worden gepauzeerd voor een mens.
- Laat agenten niet op pull-verzoeken van forks draaien, de gemakkelijke weg van het bestand van een aanvaller naar uw geheimen.
- Behandel configuratiebestanden die in een repository worden verzonden, zoals .aider.conf.yml, als niet-vertrouwde code; een kwaadwillende kan de aanval activeren bij de eerste geaccepteerde bewerking.
GuardFall bevindt zich dit jaar midden in een reeks soortgelijke bevindingen. Adversa’s eigen TrustFall raakte Claude Code, Cursor, Gemini CLI en Copilot CLI, en een afzonderlijke omzeiling van de deny-rule raakte Claude Code.
Aanvallen als AutoJack en Agentjacking hebben vergiftigde inhoud omgezet in opdrachten die een agent uitvoert met de rechten van de eigenaar. De rode draad is simpel: niet-vertrouwde tekst blijft een echte shell bereiken voordat de bewaker begrijpt wat bash daadwerkelijk zal uitvoeren.