تم نشر إصدار مشروع CoreBoot 4.17، يتم من خلاله تطوير بديل مجاني للبرامج الثابتة الخاصة ونظام الإدخال والإخراج الأساسي (BIOS).
منذ إصدار الإصدار 4.16 ، كان هناك أكثر من 1300 التزام جديد من حوالي 150 مساهمًا. من بين هؤلاء ، كان ما يقرب من 15 شخصًا من مقدمي الطلبات لأول مرة.
الميزات الرئيسية الجديدة لـ CoreBoot 4.17
في هذا الإصدار الجديد الذي تم تقديمه ، يمكننا أن نجد ذلك تمت إضافة وظائف TIS (مواصفات واجهة TPM) الخاصة بالمورد للقراءة والكتابة مباشرة من سجلات TPM (الوحدة النمطية للنظام الأساسي الموثوق به): tis_vendor_read () و tis_vendor_write ().
التغيير الآخر الذي يبرز هو أن دعم لاعتراض الإشارات المرجعية لاغية من خلال سجلات التصحيح وهذا بالإضافة إلى ذلك تم تنفيذ الكشف عن جهاز i2c لتسهيل العمل بالورنيش المجهز بلوحات اللمس أو شاشات اللمس من مختلف الصانعين.
إلى جانب ذلك ، وتجدر الإشارة إلى أنه تمت إضافة القدرة على توفير بيانات الوقت بتنسيق ما. مناسب لإنشاء مخططات FlameGraph التي توضح بوضوح مقدار الوقت المستغرق في المراحل المختلفة للإصدار.
تمت إضافة خيار إلى الأداة المساعدة cbmem لإضافة وقت من مساحة المستخدمين إلى جدول "الطابع الزمني" الخاص بـ cbmem ، مما يجعل من الممكن عكس الأحداث في cbmem على المراحل المنفذة بعد CoreBoot.
ال القدرة المضمنة على إنشاء جداول صفحات ذاكرة ثابتة من ملفات المجمّع ، دون الحاجة إلى الاتصال بأدوات مساعدة تابعة لجهات خارجية.
من ناحية أخرى ، تم تسليط الضوء أيضًا على ذلك إصلاح ثغرة أمنية (CVE-2022-29264) تتجلى في إصدارات CoreBoot من 4.13 إلى 4.16 وقد سمح للأنظمة المزودة بـ AP (Application Processor) بتنفيذ التعليمات البرمجية على مستوى SMM (وضع إدارة النظام) ، والذي له أولوية أعلى (Ring -2) من وضع Hypervisor وحلقة الحماية صفر ، والحصول على وصول غير محدود إلى الذاكرة بالكامل. سبب المشكلة هو استدعاء غير صحيح لمعالج SMI في الوحدة النمطية smm_module_loader.
من الآخرين يتغيرونالتي تتميز عن هذا الإصدار الجديد:
- السماح بكتابة معلومات تصحيح الأخطاء إلى وحدة التحكم CBMEMC من معالجات SMI عند استخدام DEBUG_SMI.
- تم تغيير نظام معالج التهيئة CBMEM ، بدلاً من معالجات * _CBMEM_INIT_HOOK المرتبطة بالمراحل ، تم اقتراح معالجات اثنين: CBMEM_CREATION_HOOK (تُستخدم في المرحلة الأولية التي تنشئ cbmem) و CBMEM_READY_HOOK (تُستخدم في أي مرحلة تم فيها إنشاء cbmem بالفعل).
- تمت إضافة دعم PSB (التمهيد الآمن للنظام الأساسي) ، الذي تم تنشيطه بواسطة PSP (معالج أمان النظام الأساسي) للتحقق من سلامة BIOS باستخدام التوقيع الرقمي.
- تمت إضافة التنفيذ الخاص لمعالج بيانات التصحيح الذي تم تمريره من FSP (معالج تصحيح الأخطاء FSP).
- دعم إضافي لـ 12 لوحة رئيسية ، 5 منها مستخدمة في أجهزة Chrome OS أو خوادم Google:
كليفو L140MU / L141MU / L142MU
Dell Precision T1650
محطة عمل HP Z220 CMT
Star Labs LabTop Mk III (i7-8550u) و LabTop Mk IV (i3-10110U و i7-10710U) و Lite Mk III (N5000) و Lite Mk IV (N5030). - تمت إزالة دعم اللوحات الأم في Google Deltan و Deltaur.
- تمت إضافة حمولة coreDOOM جديدة ، والتي تتيح لك تشغيل لعبة DOOM من Coreboot.
- يستخدم المشروع رمز doomgeneric تم نقله إلى libpayload.
- يتم استخدام الإطارات العازلة الخطية الخاصة بـ Coreboot للإخراج ويتم تحميل ملفات WAD مع أصول اللعبة من CBFS.
- مكونات الحمولة المحدثة SeaBIOS 1.16.0 و iPXE 2022.1.
- تمت إضافة وضع SeaGRUB (GRUB2 عبر SeaBIOS) ، والذي يسمح لـ GRUB2 باستخدام عمليات الاسترجاعات التي توفرها SeaBIOS ، على سبيل المثال ، للوصول إلى الأجهزة التي لا تستطيع حمولة GRUB2 الوصول إليها.
- حماية إضافية ضد هجوم SinkHole ، والذي يسمح لك بتنفيذ التعليمات البرمجية على مستوى SMM (وضع إدارة النظام).
بالإضافة إلى ذلك ، يمكننا أن نشير إلى نشر بواسطة OSFF (مؤسسة البرامج الثابتة مفتوحة المصدر) في رسالة مفتوحة إلى Intel ، وفيها يقترح توحيد حزم دعم البرامج الثابتة (FSP ، Firmware Support Package) وابدأ في نشر الوثائق المتعلقة بتهيئة Intel SoC.
يؤدي عدم وجود كود FSP إلى صعوبة إنشاء برامج ثابتة مفتوحة ويجعل من الصعب على مشاريع Coreboot و U-Boot و LinuxBoot التقدم في أجهزة Intel. في السابق ، كانت مبادرة مماثلة ناجحة وفتحت إنتل مصدر البرامج الثابتة PSE (محرك الخدمات القابلة للبرمجة).
أخيرا إذا كنت مهتمًا بمعرفة المزيد عنها، يمكنك التحقق من التفاصيل في الرابط التالي.