Proses ini akan mencegah booting perangkat lunak yang tidak bersertifikat. Ini mungkin memiliki manfaat walaupun saya tidak bisa melihatnya.
Anda memiliki mekanisme keamanan baru untuk mengontrol apa yang bisa dan apa yang tidak bisa boot dari perangkat keras Anda. Fitur keamanan. Anda tidak merasa membutuhkannya sampai terlambat. Tapi saya ngelantur.
Saya telah membaca utas di mailing list Linux di mana seorang karyawan Red Hat meminta Linus Torvalds untuk menarik set perubahan yang mengimplementasikan fasilitas untuk mengurai binari PE dan mengambil serangkaian tindakan kompleks untuk membiarkan boot kernel dalam mode Boot Aman (sejauh yang saya bisa mengerti ).
Driver, seperti firmware GPU Anda, harus masuk sejalan dengan Boot Aman, jika tidak maka bisa menjadi rootkit lain. Status quo adalah bahwa driver tersebut masuk dalam format PE. Kernel bisa boot tanpa itu, tetapi perangkat keras tidak akan berfungsi. Mem-parsing format PE di kernel hanyalah pilihan yang lebih sederhana secara teknis daripada meminta setiap vendor perangkat keras untuk menandatangani gumpalan mereka untuk setiap distro, atau menyiapkan kerangka userspace untuk melakukan ini. Linus memutuskan untuk tidak menghisap kontol Microsoft. Itu bukan argumen teknis.
Apa manfaat yang akan saya peroleh dengan UEFI dan Boot Aman, sebagai pengguna rumahan?
Fitur yang paling terlihat adalah UEFI fast boot. Saya mendapatkan beberapa desktop logo Windows 8 dan mereka boot dengan sangat cepat sehingga saya sering kehilangan pop up menu boot. Intel dan OEM sudah memiliki beberapa rekayasa dalam hal ini.
Jika Anda adalah tipe pengguna linux yang membenci kembung dan duplikasi kode dengan penuh gairah, Anda mungkin juga ingin mengelola multiboot pada tingkat firmware dan menyingkirkan bootloader sama sekali. UEFI menyediakan boot manager yang dapat Anda gunakan untuk boot langsung ke kernel atau memilih untuk mem-boot OS lain dengan menu firmware. Meskipun mungkin perlu bermain-main.
Juga, grafis yang lebih bagus saat boot dan dalam menu firmware. Keamanan yang lebih baik selama boot (Boot Aman). Fitur lain (IPv4 / 6 netboot, 2TB + perangkat boot, dll.) Sebagian besar ditujukan untuk pengguna perusahaan.
Bagaimanapun, seperti yang dikatakan Linus , BIOS / UEFI seharusnya "hanya memuat OS dan keluar dari sana", dan UEFI tentu saja muncul demikian untuk pengguna rumahan dengan booting cepat. Ini tentu melakukan lebih banyak hal daripada BIOS di bawah tenda, tetapi jika kita berbicara tentang pengguna rumahan, mereka tidak akan peduli tentang itu.
Bagaimana penandatanganan ini dilakukan?
Secara teoritis, biner dienkripsi dengan kunci pribadi untuk menghasilkan tanda tangan. Kemudian tanda tangan dapat diverifikasi dengan kunci publik untuk membuktikan biner ditandatangani oleh pemilik kunci pribadi, kemudian biner diverifikasi. Lihat lebih banyak di Wikipedia .
Secara teknis, hanya hash dari biner yang ditandatangani, dan tanda tangan tertanam dalam biner dengan format PE dan twiddling format tambahan.
Secara prosedural, kunci publik disimpan dalam firmware Anda oleh OEM Anda, dan itu dari Microsoft. Anda memiliki dua pilihan:
- Hasilkan pasangan kunci Anda sendiri dan kelola dengan aman, instal kunci publik Anda sendiri ke firmware , dan tandatangani biner dengan kunci pribadi Anda ( sbsign dari Ubuntu, atau pesign dari Fedora), atau
- Kirim biner Anda ke Microsoft dan biarkan mereka menandatanganinya.
Siapa yang bisa mendapatkan tanda tangan / sertifikat? Apakah sudah dibayar? Bisakah ini menjadi publik? (Itu harus tersedia dalam kode sumber Linux, bukan?)
Karena tanda tangan / sertifikat tertanam dalam binari, semua pengguna diharapkan untuk mendapatkannya. Siapa pun dapat mengatur CA mereka sendiri dan menghasilkan sertifikat untuk diri mereka sendiri. Tetapi jika Anda ingin Microsoft membuat sertifikat untuk Anda, Anda harus melalui Verisign untuk memverifikasi identitas Anda. Biaya prosesnya $ 99. Kunci publik ada di firmware. Kunci pribadi ada di brankas Microsoft. Sertifikat tersebut dalam biner yang ditandatangani. Tidak ada kode sumber yang terlibat.
Apakah Microsoft satu-satunya otoritas untuk memberikan tanda tangan? Bukankah seharusnya ada yayasan independen untuk menyediakannya?
Sisi teknis agak sepele, dibandingkan dengan proses mengelola PKI, memverifikasi identitas, berkoordinasi dengan setiap OEM dan vendor perangkat keras yang dikenal. Harganya mahal. Microsoft kebetulan memiliki infrastruktur (WHQL) dan pengalaman selama ini selama bertahun-tahun. Jadi mereka menawarkan untuk menandatangani binari. Siapa pun yayasan independen dapat melangkah untuk menawarkan hal yang sama, tetapi sejauh ini belum ada yang melakukannya.
Dari sesi UEFI di IDF 2013, saya melihat Canonical juga mulai memasukkan kunci mereka sendiri ke beberapa firmware tablet. Jadi Canonical dapat menandatangani biner mereka sendiri tanpa melalui Microsoft. Tetapi mereka tidak mungkin menandatangani biner untuk Anda karena mereka tidak tahu siapa Anda.
Bagaimana hal ini berdampak pada open source dan kernel gratis, pengembang hobi / akademis, dll.
Kernel bawaan Anda tidak akan bisa boot di bawah Boot Aman, karena tidak ditandatangani. Anda bisa mematikannya.
Model kepercayaan Boot Aman mengunci beberapa aspek kernel. Seperti Anda tidak dapat menghancurkan kernel Anda dengan menulis ke / dev / kmem bahkan jika Anda root sekarang. Anda tidak dapat hibernasi ke disk (sedang dikerjakan di bagian hulu) karena tidak ada cara untuk memastikan image kernel tidak diubah ke bootkit saat melanjutkan. Anda tidak dapat membuang inti ketika kernel panik, karena mekanisme kdump (kexec) dapat digunakan untuk mem-boot bootkit (juga sedang dikerjakan di bagian hulu). Ini kontroversial dan tidak diterima oleh Linus ke kernel mainline, tetapi beberapa distro (Fedora, RHEL, Ubuntu, openSUSE, SUSE) tetap dikirimkan dengan tambalan Boot Aman mereka sendiri.
Secara pribadi penandatanganan modul yang diperlukan untuk membangun kernel Boot Aman memerlukan biaya 10 menit sementara kompilasi yang sebenarnya hanya membutuhkan waktu 5 menit. Jika saya mematikan penandatanganan modul dan menghidupkan ccache, pembangunan kernel hanya membutuhkan satu menit.
UEFI adalah jalur boot yang sepenuhnya berbeda dari BIOS. Semua kode booting BIOS tidak akan dipanggil oleh firmware UEFI.
Kelompok pengguna Linux Spanyol bernama Hispalinux telah mengajukan keluhan terhadap Microsoft terkait hal ini dengan Komisi Europan.
Seperti yang dikatakan di atas, tidak ada seorang pun kecuali Microsoft yang telah melakukan pelayanan publik. Saat ini tidak ada bukti niat Microsoft untuk melakukan kejahatan dengan ini, tetapi juga tidak ada yang mencegah Microsoft menyalahgunakan monopolinya secara de facto dan melakukan perjalanan listrik. Jadi, sementara kelompok pengguna FSF dan Linux mungkin tidak terlihat cukup pragmatis dan belum benar-benar duduk untuk menyelesaikan masalah secara konstruktif, sangat penting orang menekan Microsoft dan memperingatkannya tentang dampaknya.
Haruskah saya khawatir? Saya menolak untuk tidak menggunakan perangkat lunak berpemilik atau perangkat lunak yang ditandatangani oleh perusahaan tepercaya. Saya telah melakukannya sampai sekarang, dan saya ingin melanjutkannya.
Alasan untuk menggunakan Boot Aman:
- Ini menghilangkan vektor serangan keamanan nyata.
- Ini adalah mekanisme teknis untuk memberi pengguna lebih banyak kebebasan untuk mengontrol perangkat keras mereka.
- Pengguna Linux perlu memahami mekanisme Boot Aman dan bertindak proaktif sebelum Microsoft bertindak terlalu jauh terhadap monopoli kebijakan Boot Aman .
UEFI
itu sendiri tidak banyak masalah, tetapi boot aman mungkin.