OpenTitan chip terbuka menggantikan akar kepercayaan Intel dan ARM



Pada 5 November 2019, organisasi lowRISC nirlaba, dengan partisipasi Google dan sponsor lainnya, memperkenalkan proyek OpenTitan , yang disebutnya "proyek sumber terbuka pertama yang menciptakan arsitektur chip terbuka dan berkualitas tinggi dengan akar kepercayaan (RoT) di tingkat perangkat keras".

OpenTitan pada arsitektur RISC-V adalah chip tujuan khusus untuk instalasi di server di pusat data dan di peralatan lain di mana perlu untuk memastikan keaslian boot, melindungi firmware dari perubahan dan menghilangkan kemungkinan rootkit: ini adalah motherboard, kartu jaringan, router, perangkat IoT , gadget seluler, dll.

Tentu saja, modul-modul tersebut berada dalam prosesor modern. Misalnya, modul perangkat keras Intel Boot Guard adalah akar kepercayaan pada prosesor Intel. Itu memverifikasi keaslian UEFI BIOS melalui rantai kepercayaan sebelum mem-boot OS. Tetapi pertanyaannya adalah, seberapa besar kita dapat mempercayai akar kepercayaan yang dimiliki, mengingat bahwa kita tidak memiliki jaminan untuk tidak adanya bug dalam desain, tetapi tidak ada cara untuk memverifikasinya? Lihat artikel “Unduhan Tepercaya Schrödinger. Intel Boot Guard " dengan deskripsi" bagaimana selama bertahun-tahun bug kloning dalam produksi beberapa vendor memungkinkan penyerang potensial untuk menggunakan teknologi ini untuk membuat rootkit tersembunyi dalam sistem (bahkan programmer) yang tidak terhapus. "

Ancaman mengkompromikan peralatan dalam rantai pasokan secara mengejutkan nyata: tampaknya insinyur elektronik amatir mana pun dapat menyolder bug di motherboard server menggunakan peralatan yang harganya tidak lebih dari $ 200. Beberapa ahli menduga bahwa "organisasi dengan anggaran ratusan juta dolar dapat melakukan ini selama bertahun-tahun." Meskipun tidak ada bukti, secara teori itu mungkin.

"Jika Anda tidak dapat mempercayai pengunduh perangkat keras, permainan sudah berakhir," kata Gavin Ferris, anggota dewan direksi lowRISC. - Tidak masalah apa sistem operasi - jika Anda dikompromikan pada saat sistem operasi dimuat, maka sisanya adalah masalah teknologi. Anda sudah selesai. "

Masalah ini harus diselesaikan dengan yang pertama dari platform perangkat keras jenis terbuka OpenTitan ( repositori GitHub , dokumentasi , spesifikasi perangkat keras ). Menghindari solusi eksklusif akan mengubah "industri RoT yang canggung dan tidak sempurna," kata Google.

Google sendiri memulai pengembangan Titan, menemukan sistem operasi Minix yang terintegrasi ke dalam chip Intel Management Engine (ME). Sistem operasi yang rumit ini dengan cara yang tidak dapat diprediksi dan tidak terkendali memperluas permukaan serangan. Google mencoba menyingkirkan Intel Management Engine (ME) , tetapi gagal.

Apa akar dari kepercayaan?


Setiap tahap proses boot sistem memverifikasi keaslian tahap berikutnya, sehingga membentuk rantai kepercayaan .

Root of Trust (RoT) adalah otentikasi berbasis perangkat keras yang memastikan bahwa sumber instruksi yang dapat dieksekusi pertama dalam rantai kepercayaan tidak dapat diubah. RoT adalah perlindungan dasar terhadap rootkit. Ini adalah langkah kunci dalam proses boot, yang terlibat dalam startup sistem lebih lanjut - dari BIOS ke OS dan aplikasi. Ia harus memverifikasi keaslian setiap langkah unduhan berikutnya. Untuk ini, pada setiap tahap satu set kunci dengan tanda tangan digital digunakan. Salah satu standar perlindungan kunci berbasis perangkat keras yang paling populer adalah TPM (Trusted Platform Module).


Membangun akar kepercayaan. Di atas adalah unduhan lima tahap, yang membentuk rantai kepercayaan dan dimulai dengan bootloader yang terletak di memori yang tidak dapat diubah. Pada setiap tahap, kunci publik digunakan untuk mengotentikasi komponen yang dapat diunduh berikutnya. Ilustrasi dari Arsitektur IoT Perry Lee

RoT dapat diluncurkan dengan banyak cara:

  • memuat gambar dan kunci root dari firmware atau memori yang tidak dapat diubah;
  • menyimpan kunci root dalam memori terprogram satu kali menggunakan bit sekering;
  • memuat kode dari area memori yang dilindungi ke dalam penyimpanan yang dilindungi.

Dalam prosesor yang berbeda, akar kepercayaan diimplementasikan dalam berbagai cara. Intel dan ARM
Mendukung teknologi berikut:

  • ARM TrustZone . ARM menjual blok silikon eksklusif kepada pembuat chip, yang memberikan akar kepercayaan dan mekanisme keamanan lainnya. Jadi, mikroprosesor dipisahkan dari inti yang tidak aman; itu menjalankan OS Tepercaya, sistem operasi yang aman dengan antarmuka yang terdefinisi dengan baik untuk berinteraksi dengan komponen yang tidak aman. Sumber daya yang dilindungi berada dalam inti tepercaya dan harus seringan mungkin. Transisi antar komponen dari tipe yang berbeda dilakukan dengan menggunakan pengalihan konteks perangkat keras, yang menghilangkan kebutuhan akan perangkat lunak pemantauan yang aman.
  • Intel Boot Guard adalah mekanisme perangkat keras untuk mengautentikasi blok boot awal dengan alat kriptografi atau melalui proses pengukuran. Untuk memeriksa blok awal, pabrikan harus menghasilkan kunci 2048-bit, yang terdiri dari dua bagian: publik dan pribadi. Kunci publik dicetak di papan dengan "meledakkan" bit sekering pada tahap produksi. Bit-bit ini adalah satu kali dan tidak dapat diubah. Bagian pribadi dari kunci menghasilkan tanda tangan digital untuk otentikasi tahap unduhan selanjutnya.

Platform OpenTitan mengungkapkan bagian-bagian penting dari sistem firmware, seperti yang ditunjukkan pada diagram di bawah ini.



Platform OpenTitan


Pengembangan platform OpenTitan berada di bawah kendali organisasi nirlaba lowRISC. Tim teknik berbasis di Cambridge (Inggris), dan sponsor utamanya adalah Google. Mitra pendiri termasuk Sekolah Tinggi Teknik Swiss dari Zurich, G + D Mobile Security, Nuvoton Technology dan Western Digital.

Google menerbitkan pengumuman proyek di blog perusahaan Google Open Source. Perusahaan mengatakan OpenTitan berkomitmen untuk "menyediakan desain RoT berkualitas tinggi dan pedoman integrasi untuk digunakan di server pusat data, penyimpanan, periferal dan banyak lagi."

Akar kepercayaan adalah tautan pertama dalam rantai kepercayaan di tingkat terendah dalam modul komputasi tepercaya, yang selalu dipercayai oleh sistem.

RoT sangat penting untuk aplikasi, termasuk infrastruktur kunci publik (PKI). Ini adalah dasar dari sistem keamanan yang menjadi dasar sistem yang kompleks, seperti aplikasi IoT atau pusat data. Karena itu, jelas mengapa Google mendukung proyek ini. Dia sekarang memiliki 19 pusat data di lima benua. Pusat data, penyimpanan, dan aplikasi mission-critical mewakili permukaan serangan yang luas, dan untuk melindungi infrastruktur ini, Google awalnya mengembangkan akar kepercayaannya sendiri pada chip Titan.

Chip Titan yang dipatenkan untuk pusat data Google pertama kali diperkenalkan pada Maret 2017 di konferensi Google Cloud Next. “Komputer kami melakukan pemeriksaan kriptografis dari setiap paket perangkat lunak, dan kemudian memutuskan apakah akan memberikannya akses ke sumber daya jaringan. Titan terintegrasi ke dalam proses ini dan menawarkan lapisan perlindungan tambahan, ”kata perwakilan Google di presentasi itu.


Chip titan di server google

Arsitektur Titan dimiliki oleh Google, tetapi sekarang menjadi domain publik di bawah proyek sumber terbuka.

Tahap pertama dari proyek ini adalah pembuatan desain logis RoT di tingkat sirkuit mikro, termasuk mikroprosesor open-source ibR lowRISC , prosesor kriptografi, generator nomor acak perangkat keras, hierarki kunci dan memori untuk penyimpanan yang tidak mudah menguap dan tidak mudah menguap, mekanisme keamanan, perangkat input / output yang aman dan proses boot yang aman.

Google mengatakan OpenTitan didasarkan pada tiga prinsip utama:

  • setiap orang memiliki kesempatan untuk menguji platform dan berkontribusi;
  • peningkatan fleksibilitas karena pembukaan desain yang secara logis aman dan tidak terhalang oleh larangan kepemilikan pemasok;
  • kualitas terjamin tidak hanya oleh desain itu sendiri, tetapi juga dengan referensi firmware dan dokumentasi.

“Keripik saat ini dengan akar kepercayaan sangat eksklusif. Mereka mengklaim keselamatan, tetapi pada kenyataannya Anda mengambilnya dengan keyakinan dan Anda tidak dapat mengujinya sendiri, "kata Dominic Rizzo, pakar keamanan utama untuk proyek Google Titan. “Sekarang untuk pertama kalinya, kesempatan muncul untuk memberikan keamanan tanpa keyakinan buta kepada para pengembang desain hak milik dari akar kepercayaan. Jadi fondasinya tidak hanya solid, tapi juga bisa diperiksa. ”

Rizzo menambahkan bahwa OpenTitan dapat dianggap sebagai "desain yang sangat transparan, dibandingkan dengan keadaan saat ini."

Menurut pengembang, OpenTitan tidak boleh dianggap sebagai produk jadi, karena pengembangan belum selesai. Mereka dengan sengaja membuka spesifikasi dan desain di tengah pengembangan sehingga setiap orang dapat mengujinya, berkontribusi dan meningkatkan sistem sebelum memulai produksi.

Untuk mulai membuat chip OpenTitan, Anda perlu mendaftar dan mendapatkan sertifikasi. Rupanya, tidak diperlukan royalti.

Source: https://habr.com/ru/post/id474900/


All Articles