De open source OpenTitan-chip zal de eigen vertrouwenswortels van Intel en ARM vervangen

De open source OpenTitan-chip zal de eigen vertrouwenswortels van Intel en ARM vervangen

Non-profit organisatie laagRISC met Google en andere sponsors 5 november 2019 gepresenteerd project OpenTitan, dat “het eerste open-sourceproject noemt dat een open, hoogwaardige chiparchitectuur creëert met een root of trust (RoT) op hardwareniveau.”

OpenTitan, gebaseerd op de RISC-V-architectuur, is een chip voor speciale doeleinden voor installatie op servers in datacenters en in alle andere apparatuur waar het nodig is om de authenticiteit van het opstarten te garanderen, de firmware tegen veranderingen te beschermen en de mogelijkheid van rootkits te elimineren: dit zijn moederborden, netwerkkaarten, routers, IoT-apparaten, mobiele gadgets, enz.

Natuurlijk bestaan ​​er soortgelijke modules in moderne processors. De Intel Hardware Boot Guard-module is bijvoorbeeld de basis van vertrouwen in Intel-processors. Het verifieert de authenticiteit van het UEFI BIOS via een vertrouwensketen voordat het besturingssysteem wordt geladen. Maar de vraag is: in hoeverre kunnen we vertrouwen op de eigen wortels van vertrouwen, gegeven het feit dat we geen garantie hebben dat er geen bugs in het ontwerp zullen zitten, en dat er geen manier is om dit te controleren? Zie artikel “Schrödinger's vertrouwde download. Intel Bootguard" met een beschrijving van “hoe een bug die al jaren in de productie van verschillende leveranciers wordt gekloond, een potentiële aanvaller in staat stelt deze technologie te gebruiken om een ​​verborgen rootkit in het systeem te creëren die niet kan worden verwijderd (zelfs niet door een programmeur).

De dreiging van compromittering van apparatuur in de toeleveringsketen is verrassend reëel: blijkbaar voor elke amateur-elektronica-ingenieur kan een bug in het moederbord van de server solderengebruik van apparatuur die niet meer dan $ 200 kost. Sommige deskundigen vermoeden dat 'organisaties met budgetten van honderden miljoenen dollars dit nog vele jaren zouden kunnen doen'. Hoewel er geen bewijs is, is het theoretisch mogelijk.

"Als je de hardware-bootloader niet kunt vertrouwen, is het spel voorbij", говорит Gavin Ferris, lid van de raad van bestuur van lowRISC. - Het maakt niet uit wat het besturingssysteem doet. Als u tegen de tijd dat het besturingssysteem wordt geladen, gecompromitteerd bent, is de rest een kwestie van technologie. Je bent al klaar."

Dit probleem zou moeten worden opgelost door het eerste in zijn soort open hardwareplatform OpenTitan (GitHub-opslagplaats, documentatie, hardwarespecificaties). Door afstand te nemen van propriëtaire oplossingen zal de “trage en gebrekkige RoT-industrie” veranderen, zegt Google.

Google begon zelf met de ontwikkeling van Titan nadat hij het Minix-besturingssysteem had ontdekt dat in Intel Management Engine (ME)-chips was ingebouwd. Dit complexe besturingssysteem breidde het aanvalsoppervlak op onvoorspelbare en oncontroleerbare manieren uit. Googlen geprobeerd Intel Management Engine (ME) te verwijderen, maar zonder succes.

Wat is de wortel van vertrouwen?

Elke fase van het opstartproces van het systeem controleert de authenticiteit van de volgende fase en genereert zo keten van vertrouwen.

Root of Trust (RoT) is een op hardware gebaseerde authenticatie die ervoor zorgt dat de bron van de eerste uitvoerbare instructie in de vertrouwensketen niet kan worden gewijzigd. RoT is de basisbescherming tegen rootkits. Dit is een belangrijke fase van het opstartproces, die betrokken is bij het daaropvolgende opstarten van het systeem - van BIOS tot besturingssysteem en applicaties. Het moet de authenticiteit van elke volgende downloadstap verifiëren. Om dit te doen, wordt in elke fase een set digitaal ondertekende sleutels gebruikt. Een van de meest populaire standaarden voor hardwaresleutelbeveiliging is TPM (Trusted Platform Module).

De open source OpenTitan-chip zal de eigen vertrouwenswortels van Intel en ARM vervangen
Een basis van vertrouwen creëren. Hierboven ziet u een opstartproces in vijf stappen dat een vertrouwensketen creëert, te beginnen met de bootloader in onveranderlijk geheugen. Bij elke stap wordt een openbare sleutel gebruikt om de identiteit van het volgende te laden onderdeel te verifiëren. Illustratie uit het boek van Perry Lee "Internet der Dingen-architectuur"

RoT kan op verschillende manieren gelanceerd worden:

  • het laden van de afbeelding en de rootsleutel vanuit firmware of onveranderlijk geheugen;
  • het opslaan van de rootsleutel in een eenmalig programmeerbaar geheugen met behulp van fuse-bits;
  • Code laden vanuit een beveiligd geheugengebied naar een beschermde opslag.

Verschillende verwerkers implementeren de basis van vertrouwen anders. Intel en ARM
ondersteunen de volgende technologieën:

  • ARM TrustZone. ARM verkoopt een eigen siliciumblok aan chipmakers dat een basis biedt voor vertrouwen en andere beveiligingsmechanismen. Dit scheidt de microprocessor van de onveilige kern; het draait op Trusted OS, een veilig besturingssysteem met een goed gedefinieerde interface voor interactie met onveilige componenten. Beschermde bronnen bevinden zich in de vertrouwde kern en moeten zo licht mogelijk zijn. Het schakelen tussen componenten van verschillende typen gebeurt met behulp van hardwarecontextwisseling, waardoor de noodzaak voor veilige bewakingssoftware wordt geëlimineerd.
  • Intel Bootguard is een hardwaremechanisme voor het verifiëren van de authenticiteit van het initiële opstartblok door middel van cryptografische middelen of via een meetproces. Om het initiële blok te verifiëren, moet de fabrikant een sleutel van 2048 bits genereren, die uit twee delen bestaat: openbaar en privé. De publieke sleutel wordt op het bord gedrukt door tijdens de productie zekeringbits te laten ‘ontploffen’. Deze bits zijn eenmalig te gebruiken en kunnen niet worden gewijzigd. Het privégedeelte van de sleutel genereert een digitale handtekening voor daaropvolgende authenticatie van de downloadfase.

Het OpenTitan-platform legt de belangrijkste onderdelen van een dergelijk hardware-/softwaresysteem bloot, zoals weergegeven in het onderstaande diagram.

De open source OpenTitan-chip zal de eigen vertrouwenswortels van Intel en ARM vervangen

OpenTitan-platform

De ontwikkeling van het OpenTitan-platform wordt beheerd door de non-profitorganisatie lowRISC. Het technische team is gevestigd in Cambridge (VK) en de hoofdsponsor is Google. Oprichtende partners zijn onder meer ETH Zürich, G+D Mobile Security, Nuvoton Technology en Western Digital.

Kopen Google Reviews een aankondiging gepubliceerd project op de Google Open Source bedrijfsblog. Het bedrijf zegt dat OpenTitan zich inzet voor "het bieden van hoogwaardige begeleiding bij RoT-ontwerp en -integratie voor gebruik in datacenterservers, opslag, edge-apparaten en meer."

De wortel van vertrouwen is de eerste schakel in de vertrouwensketen op het laagste niveau in een vertrouwde computermodule, die altijd volledig wordt vertrouwd door het systeem.

RoT is van cruciaal belang voor toepassingen, waaronder publieke sleutelinfrastructuren (PKI's). Het vormt de basis van het beveiligingssysteem waarop een complex systeem zoals een IoT-applicatie of datacenter is gebaseerd. Het is dus duidelijk waarom Google dit project ondersteunt. Het heeft nu 19 datacenters op vijf continenten. Datacenters, opslag en bedrijfskritische applicaties vormen een enorm aanvalsoppervlak, en om deze infrastructuur te beschermen ontwikkelde Google aanvankelijk zijn eigen vertrouwensbasis op de Titan-chip.

Eigen Titan-chip voor Google-datacenters werd voor het eerst geïntroduceerd maart 2017 op de Google Cloud Next-conferentie. “Onze computers voeren cryptografische controles uit op elk softwarepakket en beslissen vervolgens of het toegang krijgt tot netwerkbronnen. Titan integreert in dit proces en biedt extra beschermingslagen”, zeiden vertegenwoordigers van Google tijdens die presentatie.

De open source OpenTitan-chip zal de eigen vertrouwenswortels van Intel en ARM vervangen
Titan-chip in Google-server

De Titan-architectuur was voorheen eigendom van Google, maar wordt nu publiek domein gemaakt als open source-project.

De eerste fase van het project is het creëren van een logisch RoT-ontwerp op chipniveau, inclusief een open source microprocessor lowRISC steenbok, cryptografische processors, hardwaregenerator voor willekeurige getallen, sleutel- en geheugenhiërarchieën voor niet-vluchtige en niet-vluchtige opslag, beveiligingsmechanismen, I/O-randapparatuur en veilige opstartprocessen.

Google zegt dat OpenTitan gebaseerd is op drie belangrijke principes:

  • iedereen heeft de mogelijkheid om het platform te bekijken en bij te dragen;
  • grotere flexibiliteit door het openen van een logisch veilig ontwerp dat niet wordt geblokkeerd door eigen leveranciersbeperkingen;
  • kwaliteit die niet alleen wordt gegarandeerd door het ontwerp zelf, maar ook door referentiefirmware en documentatie.

“De huidige chips met wortels van vertrouwen zijn erg bedrijfseigen. Ze beweren veilig te zijn, maar in werkelijkheid neem je het als vanzelfsprekend aan en kun je het niet zelf verifiëren, zegt Dominic Rizzo, hoofdbeveiligingsspecialist voor het Google Titan-project. “Nu is het voor het eerst mogelijk om beveiliging te bieden zonder blind vertrouwen in de ontwikkelaars van een eigen root of trust-ontwerp. Het fundament is dus niet alleen solide, het kan ook worden geverifieerd.”

Rizzo voegde eraan toe dat OpenTitan kan worden beschouwd als "een radicaal transparant ontwerp vergeleken met de huidige stand van zaken."

Volgens de ontwikkelaars mag OpenTitan op geen enkele manier als een afgewerkt product worden beschouwd, omdat de ontwikkeling nog niet is voltooid. Ze hebben opzettelijk de specificaties en het ontwerp halverwege de ontwikkeling opengesteld, zodat iedereen deze kon beoordelen, input kon leveren en het systeem kon verbeteren voordat de productie begon.

Om OpenTitan-chips te gaan produceren, moet u zich aanmelden en gecertificeerd worden. Blijkbaar zijn er geen royalty's vereist.

Bron: www.habr.com

Voeg een reactie