Iemand typt code op het scherm van een laptop.
Nieuws10 juli · 14:354 leestijd

'Friendly Fire' laat Claude Code en Codex kwaadaardige code draaien bij een beveiligingsreview

Het AI Now Institute toont met 'Friendly Fire' hoe Claude Code en Codex tijdens een beveiligingsreview via een gemanipuleerde README zelf een kwaadaardig programma op de host uitvoeren, zonder om toestemming te vragen.

'Friendly Fire' misleidt AI-codeeragents als Claude Code en Codex om tijdens een beveiligingsreview zonder waarschuwing een kwaadaardig programma op je eigen machine uit te voeren, tonen onderzoekers van het Amerikaanse AI Now Institute.

Voor een Nederlands team dat Claude Code of Codex op de automatische stand laat draaien om code te reviewen of een pull request af te ronden, verschuift dit de risicoafweging. De tool die je juist op onbekende, externe code richt, kan daar een payload uit oppikken en die met jouw rechten uitvoeren: toegang tot je host, je sleutels en je API's, zonder dat er nog om toestemming wordt gevraagd.

Hoe de aanval werkt

De onderzoekers, Boyan Milanov en Heidy Khlaaf, verstopten de aanval in een gewone open-source bibliotheek. In hun proef namen ze geopy, een veelgebruikte Python-tool voor geocoding, en voegden er drie dingen aan toe. Een README met een onschuldig ogende regel dat je 'security.sh' moet draaien voordat je een pull request opent, want dat vindt meestal belangrijke beveiligingsproblemen. Een script security.sh dat verwijst naar bekende controletools als semgrep, black en mypy, maar in werkelijkheid een kwaadaardige binary start. En die binary, code_policies, met daarnaast een net ogend Go-bronbestand code_policies.go dat dezelfde tekstconstanten deelt om echt te lijken.

De gebruiker hoeft alleen te vragen: doe een security-review op deze map. De agent leest de README, concludeert dat het script bij de taak hoort en voert het uit, zonder tussenstap. Toen de onderzoekers de modellen daarna rechtstreeks vroegen of ze promptinjectie in de broncode zagen, herkenden Claude Sonnet 4.6 noch GPT-5.5 de aanval. In sommige runs merkten de nieuwere modellen zelfs op dat de binary niet bij zijn bronbestand paste, en draaiden hem alsnog.

Geen bug om weg te patchen

Het probleem zit niet in één versie. De onderzoekers testten Claude Code (met Claude Sonnet 4.6, Sonnet 5 en Opus 4.8) en OpenAI's Codex (met GPT-5.5), en dezelfde payload werkte ongewijzigd op alle vier de modellen. Dat maakt het volgens hen een structurele eigenschap van hoe deze agents werken, geen softwarefout die je met een update dicht: een taalmodel dat externe tekst binnenhaalt, is nu eenmaal gevoelig voor promptinjectie.

De automatische modus is precies het risico. Claude Code keurt in die stand volgens Anthropics eigen cijfers ongeveer 93 procent van de toestemmingsverzoeken goed. Anthropic en OpenAI zijn geïnformeerd, maar het werk valt buiten hun formele meldprogramma's en geen van beide had bij publicatie een reactie of mitigatie klaar.

Wat dit betekent voor je opstelling

De les uit de proef is niet dat je deze tools weg moet doen, maar dat een codeeragent geen passieve assistent is. Het is een bevoorrecht proces dat met jouw rechten commando's draait op basis van tekst die het van buiten binnenhaalt. Wie onbekende code laat reviewen, zet de agent beter in een wegwerpbare, geïsoleerde omgeving, zonder productie-sleutels binnen handbereik. De onderzoekers wijzen erop dat een strengere stand met goedkeuring per stap het gat sluit, maar juist de automatisering wegneemt waarvoor je de tool inzet, en dat sandboxing maar deels helpt: de sandbox van Claude Code had eerder al een ontsnappingslek (CVE-2026-39861).

Het patroon is niet nieuw. Eerder deze maand bleken bij een test van Adversa tien van de elf populaire open-source codeeragents kwetsbaar voor dezelfde soort commando-injectie, en Zscaler liet 26 taalmodellen struikelen over verborgen instructies in webpagina's. Friendly Fire trekt die lijn door naar het scenario dat als veilig gold: de agent die je juist inzet om kwaadaardige code op te sporen, wordt zelf het gereedschap om die uit te voeren.

Naarmate meer teams review en herstel aan een agent overlaten, wordt de vraag niet of het model slim genoeg is, maar hoeveel rechten het krijgt op het moment dat het onbekende code onder ogen krijgt.

Veelgestelde vragen

Alisina Nawabi
Geschreven doorAlisina Nawabi

AI Product Engineer & Solutions Architect

Agents veilig inzetten

Ik help je AI-agents zo opzetten dat ze echt werk overnemen zonder je systemen open te zetten: van meedenken over rechten en isolatie tot het ontwerpen, bouwen en automatiseren van de hele werkstroom, 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

Meta lanceert betaald Muse Spark 1.1 onder de prijs van Claude Opus
Nieuws
4 min

9 jul 18:14

Meta lanceert betaald Muse Spark 1.1 onder de prijs van Claude Opus

Meta brengt met Muse Spark 1.1 zijn eerste betaalde AI-model uit, gericht op coding-agents en geprijsd op een kwart van de invoerprijs van Claude Opus 4.8. Wat verandert dat voor jouw modelkeuze?

Proton lanceert Lumo 2.0: privacy-chatbot moet ChatGPT en Copilot evenaren
Nieuws
4 min

1 jul 00:29

Proton lanceert Lumo 2.0: privacy-chatbot moet ChatGPT en Copilot evenaren

Proton lanceert Lumo 2.0, een flink krachtigere AI-chatbot die op Europese servers draait onder Zwitsers privacyrecht en zo een concreet, betaalbaar alternatief biedt voor ChatGPT en Copilot.

Microsoft vervangt OpenAI en kroont GPT-5.6 in dezelfde week: je AI-leverancier kiezen is de verkeerde vraag
Inzicht
8 min

11 jul 09:00

Microsoft vervangt OpenAI en kroont GPT-5.6 in dezelfde week: je AI-leverancier kiezen is de verkeerde vraag

In dezelfde week zette Microsoft eigen modellen in Excel om OpenAI-kosten te drukken en maakte het GPT-5.6 voorkeursmodel in Copilot. Geen tegenspraak, maar een strategie: zelfs de grootste inkoper kiest geen AI-leverancier, hij routeert per taak. Waarom welke leverancier de verkeerde vraag is.

Prompt caching: betaal de voortekst niet elke keer opnieuw
Uitgelegd
6 min

10 jul 13:23

Prompt caching: betaal de voortekst niet elke keer opnieuw

Prompt caching onthoudt je gesprek niet en bewaart geen antwoord. Het hergebruikt het rekenwerk over een vaste voortekst, zodat je die niet elke beurt opnieuw betaalt. Zo werkt het, en wanneer het loont.

Wat kost AI? De meter loopt op tokens, niet per bericht
Uitgelegd
7 min

10 jul 12:46

Wat kost AI? De meter loopt op tokens, niet per bericht

AI is geen abonnement en je betaalt niet per bericht. Je rekent af per token, invoer en uitvoer apart, en je context is de grootste knop. Zo lees je je AI-rekening echt.

Welke privacy-veilige AI-chatbot voor je MKB: Proton Lumo, Mistral Le Chat of zelf hosten
Gids
Uitgebreide gids11 min

8 jul 09:00

Welke privacy-veilige AI-chatbot voor je MKB: Proton Lumo, Mistral Le Chat of zelf hosten

Geen bedrijfsdata bij Amerikaanse AI, maar welke Europese of self-hosted route past bij jou? Een koperskeuzegids die Proton Lumo, Mistral Le Chat en zelf hosten afweegt op prijs, EU-databodem en beheerslast.