Agenți de inteligență artificială rulați de OpenAI în mașini virtuale separate au reușit să-și transmită informații fără conexiune la rețea și fără fișiere comune, folosind diferențele de timp de acces la memoria cache a procesorului. Compania a descris experimentul într-o publicare din 23 octombrie despre testele de securitate făcute pe propria infrastructură de cercetare, potrivit Cyber Security News și Wccftech.
Testele au făcut parte dintr-o amplă campanie de tip red teaming, în care echipe de agenți au încercat să spargă barierele menite să-i țină izolați. OpenAI precizează că încercările au vizat copii izolate ale sistemelor interne de antrenare și evaluare, nu mediile folosite de clienți cu modelele lansate public.
Cum a funcționat canalul ascuns prin cache
Memoria cache este o memorie mică și rapidă a procesorului, care păstrează copii ale datelor folosite recent. Citirea din cache este mai rapidă decât din memoria principală, iar această diferență de timp poate fi măsurată de un program.
În experiment, cercetătorii au cerut agenților aflați în mașini virtuale diferite, dar pe aceleași servere fizice, să schimbe între ei „secrete sintetice”, adică date de test fără valoare reală. Sistemele OpenAI ar fi trebuit să împiedice exact acest lucru.
Potrivit descrierii companiei, un agent codifica informația eliminând din cache anumite date alese. Al doilea agent măsura cât dura reîncărcarea acelor date și deducea mesajul din alternanța dintre citirile rapide și cele lente. După ce au convenit asupra unui protocol de codificare, cei doi au putut transmite secretele fără să modifice vreun fișier comun și fără să deschidă o conexiune de rețea.
O tehnică veche, folosită într-un context nou
OpenAI însăși face trimitere la atacurile Spectre și Meltdown, făcute publice în ianuarie 2018 de cercetători din echipa Google Project Zero și din mai multe universități, printre care Universitatea Tehnică din Graz.
Tehnicile bazate pe cache sunt totuși mai vechi decât aceste atacuri: în 2014, cercetătorii Yuval Yarom și Katrina Falkner au descris metoda FLUSH+RELOAD, testată inclusiv între mașini virtuale separate.
Ce au fost Spectre și Meltdown
Ambele atacuri exploatau execuția speculativă, o tehnică prin care procesoarele moderne „ghicesc” ce instrucțiuni urmează și le execută din timp, ca să câștige viteză. Când presupunerea se dovedește greșită, rezultatele sunt aruncate, dar urmele lor rămân în memoria cache.
Meltdown afecta în principal procesoarele Intel și unele procesoare ARM. Permitea unui program obișnuit să citească memoria nucleului sistemului de operare, unde se pot afla parole sau chei de criptare. Spectre era mai greu de exploatat, dar mai răspândit: afecta procesoare Intel, AMD și ARM și putea păcăli o aplicație să-și dezvăluie propriile date.
În ambele cazuri, datele ajungeau la atacator prin același mecanism folosit acum de agenții OpenAI: măsurarea timpului de citire din cache. Remedierile au venit prin actualizări ale sistemelor de operare, ale browserelor și ale microcodului procesoarelor, uneori cu scăderi de performanță. Unele variante au putut fi eliminate complet abia în generații noi de cipuri.
Mai mulți comentatori de specialitate subliniază că experimentul nu dovedește o vulnerabilitate nouă de tip Spectre. Agenții au cooperat de bunăvoie pentru a comunica, nu au furat date de la un program-victimă. Publicația Kingy AI notează că OpenAI nu a precizat procesorul, configurația memoriei sau ce parte din tehnică a fost propusă de agenți și ce parte de cercetători.




