Odprtokodni čip OpenTitan bo nadomestil lastniške korenine zaupanja Intel in ARM

Odprtokodni čip OpenTitan bo nadomestil lastniške korenine zaupanja Intel in ARM

Neprofitna organizacija lowRISC z Googlom in drugimi sponzorji 5. november 2019 predstavljeno Projekt OpenTitan, ki imenuje "prvi odprtokodni projekt za ustvarjanje odprte, visokokakovostne arhitekture čipov s korenino zaupanja (RoT) na ravni strojne opreme."

OpenTitan, ki temelji na arhitekturi RISC-V, je namenski čip za vgradnjo na strežnike v podatkovnih centrih in v katero koli drugo opremo, kjer je potrebno zagotoviti pristnost zagona, zaščititi vdelano programsko opremo pred spremembami in odpraviti možnost rootkitov: to so matične plošče, omrežne kartice, usmerjevalniki, naprave IoT, mobilni pripomočki itd.

Seveda podobni moduli obstajajo v sodobnih procesorjih. Na primer, modul Intel Hardware Boot Guard je temelj zaupanja v procesorje Intel. Pred nalaganjem OS preveri pristnost UEFI BIOS-a prek verige zaupanja. Toda vprašanje je, koliko lahko zaupamo lastniškim koreninam zaupanja, glede na to, da nimamo nobenega zagotovila, da v dizajnu ne bo nobenih hroščev, in tega ni mogoče preveriti? Glej članek »Schrödingerjev zaupanja vreden prenos. Intel Boot Guard" z opisom, »kako hrošč, ki je bil več let kloniran v proizvodnji več prodajalcev, potencialnemu napadalcu omogoča, da s to tehnologijo ustvari skrit rootkit v sistemu, ki ga ni mogoče odstraniti (tudi s programerjem).

Grožnja ogrožanja opreme v dobavni verigi je presenetljivo resnična: očitno lahko vsak amaterski inženir elektronike lahko spajka hrošča v matično ploščo strežnikaz uporabo opreme, ki ne stane več kot 200 USD. Nekateri strokovnjaki sumijo, da bi lahko "organizacije s proračuni v višini sto milijonov dolarjev to počele več let." Čeprav ni dokazov, je teoretično mogoče.

"Če ne morete zaupati zagonskemu nalagalniku strojne opreme, je igre konec," pravi Gavin Ferris, član upravnega odbora lowRISC. - Ni pomembno, kaj počne operacijski sistem - če ste do trenutka, ko se operacijski sistem naloži, ogroženi, je ostalo stvar tehnologije. Ste že končali."

To težavo naj bi rešila prva te vrste odprta strojna platforma OpenTitan (Repozitorij GitHub, dokumentacijo, specifikacije strojne opreme). Odmik od lastniških rešitev bo pomagal spremeniti "počasno in pomanjkljivo industrijo RoT", pravi Google.

Google je sam začel razvijati Titan, potem ko je odkril operacijski sistem Minix, vgrajen v čipe Intel Management Engine (ME). Ta zapleten OS je razširil površino napada na nepredvidljive in neobvladljive načine. Google poskušal se je znebiti Intel Management Engine (ME), a neuspešno.

Kaj je korenina zaupanja?

Vsaka stopnja postopka zagona sistema preveri pristnost naslednje stopnje in tako ustvari veriga zaupanja.

Root of Trust (RoT) je avtentikacija na podlagi strojne opreme, ki zagotavlja, da vira prvega izvršljivega ukaza v verigi zaupanja ni mogoče spremeniti. RoT je osnovna zaščita pred rootkiti. To je ključna faza zagonskega procesa, ki je vključena v kasnejši zagon sistema - od BIOS-a do OS in aplikacij. Preveriti mora pristnost vsakega naslednjega koraka prenosa. Za to se na vsaki stopnji uporablja nabor digitalno podpisanih ključev. Eden najbolj priljubljenih standardov za zaščito ključev strojne opreme je TPM (Trusted Platform Module).

Odprtokodni čip OpenTitan bo nadomestil lastniške korenine zaupanja Intel in ARM
Vzpostavitev korenine zaupanja. Zgoraj je petstopenjski zagonski postopek, ki ustvari verigo zaupanja, začenši z zagonskim nalagalnikom v nespremenljivem pomnilniku. Vsak korak uporablja javni ključ za preverjanje identitete naslednje komponente, ki bo naložena. Ilustracija iz knjige Perryja Leeja "Arhitektura interneta stvari"

RoT je mogoče zagnati na različne načine:

  • nalaganje slike in korenskega ključa iz vdelane programske opreme ali nespremenljivega pomnilnika;
  • shranjevanje korenskega ključa v enkratnem programabilnem pomnilniku z uporabo varovalnih bitov;
  • Nalaganje kode iz zaščitenega pomnilniškega območja v zaščiteno shrambo.

Različni procesorji različno izvajajo koren zaupanja. Intel in ARM
podpira naslednje tehnologije:

  • ARM TrustZone. ARM proizvajalcem čipov prodaja lastniški silikonski blok, ki zagotavlja korenino zaupanja in druge varnostne mehanizme. To loči mikroprocesor od nevarnega jedra; poganja Trusted OS, varen operacijski sistem z dobro definiranim vmesnikom za interakcijo z nevarnimi komponentami. Zaščiteni viri se nahajajo v zaupanja vrednem jedru in morajo biti čim lažji. Preklapljanje med komponentami različnih tipov poteka s preklapljanjem konteksta strojne opreme, kar odpravlja potrebo po programski opremi za varno spremljanje.
  • Intel Boot Guard je mehanizem strojne opreme za preverjanje pristnosti začetnega zagonskega bloka s kriptografskimi sredstvi ali s postopkom merjenja. Za preverjanje začetnega bloka mora proizvajalec ustvariti 2048-bitni ključ, ki je sestavljen iz dveh delov: javnega in zasebnega. Javni ključ je natisnjen na ploščo z "detoniranjem" varovalk med proizvodnjo. Ti deli so za enkratno uporabo in jih ni mogoče spremeniti. Zasebni del ključa ustvari digitalni podpis za kasnejšo avtentikacijo stopnje prenosa.

Platforma OpenTitan razkriva ključne dele takšnega sistema strojne/programske opreme, kot je prikazano na spodnjem diagramu.

Odprtokodni čip OpenTitan bo nadomestil lastniške korenine zaupanja Intel in ARM

Platforma OpenTitan

Razvoj platforme OpenTitan vodi neprofitna organizacija lowRISC. Inženirska ekipa ima sedež v Cambridgeu (UK), glavni sponzor pa je Google. Med ustanovnimi partnerji so ETH Zurich, G+D Mobile Security, Nuvoton Technology in Western Digital.

google objavil obvestilo projekt na Google Open Source korporativnem blogu. Podjetje je dejalo, da je OpenTitan zavezan "zagotavljanju visokokakovostnih navodil za načrtovanje in integracijo RoT za uporabo v strežnikih podatkovnih centrov, pomnilnikih, robnih napravah in več."

Koren zaupanja je prvi člen v verigi zaupanja na najnižji ravni v zaupanja vrednem računalniškem modulu, ki mu sistem vedno popolnoma zaupa.

RoT je ključnega pomena za aplikacije, vključno z infrastrukturo javnih ključev (PKI). Je temelj varnostnega sistema, na katerem temelji kompleksen sistem, kot je aplikacija IoT ali podatkovni center. Torej je jasno, zakaj Google podpira ta projekt. Zdaj ima 19 podatkovnih centrov na petih celinah. Podatkovni centri, shranjevanje in kritične aplikacije predstavljajo obsežno površino za napade in za zaščito te infrastrukture je Google sprva razvil lasten koren zaupanja na čipu Titan.

Lastniški čip Titan za Googlove podatkovne centre je bil prvič predstavljen marca 2017 na konferenci Google Cloud Next. »Naši računalniki izvajajo kriptografske preglede vsakega programskega paketa in se nato odločijo, ali mu bodo odobrili dostop do omrežnih virov. Titan se integrira v ta proces in ponuja dodatne plasti zaščite,« so na tej predstavitvi povedali predstavniki Googla.

Odprtokodni čip OpenTitan bo nadomestil lastniške korenine zaupanja Intel in ARM
Titan čip v Googlovem strežniku

Arhitektura Titan je bila prej v lasti Googla, zdaj pa je javno dostopna kot odprtokodni projekt.

Prva faza projekta je izdelava logične zasnove RoT na ravni čipa, vključno z odprtokodnim mikroprocesorjem. nizkoRISC kozorog, kriptografski procesorji, strojni generator naključnih števil, hierarhije ključev in pomnilnika za obstojno in nehlapno shranjevanje, varnostni mehanizmi, periferne V/I naprave in procesi varnega zagona.

Google pravi, da OpenTitan temelji na treh ključnih načelih:

  • vsak ima možnost preveriti platformo in prispevati;
  • povečana prilagodljivost z odpiranjem logično varne zasnove, ki je ne blokirajo lastniške omejitve prodajalca;
  • kakovost, ki je zagotovljena ne le s samim dizajnom, ampak tudi z referenčno vdelano programsko opremo in dokumentacijo.

»Trenutni čipi s koreninami zaupanja so zelo zaščiteni. Trdijo, da so varni, v resnici pa to jemljete kot samoumevno in tega ne morete sami preveriti, pravi Dominic Rizzo, vodilni strokovnjak za varnost pri projektu Google Titan. »Zdaj je prvič mogoče zagotoviti varnost brez slepe vere v razvijalce lastniške zasnove korenine zaupanja. Temelj torej ni le trden, ampak ga je mogoče preveriti.«

Rizzo je dodal, da se lahko OpenTitan šteje za "radikalno pregleden dizajn v primerjavi s trenutnim stanjem stvari."

Po mnenju razvijalcev OpenTitan nikakor ne bi smeli obravnavati kot končnega izdelka, saj razvoj še ni končan. Namenoma so odprli specifikacije in načrtovali sredi razvoja, tako da so ga lahko vsi pregledali, zagotovili vnos in izboljšali sistem pred začetkom proizvodnje.

Če želite začeti proizvajati čipe OpenTitan, se morate prijaviti in pridobiti certifikat. Očitno licenčnine niso potrebne.

Vir: www.habr.com

Dodaj komentar