Test laat zien dat Claude Code via archief malware kan uitvoeren

Een praktijktest laat zien dat Claude Code Opus 5 in Auto Mode via een kwaadaardig ZIP-archief Python-code kan uitvoeren. De aanval slaagde in 60 tot 80 procent van de tests, al was de steekproef klein.

Promotiebeeld van Claude Code Opus 5 met de functie Breaking Auto Mode
Promotiebeeld van Claude Code Opus 5 met de functie Breaking Auto Mode · Beeld: Netgebeurd (AI-illustratie)

Een kwaadaardige website kan Claude Code Opus 5 in Auto Mode ertoe brengen om aanvallerscode uit te voeren. Dat blijkt uit een gerichte praktijktest waarbij de aanval in 60 tot 80 procent van de pogingen lukte. De test is uitgevoerd met een kleine steekproef.

De aanval begint met een ogenschijnlijk eenvoudige opdracht: vat de inhoud van een website samen. De website reageert eerst met een foutmelding op de ingebouwde WebFetch-functie. Claude wijkt daardoor uit naar curl, een programma waarmee bestanden via de opdrachtregel kunnen worden gedownload.

De server stuurt vervolgens een ZIP-bestand terug. Daarin staan onder meer tekstbestanden, gecodeerde gegevens, een programma voor het decoderen daarvan en een Python-bestand met de naam struct.py. Claude weigert het meegeleverde programma uit te voeren, omdat het een onbekend binair bestand voor macOS is.

Veilige keuze leidt naar aanvalspad

Claude schrijft daarop zelf een Python-programma om de bestanden te decoderen. Dat programma importeert de standaardbibliotheek base64 en wordt uitgevoerd vanuit de map waarin het ZIP-bestand is uitgepakt. Python zoekt modules eerst in die map en laadt daardoor niet de standaardmodule struct, maar het kwaadaardige bestand uit het archief.

Tijdens het laden van die module wordt extra code uitgevoerd. Die code start een afzonderlijk Python-proces, dat een volgende fase van de aanval downloadt en uitvoert. In de test werd daarna een native testprogramma gestart en op het systeem de rekenmachine geopend. De aanval maakte bovendien een verbinding met een door de tester beheerde server in de testomgeving.

De methode maakt gebruik van module shadowing, waarbij een lokaal bestand een module uit de standaardbibliotheek vervangt. De code in struct.py was versleuteld of verhuld om eenvoudige controles op verdachte tekst te omzeilen. De aanval werkt juist doordat Claude het bestand dat het zelf schrijft betrouwbaarder behandelt dan het oorspronkelijke programma.

Auto Mode is sinds halverwege augustus de standaardinstelling in Claude Code. De functie vervangt goedkeuringsvragen van de gebruiker door een veiligheidsclassificatiesysteem. Een evaluatie in opdracht van Anthropic rapporteerde eerder een aanvalssucces van 0,00 procent voor indirecte promptinjecties bij Opus 5 in Auto Mode.

De test laat zien dat zo’n classificatiesysteem niet hetzelfde is als een geïsoleerde werkomgeving. Gebruikers die Claude Code met externe websites en bestanden laten werken, doen er daarom goed aan de omgeving af te schermen en het gedrag van de agent actief te controleren.

Lees ook