Gisugyot ni Lennart Pottering ang usa ka bag-ong na-verify nga arkitektura sa boot sa Linux

Gipatik ni Lennart Poettering ang usa ka sugyot nga i-modernize ang proseso sa boot sa mga distribusyon sa Linux, nga gitumong sa pagsulbad sa mga kasamtangan nga mga problema ug pagpayano sa organisasyon sa usa ka hingpit nga napamatud-an nga boot, nga nagpamatuod sa pagkatinuod sa kernel ug sa nagpahiping sistema sa palibot. Ang mga pagbag-o nga gikinahanglan sa pagpatuman sa bag-ong arkitektura gilakip na sa systemd codebase ug makaapekto sa mga sangkap sama sa systemd-stub, systemd-measure, systemd-cryptenroll, systemd-cryptsetup, systemd-pcrphase, ug systemd-creds.

Ang gisugyot nga mga pagbag-o gipamubu sa paghimo sa usa ka unibersal nga imahe sa UKI (Unified Kernel Image) nga naghiusa sa imahe sa kernel sa Linux, ang handler alang sa pagkarga sa kernel gikan sa UEFI (UEFI boot stub) ug ang initrd system environment nga gikarga sa memorya, gigamit alang sa inisyal nga pagsugod sa yugto sa wala pa i-mount ang gamut nga FS. Imbis sa initrd RAM disk image, ang tibuok sistema mahimong ma-package sa UKI, nga magtugot sa pagmugna sa hingpit nga verified system environment nga gikarga sa RAM. Ang UKI-image gihimo sa porma sa usa ka executable file sa PE format, nga mahimong i-load dili lamang gamit ang tradisyonal nga mga bootloader, apan direkta nga gitawag gikan sa UEFI firmware.

Ang abilidad sa pagtawag gikan sa UEFI nagtugot kanimo sa paggamit sa usa ka digital signature integrity ug validity check nga naglangkob dili lamang sa kernel, kondili usab sa sulod sa initrd. Sa parehas nga oras, ang suporta sa pagtawag gikan sa tradisyonal nga mga bootloader nagtugot kanimo sa pagtipig sa mga bahin sama sa paghatud sa daghang mga bersyon sa kernel ug awtomatikong pag-rollback sa usa ka nagtrabaho nga kernel kung adunay mga problema sa bag-ong kernel nga makit-an pagkahuman sa pag-install sa update.

Sa pagkakaron, kadaghanan sa mga distribusyon sa Linux naggamit sa kadena nga "firmware β†’ digitally signed Microsoft shim layer β†’ digitally signed distribution GRUB bootloader β†’ digitally signed distribution Linux kernel β†’ unsigned initrd environment β†’ root FS" sa proseso sa pagsugod. Ang kakulang sa initrd nga pag-verify sa tradisyonal nga mga pag-apod-apod nagmugna og mga problema sa seguridad, tungod kay, taliwala sa ubang mga butang, kini nga palibot nagkuha mga yawe aron ma-decrypt ang gamut nga FS.

Ang pag-verify sa initrd nga imahe wala gisuportahan, tungod kay kini nga file gihimo sa lokal nga sistema sa user ug dili ma-certify sa digital nga pirma sa pag-apod-apod, nga labi nga nagkomplikado sa organisasyon sa pag-verify kung gigamit ang SecureBoot mode (aron mapamatud-an ang initrd, kinahanglan sa user aron makamugna ang iyang mga yawe ug i-load kini sa UEFI firmware). Dugang pa, ang kasamtangan nga organisasyon sa boot wala magtugot sa paggamit sa impormasyon gikan sa TPM PCR (Platform Configuration Register) nga mga rehistro aron makontrol ang integridad sa user-space nga mga component gawas sa shim, grub, ug ang kernel. Lakip sa mga kasamtangan nga mga problema, ang komplikasyon sa pag-update sa bootloader ug ang kawalay katakus sa pagpugong sa pag-access sa mga yawe sa TPM alang sa mas daan nga mga bersyon sa OS nga nahimong walay kalabutan human sa pag-instalar sa update gihisgutan usab.

Ang mga nag-unang tumong sa pagpatuman sa bag-ong boot architecture mao ang:

  • Paghatag ug usa ka hingpit nga napamatud-an nga proseso sa pag-download, nga naglangkob sa tanan nga mga yugto gikan sa firmware hangtod sa wanang sa gumagamit, ug nagpamatuod sa kabalido ug integridad sa mga na-download nga sangkap.
  • Pagbugkos sa kontroladong mga kahinguhaan ngadto sa TPM PCR nga mga rehistro nga adunay dibisyon sa mga tag-iya.
  • Abilidad sa pag-precalculate sa PCR values ​​base sa kernel boot, initrd, configuration, ug local system ID.
  • Proteksyon batok sa mga pag-atake sa rollback nga nalangkit sa rollback sa miaging huyang nga bersyon sa sistema.
  • Pasimpleha ug pauswaga ang pagkakasaligan sa mga update.
  • Suporta alang sa mga update sa OS nga wala magkinahanglan og pag-apply pag-usab o lokal nga paghatag sa mga kapanguhaan nga giprotektahan sa TPM.
  • Ang pagkaandam sa sistema alang sa hilit nga sertipikasyon aron makumpirma ang pagkahusto sa bootable OS ug mga setting.
  • Ang katakus sa paglakip sa sensitibo nga datos sa pipila nga mga yugto sa boot, pananglitan, pagkuha sa mga yawe sa pag-encrypt alang sa gamut nga FS gikan sa TPM.
  • Paghatag usa ka luwas, awtomatiko, ug hilom nga proseso alang sa pag-abli sa mga yawe aron ma-decrypt ang usa ka drive nga adunay partition sa ugat.
  • Ang paggamit sa mga chips nga nagsuporta sa TPM 2.0 nga espesipikasyon, nga adunay abilidad sa pag-fallback sa mga sistema nga walay TPM.

Source: opennet.ru

Idugang sa usa ka comment