Уязвимость CVE-2026-97631 обнаружили в EDK II — широко используемом открытом коде для создания прошивок UEFI. Проект TianoCore оценил её в 9,5 балла из 10. Ошибка срабатывает только при загрузке компьютера по сети через PXE: в этот короткий промежуток атакующий может нарушить запуск, а при более сложном сценарии — выполнить свой код ещё до загрузки операционной системы и проверок Secure Boot.

Проблема находится в коде сетевой загрузки IPv4 и IPv6. Во время PXE-запуска прошивка принимает ICMP-сообщения об ошибках и копирует их в область памяти размером 504 байта. Проверки длины устроены неверно: сообщение большего размера способно перезаписать соседнюю память данными, выбранными атакующим. Для атаки не нужны пароль или прежний доступ к компьютеру, но отправитель должен иметь возможность связаться с ним по сети именно во время загрузки.
Самый простой результат — зависание: компьютер не завершает загрузку. Выполнить произвольный код гораздо труднее. По данным TianoCore, атакующий, знающий точную сборку прошивки, может создать «поддельное событие», которое заставит её выполнить его код. Эксплойт придётся подгонять под конкретную сборку. Если он сработает, код запустится внутри прошивки до того, как Secure Boot и другие проверки успеют что-либо проверить. Сам по себе он не переживёт перезагрузку, но однократного запуска может хватить, чтобы установить программу, активирующуюся при следующих стартах.
Уязвимый код присутствует в EDK II вплоть до
EDK II служит основой или источником кода для прошивок многих производителей. Среди названных в сообщениях — независимые разработчики BIOS AMI, Insyde и Phoenix, а также Microsoft Project Mu, защищённая модификация EDK II. Сколько устройств с уязвимым кодом уже выпущено, неизвестно. Intel сообщила Ars Technica, что не знает о затронутых «коммерческих продуктах, которые сейчас поддерживаются в рамках программы безопасности», и что не включает уязвимую функциональность EDK2 в свой эталонный код. При этом её могут добавить производитель платы или сборщик системы. Arm заявила, что ошибка «не применима напрямую к портфелю продуктов Arm», хотя прошивки самой Arm и Intel также используют EDK II. Red Hat отмечает свои пакеты
Исправление уже внесено в исходный код EDK II: вместо переполнения буфера длинные сообщения теперь обрезаются до 504 байт. Оно попало в основную ветку разработки 15 октября. Однако 28 октября, когда The Hacker News проверила теги выпусков, стабильная версия
Джесси Майкл, ведущий исследователь компании Eclypsium, занимающейся безопасностью прошивок, сказал Ars Technica, что проблему «можно устранить обычным исправлением кода». В отличие от обходов Secure Boot BootHole и BlackLotus, здесь, по его словам, не требуется отзывать сертификаты или ключи. До выхода обновления официального обходного решения нет. Если PXE не нужен, сетевую загрузку можно отключить. Ars Technica также советует следить за сетевым трафиком и журналами во время запуска компьютеров.
Уязвимость обнаружили Алекс Матросов из Anthropic и Дэн Холмс-Митра из Google. Координированное раскрытие планировали на январь 2027 года, но 28 сентября в публичном запросе на изменение EDK II, одобренном инженером AMI, уже описали проблему с номером CVE и приложили исправление. После того как исследователи заметили публикацию, TianoCore выпустила уведомление 22 октября, на несколько недель раньше запланированного срока. Публичный патч теперь позволяет специалистам изучить механизм ошибки и разрабатывать эксплойты.
Свидетельств эксплуатации CVE-2026-97631 на момент публикации не было. Уязвимость не значилась в каталоге известных эксплуатируемых уязвимостей CISA по состоянию на обновление от 27 октября; исследователи также не сообщали о замеченных атаках. По оценке Ars Technica, это не способ самостоятельно проникнуть в сеть. Более реалистичны сценарии с инсайдером или злоумышленником, который уже получил ограниченный доступ к локальной сети и пытается продвинуться глубже. Х. Ди Мур, создатель Metasploit и директор по исследованиям компании Dragos, предупредил, что атакующий поблизости от компьютера или сервера может перехватить управление во время загрузки, когда прошивка ещё взаимодействует с чувствительными компонентами, например TPM. Это, сказал он, «может помочь взломать шифрование диска» при кратковременном доступе к сети; при краже оборудования такой сценарий был бы ещё проще.
Сетевая загрузка EDK II уже становилась источником серьёзных проблем. В январе 2024 года исследователи раскрыли PixieFail — набор из девяти уязвимостей в той же части кода, также доступных во время PXE-запуска. После этого проекты по поиску ошибок с помощью фаззинга проверяли сетевую загрузку, но CVE-2026-97631 они не обнаружили.

Изображение носит иллюстративный характер
Проблема находится в коде сетевой загрузки IPv4 и IPv6. Во время PXE-запуска прошивка принимает ICMP-сообщения об ошибках и копирует их в область памяти размером 504 байта. Проверки длины устроены неверно: сообщение большего размера способно перезаписать соседнюю память данными, выбранными атакующим. Для атаки не нужны пароль или прежний доступ к компьютеру, но отправитель должен иметь возможность связаться с ним по сети именно во время загрузки.
Самый простой результат — зависание: компьютер не завершает загрузку. Выполнить произвольный код гораздо труднее. По данным TianoCore, атакующий, знающий точную сборку прошивки, может создать «поддельное событие», которое заставит её выполнить его код. Эксплойт придётся подгонять под конкретную сборку. Если он сработает, код запустится внутри прошивки до того, как Secure Boot и другие проверки успеют что-либо проверить. Сам по себе он не переживёт перезагрузку, но однократного запуска может хватить, чтобы установить программу, активирующуюся при следующих стартах.
Уязвимый код присутствует в EDK II вплоть до
edk2-stable202608 включительно — последней стабильной версии, указанной в сообщениях об ошибке; она датирована 21 августа. В стандартной сборке EDK II сетевая загрузка PXE включена по умолчанию. Тем, кто загружает компьютеры только с локального диска, эта ошибка не угрожает. В первую очередь проблема касается организаций с сетевой загрузкой серверов и оборудования дата-центров. По данным The Hacker News, уязвимый код появился в проекте после изменения, внесённого в ноябре 2010 года. EDK II служит основой или источником кода для прошивок многих производителей. Среди названных в сообщениях — независимые разработчики BIOS AMI, Insyde и Phoenix, а также Microsoft Project Mu, защищённая модификация EDK II. Сколько устройств с уязвимым кодом уже выпущено, неизвестно. Intel сообщила Ars Technica, что не знает о затронутых «коммерческих продуктах, которые сейчас поддерживаются в рамках программы безопасности», и что не включает уязвимую функциональность EDK2 в свой эталонный код. При этом её могут добавить производитель платы или сборщик системы. Arm заявила, что ошибка «не применима напрямую к портфелю продуктов Arm», хотя прошивки самой Arm и Intel также используют EDK II. Red Hat отмечает свои пакеты
edk2 в Red Hat Enterprise Linux 8, 9 и 10 как уязвимые и пока не исправленные; аналогичный статус указан у SUSE и Debian. AMD, Phoenix Technologies, AMI, Microsoft, Amazon и TianoCore до публикации не ответили на вопросы журналистов. Исправление уже внесено в исходный код EDK II: вместо переполнения буфера длинные сообщения теперь обрезаются до 504 байт. Оно попало в основную ветку разработки 15 октября. Однако 28 октября, когда The Hacker News проверила теги выпусков, стабильная версия
edk2-stable202608 всё ещё была старше исправления, а в уведомлении TianoCore статус значился как «Пока не исправлено». Microsoft Project Mu включила патч в ветки выпусков и создала помеченные сборки 26 октября. Владельцы серверов не могут установить исправление напрямую из исходников: им нужно дождаться обновления BIOS или UEFI от производителя оборудования. Джесси Майкл, ведущий исследователь компании Eclypsium, занимающейся безопасностью прошивок, сказал Ars Technica, что проблему «можно устранить обычным исправлением кода». В отличие от обходов Secure Boot BootHole и BlackLotus, здесь, по его словам, не требуется отзывать сертификаты или ключи. До выхода обновления официального обходного решения нет. Если PXE не нужен, сетевую загрузку можно отключить. Ars Technica также советует следить за сетевым трафиком и журналами во время запуска компьютеров.
Уязвимость обнаружили Алекс Матросов из Anthropic и Дэн Холмс-Митра из Google. Координированное раскрытие планировали на январь 2027 года, но 28 сентября в публичном запросе на изменение EDK II, одобренном инженером AMI, уже описали проблему с номером CVE и приложили исправление. После того как исследователи заметили публикацию, TianoCore выпустила уведомление 22 октября, на несколько недель раньше запланированного срока. Публичный патч теперь позволяет специалистам изучить механизм ошибки и разрабатывать эксплойты.
Свидетельств эксплуатации CVE-2026-97631 на момент публикации не было. Уязвимость не значилась в каталоге известных эксплуатируемых уязвимостей CISA по состоянию на обновление от 27 октября; исследователи также не сообщали о замеченных атаках. По оценке Ars Technica, это не способ самостоятельно проникнуть в сеть. Более реалистичны сценарии с инсайдером или злоумышленником, который уже получил ограниченный доступ к локальной сети и пытается продвинуться глубже. Х. Ди Мур, создатель Metasploit и директор по исследованиям компании Dragos, предупредил, что атакующий поблизости от компьютера или сервера может перехватить управление во время загрузки, когда прошивка ещё взаимодействует с чувствительными компонентами, например TPM. Это, сказал он, «может помочь взломать шифрование диска» при кратковременном доступе к сети; при краже оборудования такой сценарий был бы ещё проще.
Сетевая загрузка EDK II уже становилась источником серьёзных проблем. В январе 2024 года исследователи раскрыли PixieFail — набор из девяти уязвимостей в той же части кода, также доступных во время PXE-запуска. После этого проекты по поиску ошибок с помощью фаззинга проверяли сетевую загрузку, но CVE-2026-97631 они не обнаружили.