Tehnologie

Claude instalează singur pachete npm, iar unul rău îți poate fura fișierele

Susan Hill

Funcția Computer Use a lui Claude face ceva ce un chatbot obișnuit nu poate. Deschide un terminal pe calculatorul tău și instalează software în locul tău, inclusiv pachete luate direct din npm, cel mai mare registru de cod sursă deschis din lume. Atracția e evidentă, fiindcă reduce «pregătește-mi proiectul ăsta» la o singură propoziție. Riscul stă în aceeași propoziție, pentru că în clipa în care un pachet sosește, npm poate rula codul de pornire pe care acel pachet l-a adus cu el, iar acum cel care apasă pe trăgaci e un agent autonom.

Pentru oricine lasă un agent de IA să scrie sau să ruleze cod, și sunt tot mai mulți programatori, pasionați și curioși fără pregătire tehnică, întrebarea practică e directă. Dacă Claude instalează un pachet pe care nu l-ai privit niciodată, iar acel pachet a fost construit ca să-ți copieze fișierele în clipa în care aterizează, cine trebuia să-l oprească? Un videoclip recent al unui cercetător de securitate parcurge exact această situație și arată un pachet-capcană care citește fișiere locale în timpul unei instalări de rutină pe care IA o duce la capăt fără să ezite.

Mecanismul nu e nou, și tocmai asta îl face serios. Pachetele npm pot declara scripturi de instalare, instrucțiuni mici care rulează automat de îndată ce un pachet e adăugat într-un proiect, înainte ca măcar o linie din el să fie folosită intenționat. E un comportament documentat, nu un defect. Permite uneltelor legitime să se compileze sau să-și pregătească mediul. Înseamnă însă și că orice pachet poate rula cod pe mașina ta în momentul instalării, cu aceleași drepturi pe care le ai tu, iar echipele de securitate avertizează asupra lui de ani de zile.

Lumea a primit o reamintire clară a mizei când atacatorii au pus mâna pe contul de mentenanță al Axios, o bibliotecă de rețea descărcată de zeci de milioane de ori pe săptămână, și au strecurat în ea o dependență malițioasă care instala un troian de acces la distanță pe mașinile dezvoltatorilor. Nu au atins niciodată codul real al Axios. Scriptul de instalare a făcut treaba. Axios se întâmplă să fie o cărămidă chiar în Claude Code, alături de nenumărate alte aplicații, ceea ce arată cât de mică e distanța dintre unealta în care ai încredere și codul pe care îl trage tăcut după sine.

Ce adaugă demonstrația la acest tablou cunoscut e agentul. O persoană care pornește o instalare poate măcar să se oprească, să citească numele pachetului, să observe că e scris greșit sau publicat de o clipă, și să dea înapoi. Un agent de IA care acționează pe o comandă vagă nu are acest reflex. Instalează ce decide că îi trebuie. Și fiindcă Computer Use citește și ecranul, mută cursorul și tastează, o singură dependență otrăvită nu rămâne închisă în editorul de cod. Are drum liber pe tot biroul.

Merită să fim preciși despre ce este și ce nu este asta. Nu e o ușă din spate ascunsă și specifică lui Claude, nici dovada că modelul a fost păcălit să-și ocolească propriile reguli. E rezultatul previzibil al faptului că dai oricărui program autonom puterea de a instala software, combinat cu un registru care rulează cod de instalare în mod implicit de peste un deceniu. Înlocuiește Claude cu orice alt agent de programare cu aceleași drepturi și tabloul e identic. Pericolul trăiește în autonomie și în registru, nu în chatbotul unei companii.

Anthropic, dimpotrivă, împinge în direcția opusă. Compania a lansat de curând pentru uneltele sale de programare un sandbox care izolează agentul de restul sistemului, limitează ce fișiere poate citi și ce servere poate atinge, și a publicat ca sursă deschisă kitul de izolare care îl susține, pentru ca alții să-l folosească. Raționamentul e cel pe care demonstrația îl scoate la iveală. Un agent care nu ajunge la cheile tale SSH nu le poate scurge, iar un agent care nu poate contacta un server necunoscut nu-ți poate trimite fișierele nicăieri. Compania spune că aceste limite reduc cu aproximativ 84 la sută cererile de permisiune pe care le arată utilizatorilor, ceea ce contează fiindcă o unealtă care întreabă despre tot ajunge să învețe oamenii să apese da.

Pentru cei care chiar folosesc aceste unelte, apărările sunt plictisitoare și eficiente. Rulează agentul într-un sandbox, un container sau o mașină virtuală de unică folosință, ca cel mai rău lucru pe care un pachet prost îl poate atinge să fie un mediu de sacrificiu. Dezactivează scripturile de instalare automate acolo unde fluxul de lucru o permite, ceva ce câțiva manageri de pachete mai noi fac deja implicit. Ține datele de acces, cheile și fișierele personale departe de mașina pe care agentul are mână liberă. Și tratează «instalează-mi asta» cu prudența pe care ai da-o lui «deschide acest atașament din email», fiindcă pe dedesubt e mai aproape de asta decât pare.

Pachetul concret din demonstrație e dovada unui cercetător, nu un focar real, și nu există vreun semn că ar fi ajuns la utilizatori adevărați. Tiparul din spate e partea care nu va sta locului. Programarea cu agenți devine norma mai repede decât obiceiurile menite să o țină în siguranță, iar registrele pe care se sprijină acești agenți nu au fost niciodată construite pentru o lume în care cel care tastează comanda de instalare nu e o persoană. Până se închide acea breșă, cea mai veche regulă a securității software țintește acum un utilizator de tip nou: ce instalează agentul tău, aceea rulează, așa că hotărăște ce are voie să atingă înainte să-l lași să pornească.

Discuție

Există 0 comentarii.