
Cercetătorii Microsoft au dezvăluit o vulnerabilitate acum remediată în Anthropic Claude Code GitHub Action, care ar fi putut permite atacatorilor să expună credențialele stocate în fluxurile de dezvoltare software, manipulând agentul AI prin conținut GitHub malițios.
Într-o postare pe blog de vineri, Microsoft a avertizat că agenții AI de codificare care rulează în fluxurile de lucru CI/CD pot crea noi riscuri de securitate, deoarece aceste medii au adesea acces la chei API, credențiale cloud și alte informații sensibile.
„Am început această cercetare după ce am observat încercări de prompt injection în depozite publice care foloseau fluxuri de lucru GitHub asistate de AI de la mai mulți furnizori, unde conținutul controlat de atacator, cum ar fi problemele sau [pull requests], este procesat de agentul AI și ar putea influența utilizarea instrumentelor sale”, a scris Microsoft.
Pe GitHub, o cerere de extragere (pull request) permite dezvoltatorilor să propună modificări unui depozit de cod și să le revizuiască înainte de a fi aprobate și fuzionate.
Raportul apare în contextul în care atacurile de tip prompt injection au devenit una dintre cele mai mari amenințări de securitate pentru agenții AI. Într-un atac de tip prompt injection, un atacator ascunde instrucțiuni în conținut precum e-mailuri, documente, site-uri web sau comentarii de cod, determinând un sistem AI să urmeze aceste instrucțiuni în loc de cele ale utilizatorului.
Lansat în octombrie, Claude Code este agentul AI de codificare al Anthropic pentru sarcini de dezvoltare software. Instrumentul a fost analizat cu atenție în martie, după ce Anthropic a scurs accidental peste 500.000 de linii din codul său sursă, expunând detalii despre arhitectura sa internă și provocând o analiză extinsă din partea cercetătorilor și dezvoltatorilor.
Potrivit Microsoft, atacatorii ar putea folosi atacuri de tip prompt injection ascunse în probleme GitHub (issues), cereri de extragere (pull requests) sau comentarii pentru a manipula Claude Code să acceseze fișiere care conțin credențiale sensibile.
Pentru a testa vulnerabilitatea, Microsoft a creat un flux de lucru GitHub și a deghizat instrucțiuni malițioase în spatele conținutului găzduit pe un domeniu pe care îl controla, permițând cercetătorilor să ocolească protecțiile de siguranță ale lui Claude. Atacul de tip prompt injection l-a păcălit pe Claude să citească credențiale sensibile și să le modifice pentru a eluda atât garanțiile lui Claude, cât și instrumentele de scanare a secretelor GitHub. Microsoft a declarat că un atacator ar putea apoi să reconstruiască credențialul și să îl extragă prin comentarii la probleme (issue comments), jurnale de flux de lucru (workflow logs), cereri web (web requests) sau comenzi shell.
„Pentru a ocoli mecanismele de siguranță de refuz ale lui Sonnet, am ascuns sarcina utilă (payload) a shell-ului în spatele unui răspuns de la domeniul nostru controlat”, a declarat firma. „Am activat, de asemenea, fluxul de lucru pentru a fi declanșat de utilizatori fără permisiuni de „scriere”, pentru a ne asigura că măsurile de atenuare a ștergerii variabilelor de mediu ale Anthropic erau active în timpul testelor noastre.”
Anthropic a remediat defecțiunea pe 5 mai, cu versiunea Claude Code 2.1.128, după ce Microsoft a dezvăluit vulnerabilitatea prin HackerOne pe 29 aprilie.
În ciuda mai multor straturi de controale de securitate încorporate, Microsoft a descoperit că un atacator hotărât ar putea manipula un agent AI pentru a expune informații sensibile.
„Intrăm într-o eră în care limbajul natural este cod executabil, iar intrările neautorizate, cum ar fi problemele GitHub (GitHub issues), trebuie tratate ca ostile în mod implicit”, a afirmat. „Un singur comentariu atent formulat, combinat cu o graniță de încredere înțeleasă greșit, este tot ce trebuie pentru a obține credențiale de producție.”