Atac mediu virtualizareO maşină virtuală "fură" informaţii de la o altă maşină virtuală rulând pe acelaşi hardware? Acest lucru nu ar trebui să se întâmple. O echipă de cercetători de la două universităţi americane şi de la Laboratoarele RSA susţine totuşi că scenariul este posibil.



 

Maşinile virtuale îndeplinesc diferite sarcini pe un singur computer mai degrabă decât să se bazeze pe o maşină separată pentru a rula fiecare sarcină. Presupunerea este aceea că una din maşinile virtuale care rulează pe un sistem fizic nu poate "trage cu urechea" către o alta şi nici nu poate afecta funcţionarea alteia în vreo manieră. Acum însă, o tehnică raportată într-o lucrare cu titlul „Canale laterale între maşini virtuale (VM) şi utilizarea acestora pentru a extrage chei private”, scris de Yinqian Zhang de la Universitatea North Carolina, din Chapel Hill şi de colegii informaticieni de la Universitatea North Carolina, Universitatea din Wisconsin si Laboratoarele RSA, sugerează altceva.


Cercetătorii spun că au finalizat prima demonstraţie a succesului unui atac pe canale laterale (side-channel attack) pe un sistem virtualizat cu multiprocesare simetrică, folosind o maşină virtuală manager (VMM). Ei spun că este posibil pentru o VM să fure cheile de criptare active cu care sunt securizate datele de pe altă VM, rulând pe acelaşi hardware. Acest lucru nu creează o imagine prea fericită pentru facilităţile informatice care valorifică virtualizarea.


Atac side-channel
Diagrama paşilor principali la atacul pe canale laterale - Yinqian Zhang et al.
Clic pe imagine pentru a o mări.


Side-channel attack = în criptografie, un atac pe canale laterale este un atac bazat pe informaţii obţinute din implementarea fizică a unui sistem de criptare, nu prin forţă brută ori pe baza unei slăbiciuni teoretice a algoritmilor folosiţi (cum e cazul în criptanaliză).


În câteva ore, ei au obţinut, folosind librăria criptografică libgcrypt v.1.5.0, cheia privată corespunzătoare unei chei publice ElGamal pe 4096 de biţi (ElGamal este un algoritm de criptare asimetric folosit în criptografia cu chei publice - n.tr.). Ei au extras cheia secretă ElGamal stocată pe o VM care rula software-ul criptografic GNU Privacy Guard. Cum funcţionează procedura: ambele VM folosesc acelaşi cache hardware, unde se înmagazinează datele pentru a fi folosite de procesorul computerului. VM-ul atacator umple cache-ul astfel încât ţinta VM, care procesează o cheie de criptare, poate suprascrie unele date introduse de atacator. Privind la modificările din cache, VM-ul care atacă află mai multe despre cheia utilizată de maşina virtuală ţintă.

Canalele laterale ale VM” pot deveni cuvinte familiare pentru cei care se ocupă cu securitatea informatică din mediile tip „cloud”.  Tehnica autorilor se rezumă la „analiza canalelor laterale”, în care o cheie privată este decodificată prin studiul comportamentului unui sistem criptografic ţintă. „În acest document”, spun autorii, „prezentăm dezvoltarea şi aplicarea unui atac de pe canale laterale între maşini virtuale”, pe care îl descriu ulterior ca un atac cu acces direcţionat în care VM-ul atacator alternează execuţiile cu VM-ul victimă şi foloseşte cache-ul procesorului pentru a observa comportamentul victimei. Atacul funcţionează numai atunci când atât maşina virtuală atacator, cât şi cea victimă rulează pe acelaşi hardware fizic sau, în limbajul informaţional, când sunt „co-rezidenţi” ai unei singure maşini. Co-autorul Ari Juels de la Laboratoarele RSA spune că una dintre lecţiile care trebuie învăţate este acea că maşinile virtuale care rulează sarcini cu o sensibilitate şi volum de procesare ridicate nu ar trebui să fie plasate pe aceeaşi gazdă fizică cu maşini virtuale posibil nedemne de încredere.

Modalitatea de a evita bătăile de cap ce pot fi cauzate de exploatarea acestei vulnerabilităţi în mediile de procesare comerciale constă în anumite contra-măsuri pe care le poate lua un administrator pentru a evita scurgerile de informaţii electronice. Una este aceea de a folosi un computer separat, perfect securizat („air-gapped”), pentru a efectua sarcinile care necesită securitate maximă.

„În mediile cu securitate maximă, o practică împământenită este pur şi simplu aceea de a nu folosi acelaşi computer pentru a executa sarcini care trebuie izolate unele faţă de altele, altfel spus, în limbaj tehnic, menţinerea unei „air gap” între sarcini. Aceasta rămâne cea mai bună apărare împotriva atacurilor pe canale laterale (şi a multor alte atacuri)”, scriu autorii.

Alte măsuri de protecţie pot apela la algoritmi rezistenţi în faţa acestor atacuri; autorii menţionează de asemenea şi metoda numită „core scheduling”(planificarea accesului la resurse de către procesoare - n.tr.). Articolul spune: „O altă metodă de apărare poate căuta să modifice planificarea accesului la resurse astfel încât cel puţin să fie limitată granularitatea canalelor laterale bazate pe întreruperi”.

Mai multe informaţii puteţi citi în lucrarea publicată aici.





Traducere şi adaptare de Mirela Stancu după vm-rude-awakening-virtualization, cu acordul Phys.org.

Write comments...
symbols left.
You are a guest ( Sign Up ? )
or post as a guest
Loading comment... The comment will be refreshed after 00:00.

Be the first to comment.