Сетевая загрузка UEFI: признаки атаки и контроль событий

📋 Кратко

Уязвимость CVE-2026-97631 затрагивает драйвер сетевой загрузки UEFI и проявляется только в момент PXE-старта. Специальный ICMP-пакет может вызвать переполнение буфера до запуска операционной системы. Разбираем признаки атаки, источники событий, ограничения журналов и порядок проверки серверов без инструкций по эксплуатации.

⏱ 10 минут чтения│сложность

Сетевая загрузка помогает запускать сервер без локального диска. Система получает необходимые файлы через сеть. Такой режим используют для удалённого администрирования и централизованной установки.

Он создаёт отдельную границу риска. До запуска операционной системы сервер уже принимает сетевые данные. В этот момент ещё не работают обычные средства защиты хоста.

Главное: CVE-2026-97631 затрагивает UEFI-драйвер PXE. Атака возможна только во время сетевой загрузки. Серверы, которые всегда запускаются с локального диска, под описанный сценарий не подпадают.
Уязвимость возникает до запуска операционной системы
Уязвимость возникает до запуска операционной системы

🔍 Что происходит при сетевой загрузке UEFI

UEFI — это программная среда, которая запускается раньше операционной системы. Она проверяет оборудование и выбирает источник старта. Затем она передаёт управление загрузочному компоненту.

Повреждение памяти открывает путь к привилегированному коду
Повреждение памяти открывает путь к привилегированному коду

При PXE сервер получает загрузочные файлы через сеть. Для этого прошивка использует специальный драйвер. Он обменивается данными с сетевой инфраструктурой до запуска Windows или Linux.

В цепочке участвуют сетевые ответы и загрузочный образ. Ошибка на этом этапе влияет не только на доступность. Она может повлиять на саму среду, которая запускает операционную систему.

Уязвимость CVE-2026-97631 связана с драйвером UefiPxeBcDxe. Он отвечает за сетевую загрузку PXE. Проблема находится в прошивке, а не в прикладной программе.

Практический совет: составьте список серверов с включённым PXE. Отдельно отметьте узлы, которые запускаются только с локального диска.

⚠️ В чём состоит уязвимость CVE-2026-97631

Ошибка находится в обработке сообщений ICMP. Такие сообщения передают сведения о проблемах доставки сетевых пакетов. Прошивка записывает их содержимое во внутренний буфер.

Атака возможна только во время активного PXE-старта
Атака возможна только во время активного PXE-старта

Размер буфера составляет 504 байта. Код неправильно ограничивает объём данных при записи. Лишняя информация может попасть за пределы выделенной области памяти.

Проблема затрагивает обработчики IPv4 и IPv6. Поэтому проверять нужно оба варианта сетевого обмена. Наличие только одного адресного протокола не исключает риск автоматически.

Переполнение может повредить соседние структуры прошивки. В простом сценарии это приводит к сбою загрузки. При подготовке под конкретную сборку возможен запуск произвольного кода на этапе DXE.

Этап DXE проходит до старта операционной системы. Код на нём получает максимальные привилегии процессора. Обычные средства защиты ОС в этот момент ещё не работают.

Важное ограничение: наличие уязвимого кода само по себе не означает успешную атаку. Сервер должен проходить PXE-загрузку в момент воздействия. Злоумышленнику также требуется понимать особенности конкретной версии UEFI.

Практический совет: уточните у производителя статус прошивки для каждой модели. Не переносите вывод о наличии проблемы с одной версии на другую.

🎯 Когда атака становится возможной

Уязвимость не работает при любом включённом сервере. Ключевое условие — активная загрузка по PXE. Сервер должен находиться в нужной фазе запуска.

Расследование требует связать события разных инфраструктурных журналов
Расследование требует связать события разных инфраструктурных журналов

Атакующему не нужны учётные данные прошивки. Специальный ICMP-пакет может достичь нужного адреса из удалённой сети. Это возможно только при подходящей сетевой доступности.

Описанный сценарий отличается от обычной атаки на веб-сервис. Злоумышленник не ждёт запуска приложения. Он пытается воздействовать на систему до появления операционной системы.

Успех зависит от точного знания целевой платформы. Разные производители используют разные варианты UEFI. Поэтому универсальный способ развития атаки отсутствует.

Особое внимание нужно уделить средам с удалённым управлением. Там сетевой старт может включаться для обслуживания. После завершения работ настройка иногда остаётся активной.

Практический совет: проверьте, действительно ли каждому серверу нужен PXE. Для ненужных узлов отключите сетевой старт штатными средствами управления.

📡 Как отличить PXE от других вариантов запуска

PXE — это режим сетевой загрузки через сетевой адаптер. Сервер получает стартовые файлы вместо чтения локального накопителя. В контексте CVE-2026-97631 важен именно этот режим.

До обновления снизьте риск отключением ненужного сетевого старта
До обновления снизьте риск отключением ненужного сетевого старта

UEFI также поддерживает другие способы получения загрузочных компонентов. Например, инфраструктура может использовать сетевой обмен через HTTP Boot. Наличие такой функции не доказывает, что сервер использует PXE.

Администратор должен разделять название функции и фактический сценарий запуска. В меню прошивки могут быть включены несколько источников. В журнале управления оборудованием нужно смотреть реальный порядок загрузки.

Если сервер всегда выбирает локальный диск, описанное окно атаки не возникает. Если он иногда переходит к сети, риск зависит от момента старта. Поэтому одной проверки настроек недостаточно.

Полезно фиксировать источник загрузки при каждом перезапуске. Такая запись помогает сопоставить сетевые события и время работы UEFI. Она также показывает неожиданные изменения порядка старта.

Практический совет: документируйте режим запуска каждого узла. Отдельно отмечайте PXE, локальный диск и другие сетевые варианты.

🧭 Какие признаки указывают на атаку

Самый заметный признак — сбой сервера во время PXE-загрузки. Он может выглядеть как обычная ошибка сетевого старта. Поэтому важны точное время и состояние оборудования.

Постоянный мониторинг обнаруживает редкие изменения цепочки запуска
Постоянный мониторинг обнаруживает редкие изменения цепочки запуска

Другой сигнал — неожиданный перезапуск в момент сетевой загрузки. Важно проверить, совпадает ли он с необычными ICMP-событиями. Простая корреляция по времени уже сокращает область поиска.

Подозрение вызывает изменение порядка загрузки без плановых работ. То же относится к неожиданному включению PXE. Такие изменения требуют проверки журнала управления оборудованием.

Риск повышается, если сервер получает сетевой старт без заявки администратора. Важен и неизвестный источник загрузочных данных. В этом случае нужно сравнить адреса и образы с эталонной конфигурацией.

Один симптом не доказывает компрометацию. Сбой может возникнуть из-за неисправной сети или ошибки прошивки. Вывод делают только после сопоставления нескольких источников.

СобытиеВозможный признакЧто проверить
PXE-стартНеожиданный запуск по сетиПорядок загрузки и заявку на работы
ICMP во время стартаСбой или перезапускВремя пакетов и состояние узла
Изменение прошивкиНовая версия без планового окнаИсточник обновления и журнал управления
Новый загрузочный образНесовпадение с эталономХэш и происхождение файла

Практический совет: заведите отдельное правило для неожиданных PXE-стартов. Сохраняйте события минимум до завершения проверки инцидента.

🛠️ Где искать следы сетевой атаки

UEFI часто оставляет меньше событий, чем операционная система. Это ограничивает ретроспективный анализ. Поэтому данные нужно собирать по всей цепочке сетевого старта.

Начните с журналов DHCP. Они показывают выдачу сетевых параметров и время обращения. Эти записи помогают понять, кто инициировал сетевой обмен.

Затем проверьте сервер загрузки. Для PXE важны события TFTP или другого используемого компонента. Ищите неизвестные адреса, необычное время и запросы вне расписания.

Если инфраструктура применяет HTTP Boot, проверяйте журнал HTTP-сервера. Сопоставляйте обращения с именем узла и временем запуска. Неизвестный клиент требует отдельной проверки.

DNS-журналы помогают связать имя и адрес загрузочного узла. Данные коммутаторов показывают порт и сегмент, откуда пришёл трафик. Средства защиты конечных точек могут подтвердить последующее состояние ОС.

Система управления оборудованием хранит сведения о перезапусках и настройках. В ней нужно искать изменения порядка загрузки и обновления прошивки. Такие данные особенно важны при отсутствии подробного журнала UEFI.

Ограничение журналирования: прошивка может не сохранить все сетевые события. После сбоя часть данных может исчезнуть. Синхронизация времени на DHCP, DNS, серверах загрузки, коммутаторах и системах управления обязательна для точного сопоставления.

Практический совет: заранее проверьте, где хранятся журналы DHCP, DNS, TFTP, HTTP и управления оборудованием. Убедитесь, что часы всех компонентов показывают одно время.

🔬 Как проводить проверку после подозрительного события

Сначала зафиксируйте состояние сервера. Не меняйте настройки до сохранения журналов. Запишите время сбоя, источник загрузки и состояние консоли.

Затем установите, проходил ли сервер PXE-загрузку. Сверьте сведения из системы управления и журналов DHCP. Если PXE не использовался, описанный сценарий становится маловероятным.

После этого сопоставьте ICMP-события с моментом запуска. Ищите необычный трафик перед сбоем. Не делайте вывод только по факту наличия ICMP.

Следующий шаг — проверка версии UEFI. Сравните её с данными производителя. Учитывайте конкретную модель, сборку и компонент сетевой загрузки.

Проверьте загрузочные файлы. Сравните их хэши с утверждённым эталоном. Уточните, не менялись ли сертификаты и параметры доверенной загрузки.

Если есть признаки вмешательства, изолируйте сервер от обычной эксплуатации. Сохраните копии журналов и сведения о прошивке. Восстановление выполняйте только после определения доверенного источника обновления.

Практический совет: оформите проверку как последовательность фактов. Отдельно запишите подтверждённые события, предположения и пробелы в данных.

🛡️ Как снизить риск до обновления прошивки

Первое временное действие — отключить ненужную PXE-загрузку. Это убирает главное условие описанного сценария. Сервер продолжает работать с локального диска.

Если сетевой старт необходим, ограничьте его рабочей инфраструктурой. Проверьте, какие узлы имеют доступ к загрузочному сегменту. Отдельно контролируйте маршруты к адресам серверов.

Загрузочные серверы нужно защищать так же внимательно, как критичные узлы. Их образы должны иметь понятное происхождение. Изменения файлов нужно фиксировать и проверять.

Secure Boot снижает риск запуска неподписанных компонентов. Однако он не устраняет ошибку в самом драйвере UEFI. Проверка доверия к образу не заменяет обновление уязвимой прошивки.

Контроль хэшей помогает заметить подмену загрузочного файла. Такой контроль должен работать вместе с проверкой источника. Совпадение хэша имеет смысл только при доверенном эталоне.

Не стоит считать обычное обновление Linux исправлением проблемы. Уязвимость работает до запуска ОС. Нужна проверка именно прошивки и сетевого режима запуска.

Практический совет: временно отключите PXE там, где он не нужен. Для остальных узлов подготовьте список разрешённых загрузочных серверов и эталонных образов.

🔐 Что проверить в Secure Boot и порядке загрузки

Secure Boot контролирует доверие к загрузочным компонентам. Он важен для защиты цепочки запуска. Но CVE-2026-97631 возникает раньше обычной работы операционной системы.

Поэтому Secure Boot рассматривается как один слой защиты. Он не заменяет исправление кода UEFI. Нельзя считать сервер защищённым только из-за включённого флага.

Проверьте, какие ключи и сертификаты использует прошивка. Зафиксируйте ожидаемое состояние в инвентарной записи. Любое изменение должно иметь владельца и причину.

Отдельно проверьте порядок загрузки. Локальный диск должен оставаться приоритетным там, где PXE не нужен. Неожиданный сетевой источник может указывать на ошибку администрирования или вмешательство.

Контролируйте версии UEFI централизованно. Для каждой модели нужен свой статус исправления. Разные реализации могут вести себя по-разному даже при общей основе TianoCore EDK II.

Практический совет: сохраните эталон настроек Secure Boot и порядка загрузки. Сравнивайте с ним состояние после каждого планового обслуживания.

📋 Чек-лист реагирования для администратора

Начните с подтверждения фактов. Сервер действительно загружается по PXE? Есть ли сбой в момент старта? Совпадает ли это время с необычным ICMP-обменом?

Затем определите границы события. Проверьте остальные серверы той же модели и версии UEFI. Особое внимание уделите узлам с активным сетевым стартом.

  • Сохраните журналы DHCP, DNS, TFTP или HTTP.
  • Зафиксируйте события коммутаторов и системы управления оборудованием.
  • Запишите модель, версию и сборку UEFI.
  • Проверьте порядок загрузки и состояние Secure Boot.
  • Сравните хэши загрузочных образов с эталоном.
  • Определите, нужен ли PXE каждому затронутому серверу.
  • Проверьте доступность исправления у производителя.
  • После обновления повторно проверьте настройки и журналы.

Если есть признаки вмешательства, не ограничивайтесь перезапуском. Перезапуск может удалить часть следов. Сначала сохраните доступные данные и зафиксируйте состояние оборудования.

Если сервер принадлежит провайдеру, клиент не всегда может обновить UEFI самостоятельно. В таком случае нужно проверить статус прошивки на стороне оператора. Для виртуальной машины важна защита физического узла.

Приоритет реагирования: отключите ненужный PXE, сохраните журналы, проверьте версию UEFI и сопоставьте время ICMP-событий с загрузкой. Только после этого переходите к обновлению или восстановлению.

Практический совет: превратите чек-лист в процедуру для дежурной смены. В ней должны быть ответственные, источники данных и порядок сохранения доказательств.

📈 Почему мониторинг важнее одной проверки

Уязвимость может оставаться незаметной, если PXE используется редко. Плановая инвентаризация не показывает, что произошло во время ночного запуска. Нужна связка настроек и событий.

Полезно отслеживать каждый неожиданный переход к сетевой загрузке. Событие должно содержать сервер, время и выбранный источник. Эти данные позволяют быстро отделить сбой от подозрительной активности.

Система мониторинга также должна видеть изменения прошивки. Важны новая версия, инициатор и результат операции. Такие сведения помогают восстановить хронологию.

Отдельное правило нужно для неизвестного загрузочного сервера. Его обращение может быть ошибкой конфигурации. Но до проверки такой сигнал нельзя считать безопасным.

Регулярная сверка хэшей защищает от незаметной подмены образа. Проверка должна выполняться до запуска работ и после них. Результат нужно сохранять в журнале.

Практический совет: настройте оповещения на неожиданный PXE, изменение UEFI и новый источник загрузочных файлов. Проверяйте эти сигналы вместе, а не по отдельности.

✅ Что сделать прямо сейчас

Сначала определите, какие серверы используют PXE. Затем найдите их версии UEFI и владельцев. Без этой инвентаризации невозможно оценить реальный охват.

После этого проверьте, есть ли у производителя исправление. Учитывайте конкретную модель и сборку. Общего патча для всех реализаций UEFI может не быть.

До обновления отключите ненужный сетевой старт. Для обязательного PXE ограничьте инфраструктуру и контролируйте загрузочные образы. Не оставляйте временную настройку без срока пересмотра.

Соберите журналы DHCP, DNS, TFTP или HTTP, коммутаторов и управления оборудованием. Проверьте синхронизацию времени. Сохраните данные до возможного перезапуска сервера.

Наконец, проверьте Secure Boot, порядок загрузки и хэши образов. Эти меры не исправляют уязвимый драйвер. Но они помогают обнаружить изменения и снизить риск подмены.

Практический совет: сегодня создайте одну карточку на каждый сервер. В ней укажите режим загрузки, версию UEFI, источник образа, состояние Secure Boot и дату последней проверки.

📚 Читайте также

📖 Термины

CVE (Common Vulnerabilities and Exposures) · Threat Hunting · Индикаторы компрометации (IoC) · Инцидент-реагирование · Сетевой трафик

🔗 Источники