Avoimen lähdekoodin OpenTitan-siru korvaa Intelin ja ARM:n omat luottamuksen juuret

Avoimen lähdekoodin OpenTitan-siru korvaa Intelin ja ARM:n omat luottamuksen juuret

Voittoa tavoittelematon organisaatio alhainen RISC Googlen ja muiden sponsorien kanssa 5 esitetty hanke OpenTitan, joka on "ensimmäinen avoimen lähdekoodin projekti, joka luo avoimen, korkealaatuisen siruarkkitehtuurin, jossa on luottamuksen juuret (RoT) laitteistotasolla."

RISC-V-arkkitehtuuriin perustuva OpenTitan on erikoiskäyttöinen siru, joka asennetaan palvelimille datakeskusten ja kaikkiin muihin laitteisiin, joissa on tarpeen varmistaa käynnistyksen autenttisuus, suojata laiteohjelmistoa muutoksilta ja eliminoida rootkittien mahdollisuus: nämä ovat emolevyjä, verkkokortit, reitittimet, IoT-laitteet, mobiililaitteet jne.

Tietenkin nykyaikaisissa prosessoreissa on samanlaisia ​​​​moduuleja. Esimerkiksi Intel Hardware Boot Guard -moduuli on luottamuksen juuret Intel-prosessoreihin. Se varmistaa UEFI BIOSin aitouden luottamusketjun kautta ennen käyttöjärjestelmän lataamista. Mutta kysymys kuuluukin, kuinka paljon voimme luottaa omiin luottamuksen juuriin, kun otetaan huomioon, että meillä ei ole takeita siitä, että suunnittelussa ei ole virheitä, eikä sitä voida millään tarkistaa? Katso artikkeli "Schrödingerin luotettu lataus. Intel Boot Guard" jossa kuvataan "miten vuosia useiden valmistajien tuotannossa kloonattu bugi mahdollistaa potentiaalisen hyökkääjän käyttää tätä tekniikkaa luodakseen järjestelmään piilotetun rootkitin, jota ei voida poistaa (edes ohjelmoijalla).

Uhka laitteiden kompromisseista toimitusketjussa on yllättävän todellinen: ilmeisesti kuka tahansa amatööri elektroniikkainsinööri voi juottaa vian palvelimen emolevyynkäyttämällä laitteita, jotka maksavat enintään 200 dollaria. Jotkut asiantuntijat epäilevät, että "organisaatiot, joiden budjetit ovat satoja miljoonia dollareita, voisivat tehdä tätä useita vuosia". Vaikka todisteita ei ole, se on teoriassa mahdollista.

"Jos et voi luottaa laitteiston käynnistyslataajaan, peli on ohi." hän puhuu Gavin Ferris, lowRISC:n hallituksen jäsen. - Ei ole väliä mitä käyttöjärjestelmä tekee - jos olet käyttöjärjestelmän latautuessa vaarantunut, niin loppu on tekniikasta kiinni. Olet jo lopettanut."

Tämä ongelma pitäisi ratkaista ensimmäisellä laatuaan avoimella laitteistoalustalla OpenTitan (GitHub-arkisto, dokumentointi, laitteiston tekniset tiedot). Omien ratkaisujen luopuminen auttaa muuttamaan "hitautta ja puutteellista RoT-teollisuutta", Google sanoo.

Google aloitti Titanin kehittämisen löydettyään Intel Management Engine (ME) -siruihin sisäänrakennetun Minix-käyttöjärjestelmän. Tämä monimutkainen käyttöjärjestelmä laajensi hyökkäyksen pintaa arvaamattomilla ja hallitsemattomilla tavoilla. Google yritti päästä eroon Intel Management Enginestä (ME), mutta tuloksetta.

Mikä on luottamuksen juuri?

Järjestelmän käynnistysprosessin jokainen vaihe tarkistaa seuraavan vaiheen aitouden ja luo näin luottamusketju.

Root of Trust (RoT) on laitteistopohjainen todennus, joka varmistaa, että luottamusketjun ensimmäisen suoritettavan käskyn lähdettä ei voida muuttaa. RoT on perussuojaus rootkittejä vastaan. Tämä on käynnistysprosessin keskeinen vaihe, joka liittyy järjestelmän myöhempään käynnistykseen - BIOSista käyttöjärjestelmään ja sovelluksiin. Sen on varmistettava jokaisen seuraavan latausvaiheen aitous. Tätä varten jokaisessa vaiheessa käytetään sarjaa digitaalisesti allekirjoitettuja avaimia. Yksi suosituimmista laitteistoavainten suojauksen standardeista on TPM (Trusted Platform Module).

Avoimen lähdekoodin OpenTitan-siru korvaa Intelin ja ARM:n omat luottamuksen juuret
Luottamuksen juuren luominen. Yllä on viisivaiheinen käynnistysprosessi, joka luo luottamusketjun, joka alkaa muuttumattomassa muistissa olevasta käynnistyslataimesta. Jokainen vaihe käyttää julkista avainta seuraavan ladattavan komponentin identiteetin tarkistamiseen. Kuvitus Perry Leen kirjasta "Esineiden Internet -arkkitehtuuri"

RoT voidaan käynnistää eri tavoin:

  • kuvan ja juuriavaimen lataaminen laiteohjelmistosta tai muuttumattomasta muistista;
  • juuriavaimen tallentaminen kertakäyttöiseen ohjelmoitavaan muistiin sulakebittien avulla;
  • Ladataan koodia suojatusta muistialueesta suojattuun tallennustilaan.

Eri prosessorit toteuttavat luottamuksen juuren eri tavalla. Intel ja ARM
tukee seuraavia tekniikoita:

  • ARM TrustZone. ARM myy siruvalmistajille patentoidun piilohkon, joka tarjoaa luottamuksen juuren ja muita suojamekanismeja. Tämä erottaa mikroprosessorin turvattomasta ytimestä; se käyttää Trusted OS -käyttöjärjestelmää, turvallista käyttöjärjestelmää, jossa on hyvin määritelty käyttöliittymä vuorovaikutukseen suojaamattomien komponenttien kanssa. Suojatut resurssit sijaitsevat luotetussa ytimessä, ja niiden tulee olla mahdollisimman kevyitä. Vaihtaminen erityyppisten komponenttien välillä tapahtuu laitteistokontekstin vaihtamisella, mikä eliminoi turvallisten valvontaohjelmistojen tarpeen.
  • Intel Boot Guard on laitteistomekanismi alkuperäisen käynnistyslohkon aitouden tarkistamiseksi kryptografisin keinoin tai mittausprosessin avulla. Alkulohkon tarkistamiseksi valmistajan on luotava 2048-bittinen avain, joka koostuu kahdesta osasta: julkisesta ja yksityisestä. Julkinen avain painetaan levylle "räjäyttämällä" sulakkeen kärkeä valmistuksen aikana. Nämä bitit ovat kertakäyttöisiä eikä niitä voi muuttaa. Avaimen yksityinen osa luo digitaalisen allekirjoituksen latausvaiheen myöhempää todentamista varten.

OpenTitan-alusta paljastaa tällaisen laitteisto-/ohjelmistojärjestelmän keskeiset osat alla olevan kaavion mukaisesti.

Avoimen lähdekoodin OpenTitan-siru korvaa Intelin ja ARM:n omat luottamuksen juuret

OpenTitan-alusta

OpenTitan-alustan kehitystä hallinnoi voittoa tavoittelematon järjestö lowRISC. Suunnittelutiimi sijaitsee Cambridgessa (Iso-Britannia), ja pääsponsori on Google. Perustajakumppaneita ovat ETH Zurich, G+D Mobile Security, Nuvoton Technology ja Western Digital.

Google julkaisi ilmoituksen projekti Google Open Source -yritysblogissa. Yhtiö sanoi, että OpenTitan on sitoutunut "tarjoamaan korkealaatuista ohjausta RoT-suunnitteluun ja -integraatioon käytettäväksi datakeskuspalvelimissa, tallennustilassa, reunalaitteissa ja muissa".

Luottamuksen juuri on ensimmäinen lenkki luottamusketjussa alimmalla tasolla luotetussa laskentamoduulissa, johon järjestelmä luottaa aina täysin.

RoT on kriittinen sovelluksille, mukaan lukien julkisen avaimen infrastruktuurit (PKI). Se on perusta turvajärjestelmälle, johon monimutkainen järjestelmä, kuten IoT-sovellus tai datakeskus, perustuu. Joten on selvää, miksi Google tukee tätä projektia. Sillä on nyt 19 datakeskusta viidellä mantereella. Palvelinkeskukset, tallennustila ja kriittiset sovellukset tarjoavat laajan hyökkäyspinnan, ja tämän infrastruktuurin suojelemiseksi Google kehitti aluksi oman luottamuksen juurensa Titan-sirulle.

Patentoitu Titan-siru Googlen palvelinkeskuksille otettiin ensimmäisen kerran käyttöön maaliskuussa 2017 Google Cloud Next -konferenssissa. ”Tietokoneemme suorittavat salaustarkistuksia jokaiselle ohjelmistopaketille ja päättävät sitten, myönnetäänkö sille pääsy verkkoresursseihin. Titan integroituu tähän prosessiin ja tarjoaa lisäsuojakerroksia", Googlen edustajat sanoivat tuossa esityksessä.

Avoimen lähdekoodin OpenTitan-siru korvaa Intelin ja ARM:n omat luottamuksen juuret
Titan-siru Google-palvelimella

Titan-arkkitehtuuri oli aiemmin Googlen omistuksessa, mutta nyt se on julkistettu avoimen lähdekoodin projektina.

Projektin ensimmäinen vaihe on loogisen RoT-suunnittelun luominen sirutasolla, mukaan lukien avoimen lähdekoodin mikroprosessori lowRISC-vuori, salausprosessorit, laitteiston satunnaislukugeneraattori, avain- ja muistihierarkiat haihtumattomaan ja haihtumattomaan tallennustilaan, suojausmekanismit, I/O-oheislaitteet ja suojatut käynnistysprosessit.

Google sanoo, että OpenTitan perustuu kolmeen pääperiaatteeseen:

  • jokaisella on mahdollisuus tutustua alustaan ​​ja osallistua siihen;
  • lisääntynyt joustavuus avaamalla loogisesti turvallinen suunnittelu, jota valmistajan rajoitukset eivät estä;
  • Laadun takaa paitsi itse suunnittelu, myös viitelaiteohjelmisto ja -dokumentaatio.

”Nykyiset sirut, joilla on luottamuksen juuret, ovat hyvin omaisuutta. He väittävät olevansa turvallisia, mutta todellisuudessa otat sen itsestäänselvyytenä etkä voi varmistaa sitä itse, sanoo Dominic Rizzo, Google Titan -projektin johtava tietoturvaasiantuntija. ”Nyt on ensimmäistä kertaa mahdollista tarjota turvallisuutta ilman sokeaa uskoa omaan luottamuksen juureen perustuvan suunnittelun kehittäjiin. Perustus ei siis ole vain vankka, se voidaan varmistaa."

Rizzo lisäsi, että OpenTitania voidaan pitää "radikaalin läpinäkyvänä mallina nykytilanteeseen verrattuna".

Kehittäjien mukaan OpenTitania ei pitäisi missään tapauksessa pitää valmiina tuotteena, koska kehitys ei ole vielä valmis. He avasivat tietoisesti tekniset tiedot ja suunnittelun puolivälissä, jotta jokainen voisi tarkistaa sen, antaa panoksensa ja parantaa järjestelmää ennen tuotannon aloittamista.

Jotta voit aloittaa OpenTitan-sirujen tuotannon, sinun on haettava ja hankittava sertifikaatti. Ilmeisesti rojalteja ei vaadita.

Lähde: will.com

Lisää kommentti