Cipul open source OpenTitan va înlocui rădăcinile proprietare ale încrederii Intel și ARM

Cipul open source OpenTitan va înlocui rădăcinile proprietare ale încrederii Intel și ARM

Organizație non profit lowRISC cu Google și alți sponsori 5 noiembrie 2019 prezentat proiect OpenTitan, который называет «первым опенсорсным проектом по созданию открытой, качественной архитектуры микросхем с корнем доверия (RoT) на аппаратном уровне».

OpenTitan bazat pe arhitectura RISC-V este un cip special pentru instalarea pe servere din centrele de date și în orice alt echipament unde este necesar să se asigure autenticitatea boot-ului, să protejeze firmware-ul de modificări și să elimine posibilitatea rootkit-urilor: acestea sunt plăci de bază, plăci de rețea, routere, dispozitive IoT, gadgeturi mobile etc.

Desigur, module similare există în procesoarele moderne. De exemplu, modulul Intel Hardware Boot Guard este rădăcina încrederii în procesoarele Intel. Verifică autenticitatea UEFI BIOS printr-un lanț de încredere înainte de a încărca sistemul de operare. Dar întrebarea este, cât de mult putem avea încredere în rădăcinile proprietare ale încrederii, având în vedere că nu avem nicio garanție că nu vor exista erori în design și nu există nicio modalitate de a o verifica? Vezi articolul „Descărcare de încredere a lui Schrödinger. Intel Boot Guard" cu o descriere a „cum un bug care a fost clonat de ani de zile în producția mai multor vânzători permite unui potențial atacator să folosească această tehnologie pentru a crea un rootkit ascuns în sistem care nu poate fi eliminat (chiar cu un programator).

Amenințarea compromiterii echipamentelor în lanțul de aprovizionare este surprinzător de reală: aparent, orice inginer electronic amator может впаять жучок в материнскую плату сервераfolosind echipamente care nu costă mai mult de 200 USD. Unii experți bănuiesc că „organizațiile cu bugete de sute de milioane de dolari ar putea face asta de mulți ani”. Deși nu există dovezi, teoretic este posibil.

„Dacă nu poți avea încredere în bootloader-ul hardware, jocul s-a terminat.” El vorbește Gavin Ferris, membru al consiliului de administrație al lowRISC. - Nu contează ce face sistemul de operare - dacă în momentul în care sistemul de operare se încarcă ești compromis, atunci restul este o chestiune de tehnică. Ai terminat deja.”

Această problemă ar trebui rezolvată de prima platformă hardware deschisă de acest fel OpenTitan (Depozitul GitHub, documentație, specificații hardware). Renunțarea la soluțiile proprietare va ajuta la schimbarea „industriei RoT lene și viciate”, spune Google.

Google însuși a început să dezvolte Titan după ce a descoperit sistemul de operare Minix încorporat în cipurile Intel Management Engine (ME). Acest sistem de operare complex a extins suprafața de atac în moduri imprevizibile și incontrolabile. Google am încercat să scap de Intel Management Engine (ME), dar fără succes.

Care este rădăcina încrederii?

Fiecare etapă a procesului de pornire a sistemului verifică autenticitatea etapei următoare, generând astfel lanț de încredere.

Корень доверия (Root of Trust, RoT) — это аппаратная проверка подлинности, которая гарантирует, что источник первой исполняемой инструкции в цепочке доверия не подлежит изменению. RoT является базовой защитой от руткитов. Это ключевой этап процесса загрузки, который участвует в дальнейшем запуске системы — от BIOS до ОС и приложений. Он должен проверять подлинность каждого последующего этапа загрузки. Для этого на каждом этапе используется набор ключей с цифровой подписью. Одним из самых популярных стандартов аппаратной защиты ключей является TPM (Trusted Platform Module, доверенный платформенный модуль).

Cipul open source OpenTitan va înlocui rădăcinile proprietare ale încrederii Intel și ARM
Stabilirea unei rădăcini de încredere. Mai sus este un proces de pornire în cinci pași care creează un lanț de încredere, începând cu bootloader-ul din memoria imuabilă. Fiecare pas folosește o cheie publică pentru a verifica identitatea următoarei componente care urmează să fie încărcată. Ilustrație din cartea lui Perry Lee «Архитектура интернета вещей»

RoT poate fi lansat în diferite moduri:

  • încărcarea imaginii și a cheii rădăcină din firmware sau din memoria imuabilă;
  • stocarea cheii rădăcină într-o memorie programabilă unică folosind biți de siguranță;
  • загрузка кода из защищённой области памяти в защищённое хранилище.

Diferite procesoare implementează rădăcina încrederii în mod diferit. Intel și ARM
suportă următoarele tehnologii:

  • ARM TrustZone. ARM vinde un bloc de siliciu proprietar producătorilor de cipuri care oferă o rădăcină a încrederii și alte mecanisme de securitate. Acest lucru separă microprocesorul de nucleul nesigur; rulează Trusted OS, un sistem de operare securizat cu o interfață bine definită pentru interacțiunea cu componente nesigure. Resursele protejate se află în nucleul de încredere și ar trebui să fie cât mai ușoare posibil. Comutarea între componente de diferite tipuri se face folosind comutarea contextului hardware, eliminând necesitatea unui software de monitorizare securizat.
  • Intel Boot Guard este un mecanism hardware pentru verificarea autenticității blocului inițial de pornire prin mijloace criptografice sau printr-un proces de măsurare. Pentru a verifica blocul inițial, producătorul trebuie să genereze o cheie de 2048 de biți, care constă din două părți: publică și privată. Cheia publică este imprimată pe placă prin „detonarea” biților de siguranță în timpul producției. Acești biți sunt folosiți o singură dată și nu pot fi modificați. Partea privată a cheii generează o semnătură digitală pentru autentificarea ulterioară a etapei de descărcare.

Platforma OpenTitan expune părți cheie ale unui astfel de sistem hardware/software, așa cum se arată în diagrama de mai jos.

Cipul open source OpenTitan va înlocui rădăcinile proprietare ale încrederii Intel și ARM

Platforma OpenTitan

Dezvoltarea platformei OpenTitan este gestionată de organizația non-profit lowRISC. Echipa de ingineri are sediul în Cambridge (Marea Britanie), iar sponsorul principal este Google. Printre partenerii fondatori se numără ETH Zurich, G+D Mobile Security, Nuvoton Technology și Western Digital.

Google a publicat un anunț proiect pe blogul corporativ Google Open Source. Compania a spus că OpenTitan se angajează să „furnizeze îndrumări de înaltă calitate privind proiectarea și integrarea RoT pentru utilizare în serverele centrelor de date, stocarea, dispozitivele edge și multe altele”.

Rădăcina încrederii este prima verigă a lanțului de încredere la cel mai de jos nivel într-un modul de calcul de încredere, care este întotdeauna deplin de încredere de către sistem.

RoT este esențial pentru aplicații, inclusiv infrastructuri cu chei publice (PKI). Este fundamentul sistemului de securitate pe care se bazează un sistem complex precum o aplicație IoT sau un centru de date. Deci, este clar de ce Google sprijină acest proiect. Acum are 19 centre de date pe cinci continente. Centrele de date, stocarea și aplicațiile critice prezintă o suprafață vastă de atac, iar pentru a proteja această infrastructură, Google și-a dezvoltat inițial propria rădăcină de încredere pe cipul Titan.

Cip proprietar Titan для дата-центров Google был впервые представлен în martie 2017 la conferința Google Cloud Next. „Computerele noastre efectuează verificări criptografice pe fiecare pachet de software și apoi decid dacă îi acordă acces la resursele de rețea. Titan se integrează în acest proces și oferă straturi suplimentare de protecție”, au spus reprezentanții Google la acea prezentare.

Cipul open source OpenTitan va înlocui rădăcinile proprietare ale încrederii Intel și ARM
Cipul Titan pe serverul Google

Arhitectura Titan a fost deținută anterior de Google, dar acum este făcută în domeniul public ca proiect open source.

Prima etapă a proiectului este crearea unui design RoT logic la nivel de cip, inclusiv un microprocesor open source lowRISC ibex, procesoare criptografice, generator hardware de numere aleatorii, ierarhii de chei și memorie pentru stocare nevolatilă și nevolatilă, mecanisme de securitate, periferice I/O și procese de pornire securizate.

Google spune că OpenTitan se bazează pe trei principii cheie:

  • toată lumea are ocazia să verifice platforma și să contribuie;
  • flexibilitate crescută prin deschiderea unui design logic securizat, care nu este blocat de restricțiile furnizorilor de proprietate;
  • качество, обеспеченное не только самим дизайном, но также референсной прошивкой и документацией.

«Нынешние микросхемы с корнями доверия очень проприетарные. Они заявляют о безопасности, но в реальности вы принимаете это на веру и сами не можете их проверить, — говорит Доминик Риццо (Dominic Rizzo), ведущий специалист по безопасности проекта Google Titan. — Теперь впервые появляется возможность обеспечить безопасность без слепой веры разработчикам проприетарного дизайна корней доверия. Так что фундамент не просто прочный, его можно проверить».

Rizzo a adăugat că OpenTitan poate fi considerat „un design radical transparent în comparație cu starea actuală a lucrurilor”.

Potrivit dezvoltatorilor, OpenTitan nu ar trebui să fie în niciun caz considerat un produs finit, deoarece dezvoltarea nu este încă terminată. Au deschis în mod deliberat specificațiile și proiectarea la mijlocul dezvoltării, astfel încât toată lumea să le poată revizui, să ofere informații și să îmbunătățească sistemul înainte de a începe producția.

Чтобы начать производство чипов OpenTitan, нужно подать заявку и пройти сертификацию. Судя по всему, никаких лицензионных отчислений не требуется.

Sursa: www.habr.com

Adauga un comentariu