Lennart Pottering pakkus välja uue Linuxi kontrollitud alglaadimisarhitektuuri

Lennart Poettering on avaldanud ettepaneku Linuxi distributsioonide alglaadimisprotsessi moderniseerimiseks, mille eesmärk on lahendada olemasolevad probleemid ja lihtsustada täieõigusliku kontrollitud alglaadimise korraldamist, kinnitades tuuma ja selle aluseks oleva süsteemikeskkonna autentsust. Uue arhitektuuri juurutamiseks vajalikud muudatused sisalduvad juba systemd koodibaasi ja mõjutavad selliseid komponente nagu systemd-stub, systemd-measure, systemd-cryptenroll, systemd-cryptsetup, systemd-pcrphase ja systemd-creds.

Kavandatavad muudatused on taandatud ühe universaalse UKI (Unified Kernel Image) kujutise loomisele, mis ühendab endas Linuxi tuuma kujutise, UEFI-st kerneli laadimise töötleja (UEFI boot stub) ja initrd süsteemikeskkonna, mis laaditakse mällu, mida kasutatakse esialgne lähtestamine etapis enne juur-FS-i paigaldamist. Initrd RAM-i kettapildi asemel saab kogu süsteemi pakkida UKI-sse, mis võimaldab luua täielikult verifitseeritud süsteemikeskkondi, mis laaditakse RAM-i. UKI-pilt tehakse PE-vormingus käivitatava faili kujul, mida saab laadida mitte ainult traditsiooniliste alglaadurite abil, vaid seda kutsutakse otse UEFI püsivarast.

Võimalus helistada UEFI-st võimaldab teil kasutada digitaalallkirja terviklikkuse ja kehtivuse kontrolli, mis ei hõlma ainult tuuma, vaid ka initrd-i sisu. Samal ajal võimaldab traditsioonilistest alglaaduritest helistamise tugi salvestada selliseid funktsioone nagu mitme kerneli versiooni tarnimine ja automaatne tagasipööramine töötavale tuumale juhuks, kui pärast värskenduse installimist avastatakse probleeme uue kerneliga.

Praegu kasutab enamik Linuxi distributsioone lähtestamisprotsessis ahelat "püsivara → digitaalselt allkirjastatud Microsofti vahekiht → digitaalselt allkirjastatud distributsioon GRUB alglaadur → digitaalselt allkirjastatud distributsioon Linuxi kernel → allkirjastamata initrd keskkond → juur FS". Initrd-i kontrolli puudumine traditsioonilistes distributsioonides tekitab turvaprobleeme, kuna muu hulgas ekstraheerib see keskkond võtmeid juur-FS-i dekrüpteerimiseks.

Initrd-pildi kontrollimist ei toetata, kuna see fail genereeritakse kasutaja kohalikus süsteemis ja seda ei saa sertifitseerida distributsiooni digitaalallkirjaga, mis muudab kontrollimise korraldamise SecureBoot-režiimi kasutamisel oluliselt keerulisemaks (initrd-i kontrollimiseks vajab kasutaja et genereerida oma võtmed ja laadida need UEFI püsivara). Lisaks ei võimalda olemasolev alglaadimisorganisatsioon kasutada TPM PCR-i (Platform Configuration Register) registrite teavet, et kontrollida muude kasutajaruumi komponentide, välja arvatud shim, grub ja kernel, terviklikkust. Olemasolevatest probleemidest mainitakse ka alglaaduri värskendamise keerukust ja suutmatust piirata juurdepääsu TPM-i võtmetele vanemate OS-i versioonide puhul, mis on pärast värskenduse installimist muutunud ebaoluliseks.

Uue alglaadimisarhitektuuri juurutamise peamised eesmärgid on:

  • Täielikult kontrollitud allalaadimisprotsessi pakkumine, mis hõlmab kõiki etappe püsivarast kasutajaruumini, ning allalaaditud komponentide kehtivuse ja terviklikkuse kinnitamine.
  • Kontrollitavate ressursside sidumine TPM PCR registritega koos omanike poolt jagamisega.
  • Võimalus eelnevalt arvutada PCR väärtusi kerneli alglaadimise, initrd-i, konfiguratsiooni ja kohaliku süsteemi ID põhjal.
  • Kaitse tagasipööramisrünnete eest, mis on seotud süsteemi eelmisele haavatavale versioonile tagasipöördumisega.
  • Lihtsustage ja parandage värskenduste usaldusväärsust.
  • Tugi OS-i värskendustele, mis ei nõua TPM-kaitsega ressursside uuesti rakendamist ega kohalikku etteandmist.
  • Süsteemi valmisolek kaugsertifitseerimiseks, et kinnitada käivitatava OS-i ja sätete õigsust.
  • Võimalus lisada teatud alglaadimisetappidele tundlikke andmeid, näiteks hankida TPM-ist juur-FS-i krüpteerimisvõtmed.
  • Tagage juurpartitsiooniga draivi dekrüpteerimiseks turvaline, automaatne ja vaikne protsess võtmete avamiseks.
  • TPM 2.0 spetsifikatsiooni toetavate kiipide kasutamine koos võimalusega naasta TPM-ita süsteemidele.

Allikas: opennet.ru

Lisa kommentaar