Чипот со отворен код OpenTitan ќе ги замени сопствените корени на доверба на Intel и ARM

Чипот со отворен код OpenTitan ќе ги замени сопствените корени на доверба на Intel и ARM

Непрофитна организација низок RISC со Google и други спонзори, 5 ноември 2019 година презентирани Проектот OpenTitan, кој го нарекува „првиот проект со отворен код за создавање отворена, висококвалитетна архитектура на чипови со корен на доверба (RoT) на хардверско ниво“.

OpenTitan базиран на RISC-V архитектура е чип со посебна намена за инсталација на сервери во центри за податоци и во која било друга опрема каде што е неопходно да се обезбеди автентичност на подигање, да се заштити фирмверот од промени и да се елиминира можноста за rootkits: тоа се матични плочи, мрежни картички, рутери, IoT уреди, мобилни гаџети итн.

Се разбира, слични модули постојат во современите процесори. На пример, модулот Intel Hardware Boot Guard е коренот на довербата во процесорите на Intel. Ја потврдува автентичноста на UEFI BIOS-от преку синџир на доверба пред да го вчита оперативниот систем. Но, прашањето е колку можеме да им веруваме на сопственичките корени на доверба, со оглед на тоа што немаме гаранција дека нема да има грешки во дизајнот и нема начин да го провериме? Видете ја статијата „Доверливо преземање на Шредингер. Intel Boot Guard" со опис на „како бубачка која е клонирана со години во производството на неколку продавачи му дозволува на потенцијалниот напаѓач да ја користи оваа технологија за да создаде скриен rootkit во системот што не може да се отстрани (дури и со програмер).

Заканата од компромисна опрема во синџирот на снабдување е изненадувачки реална: очигледно, секој аматерски инженер по електроника може да залемени грешка во матичната плоча на сервероткористење на опрема што не чини повеќе од 200 долари. Некои експерти се сомневаат дека „организации со буџети од стотици милиони долари би можеле да го прават тоа многу години“. Иако нема докази, тоа е теоретски можно.

„Ако не можете да му верувате на хардверскиот подигнувач, играта е завршена“, вели Гевин Ферис, член на одборот на директори на lowRISC. „Не е важно што прави оперативниот систем – ако до моментот кога ќе се подигне оперативниот систем сте компромитирани, тогаш останатото е прашање на техника“. Веќе си готов“.

Овој проблем треба да го реши првата од ваков вид отворена хардверска платформа OpenTitan (Складиште на GitHub, документацијата, хардверски спецификации). Оддалечувањето од сопственичките решенија ќе помогне да се промени „бавната и неисправна RoT индустрија“, вели Google.

Самиот Google започна да го развива Titan откако го откри оперативниот систем Minix вграден во чиповите на Intel Management Engine (ME). Овој комплексен оперативен систем ја прошири површината на нападот на непредвидливи и неконтролирани начини. Google се обиде да се ослободи од Intel Management Engine (ME), но неуспешно.

Кој е коренот на довербата?

Секоја фаза од процесот на подигање на системот ја проверува автентичноста на следната фаза, со што се генерира синџир на доверба.

Root of Trust (RoT) е автентикација базирана на хардвер која осигурува дека изворот на првата извршна инструкција во синџирот на доверба не може да се промени. RoT е основната заштита од rootkits. Ова е клучна фаза од процесот на подигање, кој е вклучен во последователното стартување на системот - од BIOS-от до ОС и апликациите. Мора да ја потврди автентичноста на секој следен чекор за преземање. За да го направите ова, во секоја фаза се користи збир на дигитално потпишани клучеви. Еден од најпопуларните стандарди за заштита на хардверскиот клуч е TPM (Trusted Platform Module).

Чипот со отворен код OpenTitan ќе ги замени сопствените корени на доверба на Intel и ARM
Воспоставување корен на доверба. Погоре е процес на подигање во пет чекори што создава синџир на доверба, почнувајќи од подигачот во непроменлива меморија. Секој чекор користи јавен клуч за да го потврди идентитетот на следната компонента што треба да се вчита. Илустрација од книгата на Пери Ли „Архитектура на Интернет на нештата“

RoT може да се стартува на различни начини:

  • вчитување на сликата и коренскиот клуч од фирмверот или непроменливата меморија;
  • складирање на root клучот во еднократна програмабилна меморија со помош на битови за осигурувачи;
  • Се вчитува код од заштитена мемориска област во заштитена меморија.

Различни процесори различно го имплементираат коренот на довербата. Интел и АРМ
ги поддржува следните технологии:

  • ARM TrustZone. ARM продава комерцијален силиконски блок на производители на чипови што обезбедува корен на доверба и други безбедносни механизми. Ова го одвојува микропроцесорот од несигурното јадро; работи Trusted OS, безбеден оперативен систем со добро дефиниран интерфејс за интеракција со несигурни компоненти. Заштитените ресурси се наоѓаат во доверливото јадро и треба да бидат колку што е можно полесни. Префрлувањето помеѓу компоненти од различни типови се врши со користење на хардверско префрлување контекст, со што се елиминира потребата од безбеден софтвер за следење.
  • Intel Boot Guard е хардверски механизам за проверка на автентичноста на почетниот блок за подигање со криптографски средства или преку процес на мерење. За да го потврди почетниот блок, производителот мора да генерира клуч од 2048 бити, кој се состои од два дела: јавен и приватен. Јавниот клуч се печати на таблата со „детонирање“ на осигурувачите за време на производството. Овие битови се еднократна употреба и не можат да се менуваат. Приватниот дел од клучот генерира дигитален потпис за последователна автентикација на фазата на преземање.

Платформата OpenTitan ги изложува клучните делови од таков хардвер/софтверски систем, како што е прикажано на дијаграмот подолу.

Чипот со отворен код OpenTitan ќе ги замени сопствените корени на доверба на Intel и ARM

OpenTitan платформа

Развојот на платформата OpenTitan е управуван од непрофитната организација lowRISC. Инженерскиот тим е со седиште во Кембриџ (Велика Британија), а главен спонзор е Google. Основачки партнери се ETH Zurich, G+D Mobile Security, Nuvoton Technology и Western Digital.

Google објави оглас проект на корпоративниот блог на Google со отворен код. Компанијата рече дека OpenTitan е посветен на „обезбедување висококвалитетни насоки за дизајнот и интеграцијата на RoT за употреба во серверите на центрите за податоци, складирањето, рабните уреди и многу повеќе“.

Коренот на довербата е првата алка во синџирот на доверба на најниско ниво во доверлив компјутерски модул, во кој системот секогаш има целосна доверба.

RoT е од клучно значење за апликациите, вклучувајќи инфраструктури со јавни клучеви (PKI). Тоа е основата на безбедносниот систем на кој се заснова комплексен систем како што е IoT апликација или центар за податоци. Значи, јасно е зошто Google го поддржува овој проект. Сега има 19 центри за податоци на пет континенти. Центрите за податоци, складирањето и апликациите кои се критични за мисијата претставуваат огромна површина за напад и за да ја заштити оваа инфраструктура, Google првично разви сопствен корен на доверба во чипот Титан.

Комерцијален Titan чип за центрите за податоци на Google првпат беше воведен во март 2017 година на конференцијата Google Cloud Next. „Нашите компјутери вршат криптографски проверки на секој софтверски пакет и потоа одлучуваат дали да му дадат пристап до мрежните ресурси. Титан се интегрира во овој процес и нуди дополнителни слоеви на заштита“, изјавија претставниците на Google на таа презентација.

Чипот со отворен код OpenTitan ќе ги замени сопствените корени на доверба на Intel и ARM
Титан чип во серверот на Google

Архитектурата Титан претходно беше во сопственост на Google, но сега станува јавен домен како проект со отворен код.

Првата фаза од проектот е создавање на логичен RoT дизајн на ниво на чип, вклучувајќи микропроцесор со отворен код козорец со низокРИСК, криптографски процесори, хардверски генератор на случаен број, хиерархии на клучеви и меморија за неиспарливо и неиспарливо складирање, безбедносни механизми, I/O периферни уреди и безбедни процеси за подигање.

Google вели дека OpenTitan се заснова на три клучни принципи:

  • секој има можност да ја провери платформата и да придонесе;
  • зголемена флексибилност со отворање на логички безбеден дизајн кој не е блокиран од комерцијални ограничувања на продавачот;
  • квалитет обезбеден не само од самиот дизајн, туку и од референтниот фирмвер и документација.

„Тековните чипови со корени на доверба се многу сопственички. Тие тврдат дека се безбедни, но реалноста е дека вие тоа го земате здраво за готово и не можете сами да го потврдите“, вели Доминик Ризо, водечки научник за безбедност за проектот Google Titan. „Сега, за прв пат, можно е да се обезбеди безбедност без слепа вера во развивачите на комерцијален корен на дизајнот на доверба. Значи, основата не само што е цврста, туку може да се провери“.

Ризо додаде дека OpenTitan може да се смета за „радикално транспарентен дизајн во споредба со моменталната состојба на нештата“.

Според програмерите, OpenTitan во никој случај не треба да се смета за готов производ, бидејќи развојот сè уште не е завршен. Тие намерно ги отворија спецификациите и дизајнираа во средината на развојот, така што секој може да го прегледа, да обезбеди информации и да го подобри системот пред да започне производството.

За да започнете со производство на OpenTitan чипови, треба да аплицирате и да добиете сертификација. Очигледно, не се потребни хонорари.

Извор: www.habr.com

Додадете коментар