To su prijevodi dvaju postova koje je James Bottomley objavio na svom blogu. Prvi post je objavljen 1. februara i zove se "LCA2013 i restrukturiranje sigurnog pokretanja"
Bio sam tih neko vrijeme, pa je vrijeme da dam novosti o tome šta se dešava sa sigurnim pokretačem Linux fondacije (posebno otkako je predstavljen na LCA2013). (Link do slajdova)
Suština problema je u tome što je GregKH (Greg Kroah-Hartman, programer kernela) početkom decembra otkrio da predloženi Pre-BootLoader neće raditi u svom trenutnom obliku sa Gummibootom. To je bilo pomalo obeshrabrujuće jer je značilo da nije ispunio misiju Linux fondacije da aktivira sve pokretače. U istraživanju je razlog bio jednostavan: Gummiboot je kreiran kako bi pokazao da možete napraviti jednostavan, mali bootloader koji koristi sve usluge dostupne na UEFI platformi umjesto da bude masivni učitavač linkova kao što je GRUB. Nažalost, to znači da pokreće kernele pomoću funkcije BootServices->LoadImage(), što znači da kernel koji se pokreće mora proći kroz sigurnosne provjere pokretanja na UEFI platformi. Prvobitno Pre-BootLoader, kao Šim (bootloader Matthewa Garretta), napisan je da koristi PE/Coff link učitavanje da bi se spriječile sigurnosne provjere pokretanja. Nažalost, to znači da nešto što pokreće Pre-BootLoader mora također koristiti učitavanje linka da bi poništilo sigurne provjere pokretanja svega što želi učitati, pa Gummiboot, koji namjerno nije učitavač linkova, neće raditi prema ovoj shemi.
Zato sam morao da restrukturiram i prepišem: problem je sada krenuo od "kako kreirati program za učitavanje linkova potpisan od strane Microsofta koji poštuje njihove smernice" do "kako aktivirati svu decu pokretača za pokretanje da koriste funkciju BootServices->LoadImage(). "na način koji poštuje njegovu politiku." Srećom, postoji način da presretnete infrastrukturu za potpisivanje UEFI platforme instaliranjem vlastitog arhitektonskog sigurnosnog protokola. Nažalost, specifikacija inicijalizacije platforme zapravo nije dio UEFI specifikacije, ali je na sreću implementirana u svakom Windows 8 sistemu koji možete pronaći. Nova arhitektura presreće taj protokol i dodaje vlastitu sigurnosnu provjeru. Međutim, postoji drugi problem: dok se nalazimo u povratnom pozivu arhitektonskog sigurnosnog protokola, nemamo nužno ekran UEFI sistema, što čini potpuno nemogućim izvođenje korisničkog testa za autorizaciju izvršavanja binarne datoteke. Srećom, postoji neinteraktivan način da se to uradi, a to je mehanizam SUSE-ovog Machine Owner Key (MOK). Stoga je Linux Foundation's Pre-BootLoader sada evoluirao da koristi standardne MOK varijable za pohranjivanje hashova ovlaštenih binarnih datoteka.
Rezultat svega ovoga je da sada možete koristiti Pre-BootLoader sa Gummibootom (baš kao što je urađeno u demo-u na LCA2013). Da biste se pokrenuli, morate dodati 2 heša: jedan za sam Gummiboot i drugi za kernel koji želite da pokrenete, ali to je zapravo dobra stvar jer sada imate jednu sigurnosnu politiku koja kontrolira cijeli niz pokretanja. Sam Gummiboot je također zakrpljen da prepozna grešku zbog sigurnog pokretanja i prikaže poruku koja vam govori koji hash da registrujete.
Napraviću poseban post koji objašnjava kako nova arhitektura funkcioniše, ali sam mislio da bi bilo bolje da objasnim šta se desilo u poslednjih mesec dana.
I ovaj drugi post je napravljen jučer i zove se “Linux Foundation Secure Boot System pušten”
Kao što je i obećano, ovdje je Linux Foundation Secure Boot System. Zapravo nam ga je objavio Microsoft 6. februara, ali s putovanjima, konferencijama i sastancima do danas nisam imao vremena da sve potvrdim. Datoteke su:
PreLoader.efi (md5sum 4f7a4f566781869d252a09dc84923a82)
HashTool.efi (md5sum 45639d23aa5f2a394b03a65fc732acf2)
Također kreirajte mini-USB sliku za pokretanje; (morate ga instalirati na USB koristeći dd; slika ima GPT particije, tako da koristi cijeli disk). Ima EFI ljusku gdje bi kernel trebao biti i koristi gummiboot da ga učita. Možete ga pronaći ovdje (md5sum 7971231d133e41dd667a184c255b599f).Da biste koristili mini-USB sliku, morate registrovati hešove za loader.efi (u folderu \EFI\BOOT) i shell.efi (u osnovnom folderu). Takođe uključuje kopiju KeyTool.efi, morate registrirati hash da bi se pokrenuo.
Što se dogodilo s KeyTool.efi? Prvobitno će biti dio našeg potpisanog kompleta. Međutim, tokom testiranja Microsoft je otkrio da bi se zbog greške na jednoj od UEFI platformi mogao koristiti za programsko uklanjanje ključa platforme, što bi uništilo UEFI sigurnosni sistem. Dok ovo ne uspijemo riješiti (imamo privatnog dobavljača u petlji), odbijali su potpisati KeyTool.efi iako ga možete odobriti dodavanjem MOK varijabli ako ga želite pokrenuti.
Javite mi kako ovo ide jer sam zainteresiran za prikupljanje povratnih informacija o tome šta radi, a šta ne. Posebno sam zabrinut da zamjena sigurnosnog protokola ne radi na nekim platformama, pa me posebno zanima da li ne radi za njih.
Fuentes: \ t
http://blog.hansenpartnership.com/lca2013-and-rearchitecting-secure-boot/
http://blog.hansenpartnership.com/linux-foundation-secure-boot-system-released/
Vi odlučujete da li je to dobra ili loša vijest.