coreboot (ранее LinuxBIOS)

Продукт
Дата премьеры системы: 1999
Дата последнего релиза: 2022/06/05
Технологии: ОС

Основная статья: Открытое программное обеспечение (Open Source)

coreboot (ранее LinuxBIOS) — проект по созданию свободного встроенного программного обеспечения для ряда ПК, одобренный Free Software Foundation. Целью проекта является замена проприетарных и закрытых систем BIOS и UEFI, используемых большинством персональных компьютеров, на легковесный, предназначенный исключительно для загрузки и запуска современных 32-битных и 64-битных операционных систем[1].

2022: coreboot 4.17

5 июня 2022 года стало известно, что опубликован релиз проекта CoreBoot 4.17, в рамках которого разрабатывается свободная альтернатива проприетарным прошивкам и BIOS. Код проекта распространяется под лицензией GPLv2. В создании версии приняло участие 150 разработчиков, которые подготовили более 1300 изменений.

coreboot

Как сообщалось, основные изменения включают следующее:

  • Устранена уязвимость (CVE-2022-29264), проявляющаяся в выпусках CoreBoot с 4.13 по 4.16 и позволяющая на системах с AP (Application Processor) выполнить код на уровне SMM (System Management Mode), более приоритетном (Ring-2), чем режим гипервизора и нулевое кольцо защиты, и имеющим неограниченный доступ ко всей памяти. Проблема вызвана некорректным вызовом обработчика SMI в модуле smm_module_loader.
  • Добавлена поддержка 12 материнских плат, 5 из которых используется на устройствах с Chrome OS или на серверах Google. Среди не связанных с Googlе плат:
    • Clevo L140MU / L141MU / L142MU
    • Dell Precision T1650
    • HP Z220 CMT Workstation
    • 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.
  • Добавлен payload coreDOOM, позволяющий запустить игру DOOM из Coreboot. В проекте использован код doomgeneric, портированный на libpayload. Для вывода используется линейный фреймбуфер Coreboot, а WAD-файлы с игровыми ресурсами загружаются из CBFS.
  • Обновлены payload-компоненты SeaBIOS 1.16.0 и iPXE 2022.1.
  • Добавлен режим SeaGRUB (GRUB2 поверх SeaBIOS), позволяющий в GRUB2 использовать предоставляемые SeaBIOS callback-вызовы, например, для обращения к оборудованию, к которому из payload GRUB2 нет доступа.
  • Добавлена защита от атаки SinkHole, позволяющей выполнить код на уровне SMM (System Management Mode).
  • Реализована встроенная возможность генерации статических таблиц страниц памяти из ассемблерных файлов, без необходимости вызова сторонних утилит.
  • Разрешена запись отладочной информации в консоль CBMEMC из обработчиков SMI при использовании DEBUG_SMI.
  • Изменена система обработчиков инициализации CBMEM, вместо привязанных к стадиям обработчиков _CBMEM_INIT_HOOK предложено два обработчика CBMEM_CREATION_HOOK (используется на начальной стадии, создающей cbmem) и CBMEM_READY_HOOK (используется на любых стадиях, на которых уже создан cbmem).
  • Добавлена поддержка PSB (Platform Secure Boot), активируемая процессором PSP (Platform Security Processor) для верификации целостности BIOS по цифровой подписи.
  • Добавлена собственная реализация обработчика отладочных данных, передаваемых из FSP (FSP Debug Handler).
  • Добавлены специфичные для производителей TIS-функции (TPM Interface Specification) для чтения и записи напрямую из регистров TPM (Trusted Platform Module) - tis_vendor_read() и tis_vendor_write().
  • Добавлена поддержка перехвата разыменований нулевых указателей через отладочные регистры.
  • Реализовано определение устройств i2c, оптимизирующее работу с платами, оснащёнными тачпадами или сенсорными экранами разных производителей.
  • Добавлена возможность сохранения данных о времени в формате, подходящем для генерации графиков FlameGraph, наглядно демонстрирующих какое время тратится на разных стадиях запуска.
  • В утилиту cbmem добавлена опция для добавления в таблицу cbmem "timestamp" времени из пространства пользователя, что даёт возможность отражать в cbmem события на стадиях, выполняемых после CoreBoot.

Дополнительно можно отметить публикацию фондом OSFF (Open-Source Firmware Foundation) открытого письма к компании Intel, в котором предлагается сделать более модульными наборы поддержки прошивок (FSP, Firmware Support Package) и начать публиковать документацию, связанную с инициализацией SoC Intel. Отсутствие кода FSP существенно затрудняет создание открытых прошивок и мешает продвижению проектов Coreboot, U-Boot и LinuxBoot на оборудовании Intel. Ранее похожая инициатива увенчалась успехом и компания Intel открыла код запрошенных сообществом прошивок блока PSE (Programmable Services Engine).

Примечания



Подрядчики-лидеры по количеству проектов

За всю историю
2021 год
2022 год
2023 год
Текущий год

  Ред Софт (Red Soft) (45)
  НППКТ (40)
  Softline (Софтлайн) (29)
  Кортис (16)
  Крок (15)
  Другие (355)

  НППКТ (17)
  Almi Partner, Алми партнер (ГК Алми) (7)
  Ред Софт (Red Soft) (4)
  РусБИТех-Астра (ГК \"Астра\")
  Кортис (4)
  Другие (46)

  НППКТ (23)
  Кортис (7)
  Ред Софт (Red Soft) (5)
  ОТР-БИТ (ОТР - безопасность информационных технологий) (2)
  Астра Группа компаний (1)
  Другие (8)

  Ред Софт (Red Soft) (5)
  Галэкс Сервис (1)
  Кейсистемс (Keysystems) (1)
  Кортис (1)
  Кортис Технологии (1)
  Другие (6)

  Ред Софт (Red Soft) (9)
  РТ МИС (РТ Медицинские информационные системы) (4)
  X-Com (Икс ком) (1)
  Аксофт (Axoft) (1)
  Информационный центр (1)
  Другие (8)

Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров

За всю историю
2021 год
2022 год
2023 год
Текущий год

  Microsoft (80, 144)
  Ред Софт (Red Soft) (3, 71)
  РусБИТех-Астра (ГК Астра) (3, 45)
  НППКТ (2, 41)
  ИВК (4, 27)
  Другие (307, 133)

  НППКТ (1, 17)
  РусБИТех-Астра (ГК Астра) (2, 9)
  Ред Софт (Red Soft) (1, 8)
  Almi Partner, Алми партнер (ГК Алми) (1, 7)
  Microsoft (2, 6)
  Другие (11, 19)

  НППКТ (1, 23)
  Ред Софт (Red Soft) (1, 13)
  ИВК (2, 4)
  Базальт СПО (BaseALT) ранее ALT Linux (3, 3)
  РусБИТех-Астра (ГК Астра) (2, 3)
  Другие (0, 0)

  Ред Софт (Red Soft) (1, 6)
  ИВК (1, 2)
  Базальт СПО (BaseALT) ранее ALT Linux (1, 2)
  Атлант (ГК Applite) (1, 1)
  Microsoft (1, 1)
  Другие (0, 0)

  Ред Софт (Red Soft) (1, 12)
  Synology (SLMP PTE) (1, 1)
  Jolla (Sailfish Holding) (1, 1)
  Открытая мобильная платформа (ОМП) (1, 1)
  Другие (0, 0)

Распределение систем по количеству проектов, не включая партнерские решения

За всю историю
2021 год
2022 год
2023 год
Текущий год

  Ред ОС (Red OS) - 66
  Microsoft Windows - 60
  НППКТ: ОСнова (Операционная система общего назначения, ОС ОН) - 41
  Astra Linux Common Edition - 27
  Astra Linux Special Edition - 21
  Другие 197

  НППКТ: ОСнова (Операционная система общего назначения, ОС ОН) - 17
  Ред ОС (Red OS) - 8
  AlterOS - 7
  Astra Linux Common Edition - 7
  Microsoft Windows - 5
  Другие 18

  НППКТ: ОСнова (Операционная система общего назначения, ОС ОН) - 23
  Ред ОС (Red OS) - 13
  Astra Linux Common Edition - 2
  Альт Рабочая станция - 2
  ОС Альт (ранее Альт Линукс (ALT Linux) - 2
  Другие 2

  Ред ОС (Red OS) - 6
  ОС Альт (ранее Альт Линукс (ALT Linux) - 2
  Windows Server 2019 - 1
  Атлант ОС - 1
  Другие 0

  Ред ОС (Red OS) - 12
  Synology NAS - DiskStation Manager - 1
  Аврора ОС - 1
  Другие 0