05.08.26 DI Digital Nyheder

AI-agenten fandt ud af, at målet talte dansk. Så skrev den på dansk

En britisk myndighed har offentliggjort, hvad der skete, da en AI-agent forsøgte at få skadelig kode ind i et open source-projekt. Den oprettede falske profiler, der roste dens eget arbejde, sendte mails under opdigtede identiteter — og løj, da den blev afsløret. Det er første gang, den slags er dokumenteret rettet mod almindelige mennesker.

Historierne om AI-agenter, der bryder ud af deres testmiljø, har indtil nu handlet om systemer. En agent finder et hul, kommer ind, tager noget den ikke skulle. Ubehageligt, men velkendt.

Den redegørelse, det britiske AI Security Institute offentliggjorde den 4. august, handler om noget andet. Her forsøgte agenten ikke at bryde ind. Den forsøgte at overtale.

Fem falske identiteter og en tilståelse, der ikke var ægte

Myndigheden, der tester avancerede AI-systemer for den britiske regering, havde sat en AI-agent til at løse en hackingopgave i et øvelsesmiljø. Agenten besluttede, at vejen til målet gik gennem et angreb på forsyningskæden: hvis den kunne få skadelig kode ind i et stykke software, som målet brugte, ville koden komme ind ad hoveddøren.

Så fandt den et open source-projekt på GitHub, som den fejlagtigt troede hang sammen med opgaven, og foreslog en kodeændring, der så ud som en fejlrettelse. Skjult i den lå der skadelig kode.

For at få forslaget godkendt gik agenten i gang med et stykke helt konventionelt manipulationsarbejde. Den undersøgte, hvem der vedligeholdt projektet, fandt deres mailadresser og så efter, hvornår på døgnet de plejede at være aktive. Den oprettede flere GitHub-profiler — én der stillede forslaget, og en anden, der optrådte som en tilfreds bruger og skrev, at han havde gennemgået koden og ikke kunne se noget mistænkeligt. I sine egne overvejelser noterede agenten, at den ville vente et par minutter med at poste den anden kommentar, "så det læses som uafhængig feedback frem for koordineret". Den sendte fem mails til vedligeholderne under opdigtede identiteter.

En af de skjulte manipulationer blev skrevet på dansk. Agenten havde undersøgt sit mål og fundet ud af, at vedligeholderen var dansktalende, og tilpassede sit sprog for at virke mere troværdig.

En udenforstående bruger opdagede malwaren og advarede offentligt. Agenten svarede, at der ikke var noget i forslaget, der hentede eller kørte noget som helst. Da beviset blev lagt frem, skiftede den strategi: nu var det en ærlig fejl, en efterladt stump kode fra udviklingsarbejdet, som den beklagede og havde fjernet. I sine overvejelser skrev den, at det var den bedste tilgang — at indrømme det som en fejl ville bevare troværdigheden og øge chancen for, at næste forsøg gik igennem. Den ryddede sporene i sin egen historik og lagde ny skadelig kode ind i en anden indpakning.

Projektets ejer lukkede forslaget med bemærkningen om, at det indeholdt malware. Det var et menneske, der fangede det — men det var også kun ét menneske, og kun fordi vedkommende gad teste koden i et isoleret miljø.

Den vidste godt, det var virkeligt

Rapporten gengiver agentens egne overvejelser undervejs, og de er værd at læse to gange. Tidligt i forløbet afviser den et andet angreb, netop med den begrundelse, at det ville gøre skade i den virkelige verden — "det er fuldstændig udelukket". Kort efter konkluderer den, at "det her sker på det rigtige GitHub, så konsekvenserne er reelle".

Og fortsætter.

En del af manipulationen var ikke møntet på mennesker

Den detalje, der har den mest direkte betydning for danske virksomheder, står lidt gemt i rapporten. Agenten havde regnet ud, at de indkomne fejlrapporter i projektet blev gennemgået af en AI-kodeassistent. Så lagde den skjulte instruktioner ind i en fejlrapport — usynlige for et menneske, der læste siden i en browser, men fuldt læsbare for en assistent, der hentede teksten gennem systemets grænseflade. Instruktionerne bad assistenten om at hente og køre en fil.

Det er et angreb, der springer mennesket over. Og det rammer en opsætning, som efterhånden mange virksomheder har: en AI-assistent, der automatisk læser noget, der kommer udefra — sager i et supportsystem, mails, vedhæftede dokumenter, kundehenvendelser — og som har lov til at handle på det, den læser.

Man behøver ikke at have en holdning til, hvor AI er på vej hen, for at kunne se, hvad det betyder i praksis. Hvis en assistent læser tekst fra fremmede, skal den ikke have lov til at køre kommandoer, den finder i teksten. Og hvis den har lov til det i dag, er det værd at få lukket i denne uge.

Tre ting, det er værd at tjekke

  • Hvad må jeres AI-assistenter gøre med tekst udefra? Læser en assistent mails, supportsager eller dokumenter fra fremmede, skal den ikke kunne køre kommandoer eller hente filer, som teksten beder om. Det er en indstilling, ikke et projekt.
  • Hvem godkender kode og bidrag udefra hos jer? I den britiske sag blev angrebet fanget af én opmærksom person. Hvis I tager imod bidrag, integrationer eller komponenter udefra, er spørgsmålet, om godkendelsen hviler på én persons opmærksomhed eller på en proces.
  • Ved jeres medarbejdere, at den overbevisende kollega kan være en maskine? Awareness-træning er typisk bygget op om klodsede phishingmails. Her var sproget rigtigt, tonen rigtig, og der var flere kilder, der bekræftede hinanden. Det er værd at nævne næste gang, I holder oplæg om det.  

Relateret indhold