OpenTitan čip otvorenog koda će zamijeniti vlasničke korijene povjerenja Intela i ARM-a

OpenTitan čip otvorenog koda će zamijeniti vlasničke korijene povjerenja Intela i ARM-a

Neprofitna organizacija lowRISC sa Googleom i drugim sponzorima 5. novembra 2019 predstavljen nacrt OpenTitan, koji naziva „prvi projekat otvorenog koda za stvaranje otvorene, visokokvalitetne arhitekture čipa s korijenom povjerenja (RoT) na razini hardvera.”

OpenTitan baziran na RISC-V arhitekturi je čip posebne namjene za instalaciju na servere u podatkovnim centrima i u bilo kojoj drugoj opremi gdje je potrebno osigurati autentičnost pokretanja, zaštititi firmver od promjena i eliminirati mogućnost rootkita: to su matične ploče, mrežne kartice, ruteri, IoT uređaji, mobilni uređaji itd.

Naravno, slični moduli postoje u modernim procesorima. Na primjer, modul Intel Hardware Boot Guard je korijen povjerenja u Intelove procesore. On provjerava autentičnost UEFI BIOS-a kroz lanac povjerenja prije učitavanja OS-a. Ali pitanje je koliko možemo vjerovati vlasničkim korijenima povjerenja, s obzirom na to da nemamo garanciju da neće biti grešaka u dizajnu, a ne postoji ni način da se to provjeri? Vidi članak “Schrödingerovo pouzdano preuzimanje. Intel Boot Guard" sa opisom „kako greška koja je godinama klonirana u proizvodnji nekoliko dobavljača omogućava potencijalnom napadaču da koristi ovu tehnologiju za kreiranje skrivenog rootkita u sistemu koji se ne može ukloniti (čak ni uz pomoć programera).

Prijetnja kompromitiranja opreme u lancu opskrbe je iznenađujuće stvarna: očigledno, svaki inženjer elektronike amater može zalemiti grešku u matičnu ploču serverakoristeći opremu koja ne košta više od 200 USD. Neki stručnjaci sumnjaju da bi "organizacije sa budžetima od stotina miliona dolara to mogle raditi dugi niz godina". Iako nema dokaza, teoretski je moguće.

"Ako ne možete vjerovati hardverskom bootloaderu, igra je gotova," kaže Gavin Ferris, član odbora direktora lowRISC-a. - Nije važno šta operativni sistem radi - ako ste do trenutka učitavanja operativnog sistema kompromitovani, ostalo je stvar tehnike. Već ste završili."

Ovaj problem bi trebalo da reši prva te vrste otvorena hardverska platforma OpenTitan (GitHub spremište, dokumentaciju, hardverske specifikacije). Udaljavanje od vlasničkih rješenja pomoći će promijeniti “tromu i manjkavu industriju RoT-a”, kaže Google.

Sam Google je počeo da razvija Titan nakon što je otkrio operativni sistem Minix ugrađen u Intel Management Engine (ME) čipove. Ovaj složeni OS proširio je površinu napada na nepredvidive i nekontrolisane načine. Google pokušao da se riješi Intelovog upravljačkog mehanizma (ME), ali bezuspješno.

Šta je koren poverenja?

Svaka faza procesa pokretanja sistema provjerava autentičnost sljedeće faze, čime se generira lanac poverenja.

Root of Trust (RoT) je autentifikacija zasnovana na hardveru koja osigurava da se izvor prve izvršne instrukcije u lancu povjerenja ne može promijeniti. RoT je osnovna zaštita od rootkita. Ovo je ključna faza procesa pokretanja, koja je uključena u naknadno pokretanje sistema - od BIOS-a do OS-a i aplikacija. Mora provjeriti autentičnost svakog sljedećeg koraka preuzimanja. Za to se u svakoj fazi koristi skup digitalno potpisanih ključeva. Jedan od najpopularnijih standarda za hardversku zaštitu ključeva je TPM (Trusted Platform Module).

OpenTitan čip otvorenog koda će zamijeniti vlasničke korijene povjerenja Intela i ARM-a
Uspostavljanje korena poverenja. Iznad je proces pokretanja u pet koraka koji stvara lanac povjerenja, počevši od pokretača u nepromjenjivoj memoriji. Svaki korak koristi javni ključ za provjeru identiteta sljedeće komponente koja će se učitati. Ilustracija iz knjige Perry Leeja "Arhitektura interneta stvari"

RoT se može pokrenuti na različite načine:

  • učitavanje slike i root ključa iz firmvera ili nepromjenjive memorije;
  • pohranjivanje korijenskog ključa u jednokratnu programabilnu memoriju pomoću bitova osigurača;
  • Učitavanje koda iz zaštićenog memorijskog područja u zaštićeno skladište.

Različiti procesori različito implementiraju korijen povjerenja. Intel i ARM
podržavaju sljedeće tehnologije:

  • ARM TrustZone. ARM prodaje vlasnički silikonski blok proizvođačima čipova koji pruža korijen povjerenja i druge sigurnosne mehanizme. Ovo odvaja mikroprocesor od nesigurnog jezgra; pokreće Trusted OS, siguran operativni sistem sa dobro definisanim interfejsom za interakciju sa nesigurnim komponentama. Zaštićeni resursi se nalaze u pouzdanom jezgru i trebali bi biti što je moguće lakši. Prebacivanje između komponenti različitih tipova vrši se korišćenjem hardverskog prebacivanja konteksta, eliminišući potrebu za sigurnim softverom za praćenje.
  • Intel Boot Guard je hardverski mehanizam za provjeru autentičnosti početnog bloka za pokretanje kriptografskim sredstvima ili kroz proces mjerenja. Da bi potvrdio početni blok, proizvođač mora generirati 2048-bitni ključ, koji se sastoji od dva dijela: javnog i privatnog. Javni ključ se štampa na ploči "detonirajućim" fitilima tokom proizvodnje. Ovi bitovi su jednokratni i ne mogu se mijenjati. Privatni dio ključa generiše digitalni potpis za naknadnu provjeru autentičnosti u fazi preuzimanja.

OpenTitan platforma otkriva ključne delove takvog hardversko/softverskog sistema, kao što je prikazano na dijagramu ispod.

OpenTitan čip otvorenog koda će zamijeniti vlasničke korijene povjerenja Intela i ARM-a

OpenTitan platforma

Razvojem OpenTitan platforme upravlja neprofitna organizacija lowRISC. Inženjerski tim je sa sjedištem u Cambridgeu (UK), a glavni sponzor je Google. Osnivački partneri su ETH Zurich, G+D Mobile Security, Nuvoton Technology i Western Digital.

Google objavio saopštenje projekta na Google Open Source korporativnom blogu. Kompanija je saopštila da je OpenTitan posvećen "pružanju visokokvalitetnih smernica o RoT dizajnu i integraciji za upotrebu u serverima centara podataka, skladištenju, rubnim uređajima i još mnogo toga."

Korijen povjerenja je prva karika u lancu povjerenja na najnižem nivou u pouzdanom računarskom modulu, kojem sistem uvijek u potpunosti vjeruje.

RoT je kritičan za aplikacije uključujući infrastrukture javnih ključeva (PKI). To je temelj sigurnosnog sistema na kojem se zasniva složeni sistem kao što je IoT aplikacija ili data centar. Dakle, jasno je zašto Google podržava ovaj projekat. Sada ima 19 data centara na pet kontinenata. Centri podataka, skladištenje i kritične aplikacije predstavljaju ogromnu površinu napada, a da bi zaštitio ovu infrastrukturu, Google je u početku razvio vlastiti korijen povjerenja na Titan čip.

Vlasnički Titan čip za Google data centre je prvi put predstavljen u martu 2017 na konferenciji Google Cloud Next. “Naši računari obavljaju kriptografske provjere svakog softverskog paketa, a zatim odlučuju hoće li mu odobriti pristup mrežnim resursima. Titan se integriše u ovaj proces i nudi dodatne slojeve zaštite”, rekli su predstavnici Googlea na toj prezentaciji.

OpenTitan čip otvorenog koda će zamijeniti vlasničke korijene povjerenja Intela i ARM-a
Titan čip na Google serveru

Arhitektura Titan je ranije bila u vlasništvu Google-a, ali je sada postala javna domena kao projekat otvorenog koda.

Prva faza projekta je stvaranje logičkog RoT dizajna na nivou čipa, uključujući mikroprocesor otvorenog koda lowRISC kozorog, kriptografski procesori, hardverski generator slučajnih brojeva, hijerarhije ključeva i memorije za nepromjenjivo i nepromjenjivo skladištenje, sigurnosni mehanizmi, I/O periferije i sigurni procesi pokretanja.

Google kaže da je OpenTitan zasnovan na tri ključna principa:

  • svi imaju priliku da pogledaju platformu i doprinesu;
  • povećana fleksibilnost otvaranjem logički sigurnog dizajna koji nije blokiran vlasničkim ograničenjima dobavljača;
  • kvalitet osiguran ne samo samim dizajnom, već i referentnim firmverom i dokumentacijom.

„Trenutni čipovi sa korenima poverenja su veoma zaštićeni. Oni tvrde da su sigurni, ali u stvarnosti to uzimate zdravo za gotovo i ne možete to sami provjeriti, kaže Dominic Rizzo, vodeći stručnjak za sigurnost za Google Titan projekat. „Sada je po prvi put moguće pružiti sigurnost bez slepe vere u programere vlasničkog korena dizajna poverenja. Dakle, temelj nije samo čvrst, već se može i provjeriti.”

Rizzo je dodao da se OpenTitan može smatrati "radikalno transparentnim dizajnom u poređenju sa trenutnim stanjem stvari".

Prema programerima, OpenTitan se ni na koji način ne bi trebao smatrati gotovim proizvodom, jer razvoj još nije završen. Namjerno su otvorili specifikacije i dizajnirali u sredini razvoja kako bi svi mogli to pregledati, dati input i poboljšati sistem prije početka proizvodnje.

Da biste počeli proizvoditi OpenTitan čipove, morate se prijaviti i dobiti certifikat. Očigledno, tantijeme nisu potrebne.

izvor: www.habr.com

Dodajte komentar