Sjećate se sigurnosnih eksploatacija Spectre i Meltdown od prošle godine? Intel i AMD se stvarno nadaju da nećete. Unatoč onome u što žele da vjerujete, ovi spekulativni podvigi izvršenja neće nestati, barem ne s do sada predloženim rješenjima.
Sadržaj
- Počevši od korijena
- Zaobilaženje Spectra
- Sigurnost, ali po koju cijenu?
- Veliko, malo i sigurno
- Dovodeći to u mase
Umjesto da pokušavate popraviti svaku varijantu koja se pojavi, trajni popravak će zahtijevati temeljnu promjenu načina na koji su CPU-i dizajnirani. Prijedlog? "Sigurna jezgra" koja osigurava da vaši podaci ostanu sigurni od napadača, bez obzira na pogreške koje bi pokušali iskoristiti.
Preporučeni videozapisi
To možda nije put kojim ove velike procesorske tvrtke žele ići, ali bi mogao biti jedini koji stvarno funkcionira.
Povezano
- AMD-ova obrana od Spectre V2 može biti neadekvatna
Počevši od korijena
Kada se lansira nova generacija procesora, prvo pitanje na svačijim usnama je, "koliko je brz to?" Više megaherca, više jezgri, više predmemorije, sve kako bi aplikacije radile brže i igre radile brže bolje. Sekundarna razmatranja mogu biti zahtjevi za napajanjem ili toplinskom snagom, ali rijetko tko postavlja pitanje o sigurnosti.
Razumijevanje Spectre i Meltdown
Problem s tim je što su poboljšanja performansi u proteklih nekoliko godina uglavnom rezultat spekulativno predviđanje, to jest procesori koji nagađaju što ćete sljedeće učiniti i pripremaju sve što biste mogli potreba za tim. To je sjajno za performanse, ali kao što su pokazali Spectre i njegove varijante, loše je za sigurnost.
“Špekulativno izvršenje je značajka za optimizaciju performansi CPU-a već duže vrijeme,” izjavio je za Digital Trends stariji voditelj sigurnosnog istraživanja Malwarebytes, Jean-Philippe Taggart. Objasnio je kako upravo ta značajka čini procesore Intela i drugih ranjivima na Spectre i slične napade. "Arhitektura CPU-a trebat će ozbiljno preispitati, ili zadržati ova poboljšanja performansi, ali ih zaštititi od napada kao što je Spectre, ili ih u potpunosti ukinuti", rekao je.
"Teško je u sigurnosti ako ste uvijek reaktivni, morate čekati sigurnosne propuste i onda ih popravljati"
Jedno potencijalno rješenje je dodavanje novog dijela hardvera nadolazećim generacijama CPU-a. Umjesto rješavanja osjetljivih zadataka (koji čine takve napade isplativo) na procesorskim jezgrama velike konjske snage, što ako proizvođači čipova kombiniraju te jezgre s dodatnom jezgrom koja je posebno dizajnirana s takvim zadatke na umu? Sigurnosna jezgra.
Time bi Spectre i njegove varijante mogli postati problem za novi hardver. Ne bi bilo važno da su glavne CPU jezgre sutrašnjice ranjive na takve napade, jer te jezgre više ne bi rukovale privatnim ili sigurnim informacijama.
Ovaj koncept korijena povjerenja više je od pukog okvira. U nekim slučajevima, to je već održiv proizvod i sve što bi velike tvrtke za proizvodnju čipova, poput Intela ili AMD-a, trebale učiniti kako bi ga iskoristile, jest usvojiti ga.
Zaobilaženje Spectra
"Teško je u sigurnosti ako ste uvijek reaktivni, morate čekati sigurnosne propuste i onda ih popravljati," Rambusov viši direktor za upravljanje proizvodima, Ben Levine, rekao je za Digital Trends, na pitanje o tekućoj Spectre varijanti prijetnje. “Taj problem pokušavanja učiniti složeni procesor sigurnim je stvarno težak način. Tu smo došli do pristupa premještanja kritičnih sigurnosnih funkcija u zasebnu jezgru.”
Iako nije prvi koji je predložio takvu ideju, Rambus ju je doradio. Njegovo CryptoManager korijen povjerenja je zasebna jezgra koja bi se nalazila na glavnom procesoru, pomalo poput koncepta big.little koji se nalazi u mnogim mobilnim procesorima, pa čak i Intelovom novi Lakefield dizajn. Tamo gdje ti čipovi koriste manje jezgre za uštedu energije, siguran temelj povjerenja usredotočio bi se na sigurnost prije svega.
Kombinirao bi procesor bez spekulativnih aspekata glavnih CPU-a, s akceleratorima za kriptografiju i vlastitu sigurnu memoriju. Bio bi to relativno jednostavan dizajn u usporedbi s monstruoznim CPU-ima opće namjene koji danas pokreću naša računala, ali bi tako bilo daleko sigurnije.
Zaštićujući se, sigurna jezgra tada bi mogla preuzeti najosjetljivije zadatke koje bi CPU jezgra inače opće namjene obično rješavala. Osiguranje ključeva za šifriranje, provjera valjanosti bankovnih transakcija, obrada pokušaja prijave, pohranjivanje privatnih podataka u sigurnu memoriju ili provjera zapisa o pokretanju nisu oštećeni tijekom pokretanja.
"... Te se operacije relativno sporo izvode u softveru, ali sigurnosna jezgra može imati hardverske akceleratore koji to rade mnogo brže."
Sve bi to moglo pomoći u poboljšanju opće sigurnosti sustava koji ga koristi. Još bolje, budući da mu nedostaju spekulativna poboljšanja performansi, bio bi potpuno siguran protiv napada sličnih Spectreu, poništavajući ih. Takvi napadi bi se i dalje mogli provoditi protiv glavnih CPU jezgri, ali budući da ne bi obrađivali podatke koji bi bili vrijedni krađe, to ne bi bilo važno.
"Ideja nije osmisliti jedan CPU koji može učiniti sve da bude vrlo brz i vrlo siguran, nego optimizirajmo različite jezgre zasebno za različite ciljeve", objasnio je Levine. “Optimizirajmo naš primarni CPU za performanse ili manju snagu, što god je važno za taj sustav, i optimizirajmo drugu jezgru za sigurnost. Sada imamo ove dvije zasebno optimizirane domene obrade i radimo obradu u bilo kojoj od njih koja je najprikladnija s obzirom na karakteristike izračuna i sustava.”
Takva bi jezgra funkcionirala pomalo poput T2 koprocesorskog čipa koji je Apple predstavio sa svojim iMacom, a kasnije implementiran u svom 2018.
Sigurnost, ali po koju cijenu?
Često se kaže da je složenost neprijatelj sigurnosti. Zato je sigurni dizajn jezgre koji Rambus predlaže relativno jednostavan. To nije veliki, monstruozni čip s više jezgri i visokim taktom poput tipičnih CPU-a koji se nalaze u stolnim računalima ili prijenosna računala.
Dakle, znači li to da bismo žrtvovali performanse ako bi se takva jezgra koristila uz moderni čip? Nije nužno.
Važan pomak od ideje sigurne jezgre, bilo da se radilo o Rambusovom CryptoManageru Root of Trust ili sličan dizajn iz druge tvrtke, je da će obavljati samo zadatke koji su bili usmjereni na privatnost ili sigurnosti. Ne bi vam trebao da preuzme vaše hranjenje grafička kartica tijekom sesije igranja ili ugađanja slika u Photoshopu. Ipak, možda biste više voljeli da upravlja šifriranjem vaših poruka preko aplikacije za chat. Tu bi specijalizirani hardver mogao imati neke prednosti osim sigurnosti.
"Stvari kao što su kriptografski algoritmi, šifriranje ili dešifriranje iz algoritma kao što je AES ili korištenje algoritma javnog ključa kao što je RSA ili elliptic krivulje, te su operacije relativno spore u softveru, ali sigurnosna jezgra može imati hardverske akceleratore koji to rade mnogo brže,” Levine rekao je.
“Težimo jednostavnosti i ako nešto držite jednostavnim, držite ga malim. Ako je mali, male je snage.”
To je nešto s čime se Armov šef IoT sigurnosti Rob Coombs uvelike slaže.
“Obično se root of trustovi ugrađuju u kripto akcelerator, pa je za to potrebno malo više silicija, ali dobra strana toga je da je veće performanse za stvari kao što su kripto funkcije, tako da se ne oslanjate samo na procesor za redovito šifriranje datoteke," rekao je. “Procesor to može postaviti, a zatim kripto mašina može žvakati podatke i šifrirati ih ili dekriptirati. Dobivate bolje performanse.”
Moderni procesori poput Intela imaju vlastite kripto-akceleratore, tako da možda nije slučaj da enkripcija ili dešifriranje bilo bi bitno brže od CPU-a opće namjene koji obavlja isti zadatak, ali bi moglo biti usporediv.
Iako je Coombs u svom razgovoru s nama istaknuo da bi root of trust core zahtijevao malo dodatnog silicija za proizvodnju, trošak to radeći na drugim važnim čimbenicima kao što su cijena proizvodnje, potrošnja energije čipa ili njegova toplinska snaga, uglavnom bi bili nepromijenjen.
Rambusov Ben Levine se složio.
"Sigurnosna jezgra je malena u usporedbi sa svim ostalim", rekao je. “Zapravo nema značajnog utjecaja na cijenu čipa, snagu ili toplinske zahtjeve. Možete učiniti mnogo u prilično malom logičkom području ako ga pažljivo dizajnirate. Težimo jednostavnosti i ako nešto držite jednostavnim, držite ga malim. Ako je mali, male je snage.”
Njegovo jedino upozorenje bilo je da bi u manjim uređajima manje snage poput onih koji se koriste u IoT Rambusova sigurna jezgra imala veći utjecaj na snagu i cijenu. Tu bi mogao uskočiti Armov modularniji pristup.
Veliko, malo i sigurno
Arm je bio rani pionir ideje o veliko.malo CPU-ovi, ili velike i male jezgre u istom procesoru. Danas je to također uobičajena značajka u mobilnim uređajima tvrtki Qualcomm i Apple. Vidi veće CPU jezgre koje se koriste za teške poslove po potrebi, dok manje jezgre obrađuju uobičajene zadatke kako bi se uštedjelo na energiji. Armov pristup temelji se na toj ideji ugradnje korijena povjerenja u glavne čipove, kao i mnogo manje mikrokontrolere za korištenje u širem nizu uređaja.
“Definirali smo nešto što se zove a PSA (sigurnosna arhitektura platforme) korijen povjerenja s ugrađenim nekim bitnim sigurnosnim funkcijama poput kriptografije, sigurnog pokretanja, sigurne pohrane; Svaki IOT uređaj će ih trebati,” objasnio je Coobs za Digital Trends.
Od svih velikih proizvođača čipova, Arm je vjerojatno bio najmanje pogođen Spectreom i Meltdownom. Tamo gdje je Intel bio ranjiv na najširi niz potencijalnih napada, a AMD je morao objaviti brojne mikrokodove i podešavanja softvera, Arm je uspio osnažiti svoju ionako čvrstu obranu prije nego što su spekulativne greške u izvršavanju otkriveno.
Sada Arm usmjerava svoje napore na osiguravanje interneta stvari. Coombs vjeruje da je sigurna jezgra, korijen povjerenja jedan od najboljih načina za to i želi vidjeti da svaki IoT uređaj implementira takav sustav. Kako bi to postigao, Arm nudi softver otvorenog koda, razvojne smjernice i hardverska rješenja za sigurnosne probleme s kojima se suočavaju današnji IoT programeri.
.. Mnogo će se koristiti sigurnosnom jezgrom na razini OS-a i sustava, a ne na razini aplikacije
“Stvorili smo open source i referentnu implementaciju, a sada s PSA certifikatom stvorili smo višerazinska sigurnosna shema [gdje] ljudi mogu odabrati sigurnosnu robusnost koja im je potrebna,” rekao je Coombs. “Različiti sustavi trebaju različite količine sigurnosti. Želimo to prilagoditi IoT prostoru.”
Primjenom ovih načela na veće procesore opće namjene koji se nalaze u prijenosnim i stolnim računalima, krajnji rezultat ne bi bio drastično drugačiji. Iako takvi čipovi ne bi imali male jezgre uz svoje velike, mogli bi implementirati sigurnu jezgru na matricu bez previše poteškoća, prema Ben Levineu iz Rambusa.
"Ove jezgre bi trebale biti i moraju biti mnogo manje od jedne od glavnih velikih CPU jezgri koje dobivate u čipu od Intela ili AMD-a", rekao je. "Neće biti sedam plus jedan, bit će osam ili bilo koji drugi procesor i jedna ili možda više od jedne male sigurnosne jezgre koja pruža sigurnosne funkcije za sve ostale jezgre."
Što je također ključno, takve jezgre ne bi bilo ni komplicirano implementirati.
"Nećemo puno dodati ciklusu dizajna čipa za uvođenje novog čipa u potrošački proizvod", rekao je. “Naš će utjecaj biti prilično minimalan. To će jednostavno biti normalan životni ciklus proizvoda u kojem se razvoj arhitekture čipa stavlja u proizvodnju, a zatim u isporuku proizvoda.”
Dovodeći to u mase
Sigurnost može biti pitanje kokoši i jajeta, a programeri je ne žele implementirati bez posebne potrebe ili zahtjeva kupaca. Ali kad bi proizvođači hardvera kombinirali svoje postojeće CPU jezgre sa sigurnom jezgrom od povjerenja, posao programera softvera bio bi relativno lak.
"Ovisno o aplikaciji, velik dio upotrebe sigurnosne jezgre bit će učinjen na razini OS-a i sustava, a ne na razini aplikacije", objasnio je Levine. “Ako ispravno gradite svoj OS i cjelokupni sistemski softver, tada možete koristiti većinu te sigurnosne funkcije bez da se programeri aplikacija o tome moraju brinuti. Možete pružiti API-je za otkrivanje nekih od osnovnih sigurnosnih funkcija koje razvojni programer aplikacije lako može iskoristiti, poput šifriranja i dekriptiranja podataka.”
Uključivanjem korijena povjerenja u sam hardver i prepuštanjem njegove implementacije operativnim sustavima, programeri softvera mogao bi brzo iskoristiti dodatnu sigurnost koju bi mogao unijeti u sve aspekte računalstva, uključujući izbjegavanje zamki Spectrea i njegovih ilk.
Ovo bi moglo biti mjesto gdje su tvrtke poput Intela i AMD-a dosad griješile. Iako su njihove zakrpe, popravci mikrokoda i podešavanja hardvera pomogli u ublažavanju nekih problema napada sličnih Spectreu, svi oni dolaze sa svojim vlastitim zamkama. Performanse su degradirane i u mnogim slučajevima proizvođači uređaja ne primjenjuju neobavezne zakrpe jer ne žele izgubiti utrku u naoružanju.
Umjesto toga, Rambus, Arm i drugi nastoje u potpunosti izbjeći problem.
"Ne tvrdimo da popravljamo Spectre ili Meltdown, ono što prvo kažemo je da ove eksploatacije nisu jedine ranjivosti", rekao je Levine. “Uvijek će ih biti više. Složenost modernih procesora čini to neizbježnim. Promijenimo problem i prihvatimo da će biti više ranjivosti u CPU-ima opće namjene i sličnim stvarima do kojih nam je jako stalo, poput ključeva, vjerodajnica, podataka, premjestimo to iz CPU-a i zaobiđimo cijeli problem.”
Na ovaj način korisnici mogu vjerovati da je njihov sustav siguran bez potrebe da žrtvuju bilo što. Korijen hardvera povjerenja znači da su svi podaci koji su ukradeni nikome beskorisni. Ostavlja duh Spectrea u sjenovitom području redundantnosti, gdje može nastaviti proganjati one koji koriste stari hardver. Ali kako ljudi nadograđuju na nove buduće generacije hardvera opremljene root of trustom, to bi postajalo sve nevažnije i daleko manje zabrinjavajuće.
Preporuke urednika
- AMD bi konačno mogao pobijediti Intel za najbrži CPU za mobilne igre
- Intelovi čipovi su još uvijek ranjivi, a novi Ice Lake neće sve zakrpati