Tokom proteklih nekoliko godina, proizvođači hardvera su razvili tehnologije koje bi trebalo da omoguće kompanijama i vladinim organizacijama da bezbedno obrađuju osetljive podatke koristeći deljene resurse računarstva u oblaku. Poznat kao poverljivo računarstvo, ovaj pristup štiti osetljive podatke dok se obrađuju tako što ih izoluje u oblasti koja je neprobojna za druge korisnike, pa čak i za dobavljača oblaka. Ali kompjuterski naučnici sa ETH Ciriha sada su dokazali da je moguće da hakeri dobiju pristup ovim sistemima i podacima koji se u njima čuvaju.
Istraživači su pokrenuli dva scenarija napada, oba koristeći ono što je poznato kao mehanizam prekida, koji privremeno ometa redovnu obradu — na primer, da bi dali prioritet drugom računarskom zadatku. Postoji ukupno 256 različitih prekida, od kojih svaki pokreće određeni niz programskih komandi.
„Prekidi su marginalna briga i čini se da je obezbeđivanje sistematskih zaštitnih mehanizama jednostavno zanemareno“, kaže Shveta Shinde, profesor kompjuterskih nauka na ETH Cirihu. Zajedno sa svojom Secure & Trustvorthi Sistems Group, Shinde je identifikovala problematične propuste u hardveru servera koji koriste dva vodeća proizvođača računarskih čipova, AMD i Intel.
Shindeov tim je otkrio bezbednosne praznine dok je ispitivao poverljive računarske tehnologije koje se koriste u AMD i Intel procesorima. Istraživači su želeli da steknu dubinsko razumevanje o tome kako ovi procesori funkcionišu jer rade na pametnom telefonu zaštićenom od prisluškivanja zasnovanom na poverljivom računarstvu.
U osnovi poverljivog računarstva je pouzdano okruženje za izvršavanje (TEE). TEE je komponenta zasnovana na hardveru koja izoluje aplikacije dok se pokreću. Pristup memoriji aplikacije je tada moguć samo sa autorizovanim kodom. To znači da su podaci takođe zaštićeni od neovlašćenog pristupa dok se čuvaju, nešifrovani, u radnoj memoriji tokom obrade. U prošlosti, jedini način da se obezbedi takva zaštita bio je šifrovanje podataka dok su uskladišteni na čvrstom disku i tokom prenosa.
U javnom oblaku, aplikacije su izolovane pomoću TEE-a, posebno od onoga što je poznato kao hipervizor. Provajderi u oblaku koriste softver hipervizora za upravljanje resursima u rasponu od hardverskih komponenti do virtuelnih servera svojih klijenata. Hipervizori su važan deo usluga u oblaku jer stvaraju potrebnu fleksibilnost, efikasnost i sigurnost. Pored upravljanja i optimizacije načina na koji se osnovni hardver koristi, oni osiguravaju da različiti korisnici mogu bezbedno da rade u odvojenim oblastima istog oblaka bez ometanja jedni drugih.
Ali administrativne funkcije koje obavljaju hipervizori su takođe faktor nestabilnosti jer otvaraju razne napade. Pod određenim uslovima, ovi napadi mogu omogućiti pristup podacima uskladištenim u memoriji drugih aktivnih korisnika oblaka koji rade sa istim hardverom. Štaviše, dobavljači oblaka bi takođe mogli da koriste hipervizore da sami zavire u podatke svojih korisnika.
Oba ova rizika su neprihvatljiva za kompanije i vladine organizacije koje obrađuju osetljive podatke. Zaista, u ekspertskom izveštaju koji je sastavio Švajcarsko savezno veće, koji je ispitivao pravni okvir za sprovođenje švajcarske strategije u oblaku, neovlašćeni pristup onome što se naziva „podacima u upotrebi“ ocenjen je kao najverovatniji rizik povezan sa korišćenjem javnog oblaka.
Međutim, postoje osnovna ograničenja u pogledu toga koliko dobro se korisnički sistem može izolovati i zaštititi od hipervizora. Na kraju krajeva, neka komunikacija mora da se odvija između njih dvoje, a kao administrativni alat, hipervizor i dalje mora da bude u stanju da obavlja svoje osnovne zadatke. To uključuje dodelu resursa u oblaku i upravljanje virtuelnim serverom koji pokreće zaštićeni sistem u oblaku.
Jedan od preostalih interfejsa između hipervizora i TEE tiče se upravljanja prekidima. ETH tim je pokrenuo ono što je poznato kao Ahoi napadi da bi iskoristio hipervizor kao sredstvo za slanje koordinisanih prekida u bezbedni sistem u bilo kom trenutku. Ovo otkriva jaz u bezbednosti: umesto da blokira zahtev od nepouzdanog hipervizora, TEE propušta određene prekide. Nesvestan da ovi prekidi dolaze spolja, sistem pokreće svoje uobičajene programske rutine.
Slanjem koordinisanih prekida prekida, naučnici iz ETH-a uspeli su da zbune TEE-obezbeđen sistem tako efikasno da su mogli da dobiju root pristup — drugim rečima, preuzmu potpunu kontrolu.
„Najviše je pogođeno ovim problemom AMD-ovo poverljivo računarstvo, koje se pokazalo ranjivim na napade iz nekoliko različitih prekida. U slučaju Intela, samo jedna vrata za prekid bila su otvorena“, kaže Šinde sumirajući rezultate svog „Heklerovog napada“. Istraživači su takođe ocenili prethodna AMD-ova sredstva odbrane kao nedovoljna. Proizvođači čipova su od tada preduzeli korake da to reše.
Drugi scenario napada, poznat kao VeSee, utiče samo na AMD hardver. On koristi mehanizam koji je proizvođač čipa uveo da olakša komunikaciju između TEE i hipervizora uprkos izolaciji. U ovom slučaju, poseban prekid može prouzrokovati da bezbedni sistem otkrije osetljive podatke, pa čak i da pokrene spoljne programe.
Koliko god da je važno da se pronađu praznine u bezbednosti za osetljive podatke uskladištene u javnom oblaku, za Šinde i njenu istraživačku grupu ovo je bio samo nusproizvod na putu da se osigura da korisnici iPhone-a i Android pametnih telefona zadrže potpunu kontrolu nad svojim podacima i aplikacije. Specijalno dizajniran TEE će učiniti više od toga da obezbedi zaštitu korisničkih podataka od prisluškivanja od strane operativnog sistema proizvođača.
„Takođe želimo da naš TEE podržava nenadgledani rad onih aplikacija kojima ne upravljaju Apple ili Google“, kaže Šinde.