Апенсорсны чып OpenTitan заменіць прапрыетарныя карані даверу Intel і ARM

Апенсорсны чып OpenTitan заменіць прапрыетарныя карані даверу Intel і ARM

некамерцыйная арганізацыя lowRISC пры ўдзеле Google і іншых спонсараў 5 лістапада 2019 года прадставіла праект OpenTitan, Які называе «першым апенсорсным праектам па стварэнні адкрытай, якаснай архітэктуры мікрасхем з коранем даверу (RoT) на апаратным узроўні».

OpenTitan на архітэктуры RISC-V - мікрасхема спецыяльнага прызначэння для ўстаноўкі на серверах у дата-цэнтрах і ў любым іншым абсталяванні, дзе трэба забяспечыць аўтэнтычнасць загрузкі, абараніць прашыўку ад змен і выключыць верагоднасць руткітаў: гэта матчыны платы, сеткавыя карты, маршрутызатары, прылады IoT , мабільныя гаджэты і інш.

Вядома, падобныя модулі ёсць у сучасных працэсарах. Напрыклад, апаратны модуль Intel Boot Guard з'яўляецца коранем даверу ў працэсарах Intel. Ён па ланцужку даверу верыфікуе сапраўднасць UEFI BIOS перад загрузкай АС. Але пытанне, наколькі мы можам давяраць прапрыетарным караням даверу з улікам таго, што ў нас няма гарантый адсутнасці багаў у дызайне, а праверыць яго няма магчымасці? Глядзіце артыкул «Давераная загрузка Шрэдынгера. Intel Boot Guard» з апісаннем таго, «як гадамі кланаваная памылка на вытворчасці некалькіх вендараў дазваляе патэнцыйнаму зламысніку выкарыстаць гэтую тэхналогію для стварэння ў сістэме невыдаляльнага (нават праграматарам) утоенага руткита».

Пагроза кампраметацыі абсталявання ў ланцужку паставак на здзіўленне рэальная: судзячы па ўсім, любы электроншчык-аматар можа ўлітаваць жучок у матчыну плату сервера, выкарыстоўваючы абсталяванне коштам не больш за 200 долараў. Некаторыя эксперты падазраюць, што "арганізацыі з бюджэтам у сотні мільёнаў долараў могуць займацца гэтым ужо шмат гадоў". Хаця ніякіх доказаў няма, але тэарэтычна такое магчыма.

«Калі вы не можаце давяраць апаратнаму загрузніку, гульня скончана, - кажа Гэвін Фэрыс (Gavin Ferris), член савета дырэктараў lowRISC. - Усё роўна, што робіць аперацыйная сістэма - калі да моманту загрузкі аперацыйнай сістэмы вы скампраметаваныя, то астатняя справа тэхнікі. З вамі ўжо скончана».

Гэтую праблему і павінна вырашыць першая ў сваім родзе адчыненая апаратная платформа OpenTitan (рэпазітар GitHub, дакументацыя, апаратныя спецыфікацыі). Сыход ад прапрыетарных рашэнняў дазволіць змяніць "непаваротлівую і недасканалую індустрыю RoT", лічыць Google.

Сама кампанія Google прыступіла да распрацоўкі Titan, выявіўшы аперацыйную сістэму Minix, убудаваную ў чыпы Intel Management Engine (ME). Гэтая складаная АС непрадказальнай і некіравальнай выявай пашырала паверхню нападу. Google паспрабавала пазбавіцца ад Intel Management Engine (ME), Але няўдала.

Што такое корань даверу?

Кожны этап працэсу загрузкі сістэмы правярае сапраўднасць наступнага этапу, фармуючы такім чынам ланцужок даверу.

Корань даверу (Root of Trust, RoT) – гэта апаратная праверка сапраўднасці, якая гарантуе, што крыніца першай выкананай інструкцыі ў ланцужку даверу не падлягае змене. RoT з'яўляецца базавай абаронай ад руткітаў. Гэта ключавы этап працэсу загрузкі, які ўдзельнічае ў далейшым запуску сістэмы - ад BIOS да АС і прыкладанняў. Ён павінен правяраць сапраўднасць кожнага наступнага этапу загрузкі. Для гэтага на кожным этапе выкарыстоўваецца набор ключоў з лічбавым подпісам. Адным з самых папулярных стандартаў апаратнай абароны ключоў з'яўляецца TPM (Trusted Platform Module, давераны платформавы модуль).

Апенсорсны чып OpenTitan заменіць прапрыетарныя карані даверу Intel і ARM
Устанаўленне кораня даверу. Вышэй прадстаўлена пяціэтапная загрузка, якая фармуе ланцужок даверу і пачынаецца з загрузніка, які знаходзіцца ў нязменнай памяці. На кожным этапе выкарыстоўваецца адчынены ключ, з дапамогай якога засведчваецца сапраўднасць наступнага загружанага кампанента. Ілюстрацыя з кнігі Пэры Лі «Архітэктура інтэрнэту рэчаў»

RoT можа запускацца рознымі спосабамі:

  • загрузка выявы і каранёвага ключа з прашыўкі або нязменнай памяці;
  • захоўванне каранёвага ключа ў аднаразовай праграмуемай памяці з дапамогай ф'юз-бітаў;
  • загрузка кода з абароненай вобласці памяці ў абароненае сховішча.

У розных працэсарах корань даверу рэалізаваны па-рознаму. Intel і ARM
падтрымліваюць наступныя тэхналогіі:

  • ARM TrustZone. ARM прадае вытворцам чыпаў прапрыетарны крамянёвы блок, які дае корань даверу і іншыя механізмы бяспекі. Такім чынам мікрапрацэсар адлучаецца ад небяспечнага ядра; ён выконвае Trusted OS – абароненую аперацыйную сістэму з выразна вызначаным інтэрфейсам узаемадзеяння з небяспечнымі кампанентамі. Абароненыя рэсурсы знаходзяцца ў давераным ядры і павінны быць як мага больш легкаважнымі. Пераход паміж кампанентамі рознага тыпу робіцца з дапамогай апаратнага пераключэння кантэксту, дзякуючы чаму адпадае неабходнасць у бяспечным ПЗ для маніторынгу.
  • Intel Boot Guard - Гэта апаратны механізм для праверкі сапраўднасці пачатковага блока загрузкі крыптаграфічнымі сродкамі або з дапамогай працэсу вымярэння. Для праверкі пачатковага блока вытворца павінен згенераваць 2048-бітны ключ, які складаецца з двух частак: адчыненай і зачыненай. Адкрыты ключ друкуецца на плаце шляхам "дэтанацыі" ф'юз-бітаў на этапе вытворчасці. Гэтыя біты з'яўляюцца аднаразовымі і не падлягаюць змене. Зачыненая частка ключа генеруе лічбавы подпіс для наступнага пасведчання сапраўднасці этапа загрузкі.

Платформа OpenTitan адчыняе ключавыя часткі такой апаратна-праграмнай сістэмы, як паказана на дыяграме ніжэй.

Апенсорсны чып OpenTitan заменіць прапрыетарныя карані даверу Intel і ARM

Платформа OpenTitan

Распрацоўка платформы OpenTitan ідзе пад кіраваннем некамерцыйнай арганізацыі lowRISC. Калектыў інжынераў грунтуецца ў Кембрыджы (Вялікабрытанія), а галоўным фундатарам з'яўляецца Google. Партнёры-заснавальнікі ўключаюць Швейцарскую вышэйшую тэхнічную школу Цюрыха, G + D Mobile Security, Nuvoton Technology і Western Digital.

Google апублікавала анонс праекту ў карпаратыўным блогу Google Open Source. Кампанія заявіла, што OpenTitan імкнецца "даць высакаякасныя рэкамендацыі па дызайне і інтэграцыі RoT для выкарыстання ў серверах цэнтраў апрацоўкі дадзеных, сховішчах, перыферыйных прыладах і многім іншым".

Корань даверу - першае звяно ў ланцужку даверу на самым нізкім узроўні ў даверанай вылічальным модулі, якому заўсёды цалкам давярае сістэма.

RoT крытычна важны для прыкладанняў, у тым ліку інфраструктуры адкрытых ключоў (PKI). Гэта падмурак сістэмы бяспекі, на якой заснавана складаная сістэма, такая як дадатак IoT або цэнтр апрацоўкі дадзеных. Таму зразумела, чаму Google падтрымлівае гэты праект. Цяпер у яе 19 цэнтраў апрацоўкі дадзеных на пяці кантынентах. Дата-цэнтры, сховішчы і крытычна важныя прыкладанні ўяўляюць шырокую паверхню нападу, і для абароны гэтай інфраструктуры Google першапачаткова распрацавала ўласны корань даверу на мікрасхеме Titan.

Прапрыетарны чып Titan для дата-цэнтраў Google быў упершыню прадстаўлены у сакавіку 2017 года на канферэнцыі Google Cloud Next. «Нашы кампутары праводзяць крыптаграфічную праверку кожнага пакета з ПЗ, а затым вырашаюць, ці варта выдаваць яму доступ да рэсурсаў сеткі. Titan інтэгруецца ў гэты працэс і прапануе дадатковыя пласты абароны», - распавядалі прадстаўнікі Google на той прэзентацыі.

Апенсорсны чып OpenTitan заменіць прапрыетарныя карані даверу Intel і ARM
Мікрасхема Titan у серверы Google

Архітэктура Titan была ўласнасцю Google, але зараз становіцца грамадскім здабыткам у рамках апенсорснага праекта.

Першы этап праекта – стварэнне лагічнага дызайну RoT на ўзроўні мікрасхемы, уключаючы апенсорсны мікрапрацэсар lowRISC ibex, крыптаграфічныя працэсары, апаратны генератар выпадковых лікаў, іерархіі ключоў і памяці для энерганезалежнага і энерганезалежнага захоўвання, ахоўныя механізмы, перыферыйныя прылады ўводу-вываду і бяспечныя працэсы загрузкі.

Google кажа, што OpenTitan заснаваны на трох ключавых прынцыпах:

  • у кожнага ёсць магчымасць праверыць платформу і ўнесці свой уклад;
  • падвышаная гнуткасць за кошт адкрыцця лагічна бяспечнага дызайну, які не блакуецца прапрыетарнымі забаронамі пастаўшчыка;
  • якасць, забяспечанае не толькі самім дызайнам, але таксама рэферэнснай прашыўкай і дакументацыяй.

«Цяперашнія мікрасхемы з каранямі даверу вельмі прапрыетарныя. Яны заяўляюць аб бяспецы, але ў рэальнасці вы прымаеце гэта на веру і самі не можаце іх праверыць, – кажа Дамінік Рыца (Dominic Rizzo), вядучы спецыяліст па бяспецы праекта Google Titan. - Цяпер упершыню з'яўляецца магчымасць забяспечыць бяспеку без сляпой веры распрацоўшчыкам прапрыетарнага дызайну каранёў даверу. Так што падмурак не проста трывалы, яго можна праверыць».

Рыца дадаў, што OpenTitan можна лічыць "радыкальна празрыстым дызайнам, у параўнанні з цяперашнім становішчам рэчаў".

Па словах распрацоўшчыкаў, OpenTitan ні ў якім разе не варта разглядаць як гатовы прадукт, таму што распрацоўка яшчэ не скончана. Яны спецыяльна адкрылі спецыфікацыі і дызайн у сярэдзіне распрацоўкі, каб усе маглі праверыць яго, унесці свой уклад і ўдасканаліць сістэму перад пачаткам вытворчасці.

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

Крыніца: habr.com

Дадаць каментар