Need on kahe postituse tõlked, mille James Bottomley on oma ajaveebis võtnud. Esimene postitus tehti 1. veebruaril ja selle nimi on "LCA2013 ja turvalise alglaadimise ümberkorraldamine"
Olen mõnda aega vait olnud, seega on aeg anda ülevaade Linux Foundationi turvalise alglaaduri (Secure Boot Loader) arengust (eriti pärast seda, kui seda LCA2013-l esitleti). ( Link slaididele )
Probleemi põhiolemus on selles, et GregKH (kerneli arendaja Greg Kroah-Hartman) avastas detsembri alguses, et pakutud Pre-BootLoader ei töötaks praegusel kujul Gummibootiga. See oli masendav, sest see tähendas, et see ei täitnud Linux Foundationi missiooni lubada kõiki alglaadureid. Uurimisel selgus lihtne põhjus: Gummiboot loodi selleks, et demonstreerida, et saab luua väikese ja lihtsa alglaaduri, mis kasutab ära kõiki UEFI platvormil saadaolevaid teenuseid, selle asemel, et olla massiivne lingilaadur nagu GRUB. Kahjuks tähendab see, et see käivitab kernelid funktsiooni BootServices->LoadImage() abil, mis tähendab, et käivitatav kernel peab läbima UEFI platvormi turvalise alglaadimise kontrollid. Algselt oli Pre-BootLoader, nagu ka shim (Mathew Garretti alglaadur), kirjutatud PE/Coff lingi laadimist kasutama, et turvalise alglaadimise kontrollidest mööda hiilida. Kahjuks tähendab see, et kõik Pre-BootLoader'i käivitatud toimingud peavad turvalise alglaadimise kontrollide ületamiseks kasutama ka linkide laadimist kõige puhul, mida see laadida soovib, ja seetõttu Gummiboot, mis ei ole teadlikult linkide laadija, selle skeemi järgi ei tööta.
Nii et pidin ümber tegema ja ümber kirjutama: probleem läks nüüd sellest, kuidas luua Microsofti allkirjastatud linklaadurit, mis järgib nende põhimõtteid, kuni probleemini BootServices-> LoadImage () funktsiooni kasutamiseks kõigi alglaaduri laste aktiveerimiseks nende poliitikat järgida. Õnneks on olemas võimalus UEFI platvormi allkirjastamise infrastruktuuri pealtkuulamiseks installida oma arhitektuuri turbeprotokoll. Kahjuks ei kuulu platvormi lähtestamise spetsifikatsioon tegelikult UEFI spetsifikatsiooni hulka, kuid õnneks rakendab seda iga leitud Windows 8 süsteem. Uus arhitektuur võtab selle protokolli pealt kinni ja lisab oma turvakontrolli. Siiski on veel üks probleem: Ehkki oleme arhitektuuri turbeprotokolli tagasihelistamises, ei pea me tingimata UEFI-süsteemi ekraani, mistõttu on binaararvuti käivitamise lubamiseks kasutajate testi tegemine täiesti võimatu. Õnneks on selleks mitteinteraktiivne viis ja see on SUSE masinaomaniku võtme (MOK) mehhanism. Seetõttu arenes Linux Foundation Pre-BootLoader nüüd standardsete MOK-muutujate abil volitatud binaarse räsi salvestamiseks.
Selle kõige parem külg on see, et nüüd saate Pre-BootLoaderit kasutada koos Gummibootiga (täpselt nagu seda tehti demos LCA2013-l). Buutimiseks peate lisama 2 räsi: üks Gummiboot enda jaoks ja teine tuuma jaoks, mille soovite käivitada, kuid tegelikult on see hea asi, sest nüüd on teil kogu buutimisjärjestuse juhtimiseks üks turvapoliitika. Gummiboot ise oli ka lappitud, et tuvastada turvalise alglaadimise tõttu tekkinud krahh ja kuvatakse teade, milles öeldakse, millise räsi peate registreerima.
Teeme eraldi postituse, milles selgitan uue arhitektuuri toimimist, kuid arvasin, et parem oleks eelmisel kuul juhtunut selgitada.
Ja selle teise postituse tegi ta eile ja kannab nime "Käivitas Linux Foundationi turvalise alglaadimissüsteemi"
Nagu lubatud, on siin Linux Foundationi turvaline alglaadimissüsteem. Selle avaldas Microsoft meile tegelikult 6. veebruaril, kuid reiside, konverentside ja koosolekute ajal ei olnud mul aega kõike kinnitada kuni tänaseni. Failid on:
PreLoader.efi (md5sum 4f7a4f566781869d252a09dc84923a82)
HashTool.efi (md5sum 45639d23aa5f2a394b03a65fc732acf2)
Looge ka käivitatav mini-USB pilt; (Peate selle USB-le installima, kasutades dd-d; pildil on GPT-partitsioonid, nii et see kasutab tervet ketast). Sellel on EFI kest, kus tuum peaks olema, ja kasutab selle laadimiseks gummiboot'i. Selle leiate siit (md5sum 7971231d133e41dd667a184c255b599f).Mini-USB-pildi kasutamiseks peate sisestama ruudud loader.efi (kausta \ EFI \ BOOT) ja shell.efi (juurkausta). See sisaldab ka KeyTool.efi koopiat, käivitamiseks peate sisestama räsi.
Mis juhtus KeyTool.efiga? Algselt pidi see olema osa meie allkirjastatud komplektist. Testimise käigus avastas Microsoft, et ühe UEFI platvormi vea tõttu saab seda kasutada platvormi võtme programmiliseks eemaldamiseks, mis rikub UEFI turvasüsteemi. Kuni me ei suuda seda lahendada (meil on privaatne müüja silmus), keeldusid nad KeyTool.efi allkirjastamast, kuigi saate selle käivitamiseks lubada MOK-muutujate lisamisega.
Andke mulle teada, kuidas see läheb, sest olen huvitatud tagasiside kogumisest selle kohta, mis töötab ja mis mitte. Eriti olen mures selle pärast, et turbeprotokolli alistamine ei pruugi mõnel platvormil töötada, seega tahan eriti teada, kas see nende jaoks ei toimi.
Allikad:
http://blog.hansenpartnership.com/lca2013-and-rearchitecting-secure-boot/
http://blog.hansenpartnership.com/linux-foundation-secure-boot-system-released/
Otsustage, kas see on hea või halb uudis.