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 год
Текущий год

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

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

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

  Ред Софт (Red Soft) (5)
  Аквариус (Aquarius) (1)
  Атлант (ГК Applite) (1)
  Кейсистемс (Keysystems) (1)
  Кортис (1)
  Другие (4)

  IServ (Интернет-Сервис) ИСерв (1)
  RDV (РДВ Автоматизация) (1)
  X-Com (Икс ком) (1)
  Открытая мобильная платформа (ОМП) (1)
  Другие (0)

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

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

  Microsoft (80, 144)
  Ред Софт (Red Soft) (3, 55)
  РусБИТех-Астра (ГК "Астра") (3, 44)
  НППКТ (2, 41)
  ИВК (3, 25)
  Другие (292, 125)

  НППКТ (1, 17)
  РусБИТех-Астра (ГК "Астра") (2, 9)
  Ред Софт (Red Soft) (1, 8)
  Алми партнер (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)
  Microsoft (1, 1)
  Базальт СПО (BaseALT) ранее ALT Linux (1, 1)
  Атлант (ГК Applite) (1, 1)
  ИВК (1, 1)
  Другие (0, 0)

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

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

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

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

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

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

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

  Аврора ОС - 1
  Synology NAS - DiskStation Manager - 1
  Другие 0