Coreboot 4.17 u lëshua

Është publikuar publikimi i projektit CoreBoot 4.17, në kuadrin e të cilit po zhvillohet një alternativë falas ndaj firmware-it të pronarit dhe BIOS. Kodi i projektit shpërndahet nën licencën GPLv2. 150 zhvillues morën pjesë në krijimin e versionit të ri, të cilët përgatitën më shumë se 1300 ndryshime.

Ndryshimet kryesore:

  • Një dobësi (CVE-2022-29264) që u shfaq në versionet CoreBoot 4.13 deri në 4.16 është rregulluar dhe lejon që kodi të ekzekutohet në sistemet me AP (Procesori i aplikacionit) në nivelin SMM (System Management Mode), i cili ka një prioritet më të lartë ( Ring -2) se modaliteti i hipervizorit dhe një unazë zero e mbrojtjes dhe që ka akses të pakufizuar në të gjithë memorien. Problemi është shkaktuar nga një thirrje e gabuar në mbajtësin SMI në modulin smm_module_loader.
  • U shtua mbështetje për 12 pllaka amë, 5 prej të cilave përdoren në pajisjet me Chrome OS ose në serverët e Google. Ndër tarifat jo të Google:
    • Clevo l140mu / l141mu / l142mu
    • Dell Precision T1650
    • Stacioni i punës HP Z220 CMT
    • Star Labs LabTop Mk III (i7-8550u), LabTop Mk IV (i3-10110U, i7-10710U), Lite Mk III (N5000) dhe Lite Mk IV (N5030).
  • Mbështetja për pllakat amë të Google Deltan dhe Deltaur është ndërprerë.
  • U shtua një ngarkesë e re coreDOOM, duke ju lejuar të nisni lojën DOOM nga Coreboot. Projekti përdor kodin doomgeneric, të transferuar në libpayload. Korniza lineare Coreboot përdoret për dalje dhe skedarët WAD me burimet e lojës ngarkohen nga CBFS.
  • Komponentët e përditësuar të ngarkesës SeaBIOS 1.16.0 dhe iPXE 2022.1.
  • U shtua modaliteti SeaGRUB (GRUB2 mbi SeaBIOS), i cili lejon GRUB2 të përdorë thirrjet kthyese të ofruara nga SeaBIOS, për shembull, për të hyrë në pajisjet që nuk janë të aksesueshme nga ngarkesa GRUB2.
  • Mbrojtje e shtuar kundër sulmit SinkHole, e cila lejon që kodi të ekzekutohet në nivelin SMM (System Management Mode).
  • Zbatoi një aftësi të integruar për të gjeneruar tabela statike të faqeve të kujtesës nga skedarët e montimit, pa pasur nevojë të telefononi shërbime të palëve të treta.
  • Lejo shkrimin e informacionit të korrigjimit në konsolën CBMEMC nga mbajtësit e SMI kur përdorni DEBUG_SMI.
  • Sistemi i mbajtësve të inicializimit CBMEM është ndryshuar; në vend të mbajtësve *_CBMEM_INIT_HOOK të lidhur me fazat, propozohen dy mbajtës: CBMEM_CREATION_HOOK (përdoret në fazën fillestare që krijon cbmem) dhe CBMEM_READY_HOOK (përdorur në çdo fazë në të cilën cbme është përdorur tashmë krijuar).
  • Mbështetje e shtuar për PSB (Platform Secure Boot), aktivizuar nga procesori PSP (Platform Security Processor) për të verifikuar integritetin e BIOS duke përdorur një nënshkrim dixhital.
  • Shtuam zbatimin tonë të një mbajtësi për korrigjimin e të dhënave të transferuara nga FSP (FSP Debug Handler).
  • Funksionet TIS (Specifikimi i Ndërfaqes TPM) specifike të shitësit të shtuar për lexim dhe shkrim direkt nga regjistrat TPM (Trusted Platform Module) - tis_vendor_read() dhe tis_vendor_write().
  • Mbështetje e shtuar për përgjimin e mosreferencave të treguesve të pavlefshëm nëpërmjet regjistrave të korrigjimit.
  • Zbatimi i zbulimit të pajisjes i2c, duke e bërë më të lehtë punën me pllaka të pajisura me tastierë me prekje ose ekrane me prekje nga prodhues të ndryshëm.
  • U shtua aftësia për të kursyer të dhënat e kohës në një format të përshtatshëm për gjenerimin e grafikëve FlameGraph, të cilët tregojnë qartë se sa kohë harxhohet në faza të ndryshme të nisjes.
  • Një opsion është shtuar në programin cbmem për të shtuar një "vulë kohore" të kohës nga hapësira e përdoruesit në tabelën cbmem, e cila bën të mundur pasqyrimin e ngjarjeve në fazat e kryera pas CoreBoot në cbmem.

Për më tepër, mund të vërejmë publikimin nga OSFF (Fondacioni i Firmware me Burim të Hapur) të një letre të hapur drejtuar Intel, e cila propozon që paketat e mbështetjes së firmuerit (FSP, Paketa e Mbështetjes së Firmware) të bëhen më modulare dhe të fillohet publikimi i dokumentacionit në lidhje me inicializimin e Intel SoC. . Mungesa e kodit FSP e ndërlikon ndjeshëm krijimin e firmuerit të hapur dhe parandalon avancimin e projekteve Coreboot, U-Boot dhe LinuxBoot në harduerin Intel. Më parë, një iniciativë e ngjashme ishte e suksesshme dhe Intel hapi kodin për firmuerin e bllokut PSE (Programmable Services Engine) të kërkuar nga komuniteti.

Burimi: opennet.ru

Shto një koment