Megjelent a CoreBoot 4.17 projekt kiadása, melynek keretében ingyenes alternatívát fejlesztenek a saját firmware-re és BIOS-ra. A projekt kódja a GPLv2 licenc alatt kerül terjesztésre. Az új verzió elkészítésében 150 fejlesztő vett részt, akik több mint 1300 változtatást készítettek elő.
Nagy változások:
- A CoreBoot 2022-tól 29264-ig terjedő kiadásaiban megjelent sebezhetőséget (CVE-4.13-4.16) kijavították, amely lehetővé teszi az AP-vel (Application Processor) rendelkező rendszereken a kód futtatását SMM (Rendszerkezelési mód) szinten, amely magasabb prioritású ( Ring -2), mint a hypervisor mód és a nulla védelem, és korlátlan hozzáféréssel rendelkezik az összes memóriához. A problémát az SMI-kezelő helytelen hívása okozza az smm_module_loader modulban.
- 12 alaplap támogatása hozzáadva, amelyek közül 5-öt Chrome OS-t használó eszközökön vagy Google szervereken használnak. A nem Google díjai között:
- Clevo L140MU / L141MU / L142MU
- Dell Precision T1650
- HP Z220 CMT munkaállomás
- Star Labs LabTop Mk III (i7-8550u), LabTop Mk IV (i3-10110U, i7-10710U), Lite Mk III (N5000) és Lite Mk IV (N5030).
- A Google Deltan és Deltaur alaplapok támogatása megszűnt.
- Hozzáadott egy új hasznos coreDOOM-ot, amely lehetővé teszi a DOOM játék elindítását a Corebootból. A projekt doomgeneric kódot használ, a libpayloadra portolva. A Coreboot lineáris framebuffert használják a kimenetre, és a játék erőforrásait tartalmazó WAD-fájlok betöltődnek a CBFS-ből.
- Frissített hasznos komponensek SeaBIOS 1.16.0 és iPXE 2022.1.
- Hozzáadott SeaGRUB mód (GRUB2 over SeaBIOS), amely lehetővé teszi a GRUB2 számára, hogy a SeaBIOS által biztosított visszahívásokat használja, például olyan berendezések eléréséhez, amelyek nem érhetők el a GRUB2 hasznos terheléséről.
- Hozzáadott védelem a SinkHole támadás ellen, amely lehetővé teszi a kód SMM (Rendszerkezelési mód) szintű végrehajtását.
- Beépített memórialapok statikus tábláinak létrehozása összeállítási fájlokból anélkül, hogy harmadik féltől származó segédprogramokat kellene hívni.
- A DEBUG_SMI használatakor engedélyezze a hibakeresési információk írását a CBMEMC konzolra az SMI-kezelőktől.
- A CBMEM inicializálási kezelők rendszere megváltozott; a szakaszokhoz kötött *_CBMEM_INIT_HOOK kezelők helyett két kezelő javasolt: CBMEM_CREATION_HOOK (a cbmem létrehozásának kezdeti szakaszában használatos) és CBMEM_READY_HOOK (minden olyan szakaszban használatos, ahol a cbmem már megtörtént). létre).
- Hozzáadott támogatás a PSB-hez (Platform Secure Boot), amelyet a PSP (Platform Security Processor) processzor aktivál, hogy digitális aláírással ellenőrizze a BIOS integritását.
- Hozzáadtuk az FSP-ről átvitt adatok hibakeresésére szolgáló kezelő saját megvalósítását (FSP Debug Handler).
- Hozzáadott szállítóspecifikus TIS (TPM Interface Specification) funkciók a TPM (Trusted Platform Module) regiszterekből való közvetlen olvasáshoz és íráshoz – tis_vendor_read() és tis_vendor_write().
- Támogatás hozzáadva a nullmutató hivatkozások elfogásához hibakeresési regisztereken keresztül.
- Megvalósított i2c eszközészlelés, ami megkönnyíti a különböző gyártók érintőpadjaival vagy érintőképernyőjével felszerelt táblákkal való munkát.
- Hozzáadtuk az időadatok megtakarításának lehetőségét olyan formátumban, amely alkalmas FlameGraph grafikonok generálására, amelyek egyértelműen bemutatják, hogy mennyi időt töltenek az indítás különböző szakaszaiban.
- A cbmem segédprogram egy olyan opcióval egészült ki, amely a felhasználói térből származó idő „időbélyegét” adja hozzá a cbmem táblához, amely lehetővé teszi az események a CoreBoot után végrehajtott szakaszokban történő tükrözését a cbmem-ben.
Emellett megjegyezzük, hogy az OSFF (Open-Source Firmware Foundation) egy nyílt levelet tett közzé az Intelnek, amelyben a firmware-támogató csomagok (FSP, Firmware Support Package) modulárisabbá tételét, valamint az Intel SoC inicializálásával kapcsolatos dokumentációk közzétételét javasolja. . Az FSP kód hiánya jelentősen megnehezíti a nyílt firmware létrehozását, és megakadályozza a Coreboot, U-Boot és LinuxBoot projektek előrehaladását Intel hardveren. Korábban egy hasonló kezdeményezés sikeres volt, és az Intel megnyitotta a közösség által kért PSE (Programmable Services Engine) blokk firmware kódját.
Forrás: opennet.ru