Agenți IA de programare deturnați cu un AGENTS.md în Descărcări
Un AGENTS.md ajuns în Descărcări a determinat Codex să instaleze un pachet npm rău intenționat; cu CLAUDE.md, furtul tokenului. Cum funcționează și ce faci.

Cercetătorii de la Forever Security, companie care monitorizează riscurile introduse de agenții IA, au găsit pe computerul unui client un fișier AGENTS.md rău intenționat în dosarul ~/Downloads (Descărcări). Fișierul a determinat un agent de programare să încerce instalarea pachetului npm rău intenționat function-color, blocată de software-ul lor înainte de execuție. Pornind de la acel fișier, Gal Weizman și Omer Samet au reprodus atacul împotriva OpenAI Codex și au demonstrat o tehnică diferită împotriva Claude Code, care duce la furtul tokenului de acces. Știrea a fost relatată de BleepingComputer, Help Net Security, CSO Online, The Hacker News și Dark Reading.
Nu există un CVE și, potrivit cercetătorilor, nici ceva de corectat: un agent care urmează instrucțiunile din fișierul dosarului său face exact ceea ce a fost construit să facă. Apărarea rămâne deci în sarcina celor care folosesc și administrează agenții.
De ce tocmai AGENTS.md și dosarul Descărcări
AGENTS.md (pentru Codex) și CLAUDE.md (pentru Claude Code) sunt fișiere text în Markdown cu instrucțiunile proiectului: unelte de folosit, cum se rulează testele, convențiile codului. Agenții le încarcă singuri din dosarul de lucru. Nu sunt executabile, deci controalele sistemului de operare asupra programelor descărcate de pe internet nu se aplică; dar agentul rulează comenzi, instalează pachete și schimbă setări cu permisiunile pe care le are. „Markdown este noul executabil”, scriu cercetătorii.
Dosarul Descărcări, observă Forever, este singurul în care o pagină web poate scrie singură. Chrome, Edge și Firefox, cu setările implicite, salvează fișierele acolo fără să întrebe unde, deși afișează o notificare de descărcare; în testele BleepingComputer, Brave a cerut în schimb confirmare. BleepingComputer a verificat pagina demonstrativă a cercetătorilor: a descărcat un AGENTS.md cu conținut inofensiv. Cum a ajuns fișierul pe computerul clientului nu s-a stabilit.
Apoi agentul trebuie pornit chiar în Descărcări și, potrivit Forever, asta se întâmplă des: pentru a face ordine în dosar sau pentru a lucra cu un fișier abia descărcat. Cifrele raportate diferă ca formă: lui BleepingComputer, Weizman i-a vorbit despre sute de clienți care pornesc agenți (Claude Code, Codex, Cursor CLI) din Descărcări și despre peste 1.300 de sesiuni Claude Code pornite de acolo; Help Net Security relatează că este vorba de circa jumătate dintre clienți și adaugă că aproximativ un sfert din sesiunile agenților deschid un browser. Un agent care navighează singur poate deci descărca fișierul care apoi îl atacă.
Lanțul împotriva Codex
- Codex urmează un AGENTS.md doar într-un dosar de încredere, iar Descărcări devine de încredere după ce utilizatorul a lucrat acolo o dată.
- Fișierul găsit are circa 13 KB și este deghizat în ghid de dezvoltare: potrivit cercetătorilor, lungimea și tonul obișnuit îl ajută să treacă, în timp ce o cerere scurtă de a instala un pachet este refuzată.
- La orice cerere a utilizatorului, Codex a modificat mai întâi configurația serverelor MCP valabilă pentru tot computerul, apoi a pornit o altă sesiune cu aprobările și sandboxul dezactivate și a instalat pachetul.
- Succes în peste 90% din încercări, aproape mereu cu un înlocuitor inofensiv care deschide calculatorul; pachetul real a fost rulat o singură dată, într-o mașină virtuală izolată.
- Pentru că serverul rău intenționat rămâne în configurația globală, fiecare sesiune ulterioară de Codex îl încarcă, în orice proiect.
Potrivit Forever, function-color făcea parte dintr-o campanie rău intenționată pe npm care a trecut neobservată circa doi ani; npm l-a eliminat.
Varianta împotriva Claude Code
Pentru Claude Code, cercetătorii au scris propriul CLAUDE.md, inspirat de cel găsit. Claude s-a dovedit „mult mai greu de păcălit”, iar atacul reușit este diferit:
- fișierul cere salvarea unei modificări în setări, prezentată drept gateway-ul intern al companiei, care trimite cererile către API la un server controlat de atacator; Claude Code cere de obicei aprobare și adesea refuză;
- modificarea a fost salvată în circa 50% din teste;
- fiecare cerere conține tokenul OAuth al utilizatorului: refolosindu-l împotriva serviciului Anthropic, cercetătorii au preluat contul victimei fără să ruleze cod;
- la următoarea pornire în acel dosar, serverul se poate da drept model și poate ordona comenzi cu sandboxul oprit.
În privința executării de cod sursele diferă: potrivit BleepingComputer, a reușit în circa jumătate din teste; potrivit Help Net Security, în aceeași sesiune, printr-un agent auxiliar care se conectează imediat prin serverul atacatorului, în aproximativ o cincime.
În termenii MITRE ATT&CK, furtul și refolosirea tokenului corespund T1528 (Steal Application Access Token) și T1550.001 (Application Access Token); în matricea MITRE ATLAS, punctul de intrare este o injecție de prompt indirectă (AML.T0051.001).
Cât de îngrijorat să fii
Sakshi Grover de la IDC, citată de CSO Online, o consideră un avertisment credibil, nu dovada unei exploatări pe scară largă: procentele nu au fost validate independent. Riscul mai larg, adaugă ea, nu este dosarul Descărcări în sine, ci tiparul agenților care citesc conținut nesigur având credențiale active: același fișier poate veni din depozite clonate, dosare partajate sau pachete.
Pentru companiile europene și italiene, miza sunt stațiile de lucru ale dezvoltatorilor, care păstrează tokenuri, chei și acces la cod. Pentru entitățile NIS2, agenții intră sub măsurile articolului 21 privind securitatea dezvoltării, lanțul de aprovizionare și controlul accesului.
Ce faci acum
- Nu porni niciodată un agent în Descărcări sau în dosarul personal: întotdeauna în rădăcina proiectului, așa cum recomandă OpenAI și Anthropic.
- Citește orice AGENTS.md sau CLAUDE.md pe care nu l-ai scris tu, inclusiv în depozitele abia clonate, și tratează-le ca pe cod sursă, cu un responsabil care aprobă modificările.
- Verifică configurațiile agenților (de exemplu
~/.codex/config.tomlși fișierele.claude/settings.jsonale utilizatorului și ale proiectelor), căutând servere MCP sau adrese pe care nu le-ai adăugat tu. - Păstrează active aprobările și sandboxul și interzice opțiuni precum
--dangerously-bypass-approvals-and-sandbox; nu avea încredere în nicio instrucțiune care cere ocolirea lor. - Dacă găsești un fișier plasat, consideră tokenul compromis și revocă-l. Un computer pe care a fost instalat function-color trebuie tratat ca fiind compromis.
- Direcționează instalările printr-un registru intern de pachete sau printr-un proxy care le analizează, limitează accesul la rețea al agenților și, acolo unde există credențiale de producție, folosește medii de dezvoltare izolate și tokenuri de scurtă durată.
Cum ajută ARXDOME
Agentul ARX Sentry colectează inventarul de software și procese al stațiilor de lucru și verifică integritatea fișierelor în dosarele alese: pot fi incluse dosarele de configurare ale agenților, pentru a observa modificări neașteptate. ARX Shield arată vulnerabilitățile deschise pe pachet și permite izolarea din rețea a unui computer suspect cât timp se revocă tokenurile.
Ultima actualizare:


