«Надёжно зашифровано» — сказал Linux и включил отладочную консоль по ESC
NewsMakerSecure Boot проверяет подписи. Но не там, где надо — и это катастрофа.
Исследователь из ERNW Александр Мох обнаружил серьёзную уязвимость в системе загрузки современных Linux-дистрибутивов, включая Ubuntu 25.04 и Fedora 42. Несмотря на полное шифрование дисков, Secure Boot и пароли на загрузчик, локальный злоумышленник может обойти все защитные меры и внедрить персистентное вредоносное ПО.
Проблема кроется в отладочной оболочке, которая автоматически активируется при нескольких ошибках ввода пароля на этапе расшифровки корневого раздела. Через эту оболочку можно получить доступ к initramfs — временной файловой системе, используемой ядром на раннем этапе загрузки. И именно здесь атакующий может внедрить вредоносный код, который выполнится при следующем старте системы.
На Ubuntu 25.04 злоумышленник может вызвать отладочную оболочку initramfs: достаточно прервать графический ввод пароля клавишей ESC, трижды нажать Ctrl+C, подождать 30 секунд, отклонить повторный запрос и затем шесть раз подряд нажать Ctrl+C. Через эту оболочку можно подключить внешний носитель с нужными утилитами и внести изменения в initramfs — без нарушения цифровых подписей Secure Boot, которые проверяют только ядро и модули.
Secure Boot проверяет только ядро и модули, но не initramfs. Это позволяет атакующему распаковать initramfs, добавить вредоносные хуки и запаковать его обратно — всё это без каких-либо предупреждений от системы.
Для реализации атаки нужен лишь физический доступ к компьютеру и USB-накопитель с минимальным набором утилит. Протестированные системы работали с корневыми разделами, зашифрованными по умолчанию, но сценарий воспроизводим и на других дистрибутивах.
Мох предлагает простое решение: изменить параметры загрузки ядра. Для Ubuntu следует добавить
Также рекомендуется установить пароль не только на изменение записей загрузчика , но и на сам процесс загрузки. Дополнительно можно включить аппаратное шифрование SSD или зашифровать загрузочный раздел с помощью LUKS — меры, редко встречающиеся в типовых гайдах по защите Linux.
Исследователь подчеркивает: несмотря на простоту обхода, уязвимость остаётся недооценённой. Она не требует сложных инструментов и может использоваться для установки бэкдоров, невидимых большинству защитных решений.
В долгосрочной перспективе разработчики могли бы перейти к монолитной подписанной сборке ядра и initramfs. Это закроет аналогичные векторы атак, но потребует изменений в экосистеме большинства дистрибутивов .

Исследователь из ERNW Александр Мох обнаружил серьёзную уязвимость в системе загрузки современных Linux-дистрибутивов, включая Ubuntu 25.04 и Fedora 42. Несмотря на полное шифрование дисков, Secure Boot и пароли на загрузчик, локальный злоумышленник может обойти все защитные меры и внедрить персистентное вредоносное ПО.
Проблема кроется в отладочной оболочке, которая автоматически активируется при нескольких ошибках ввода пароля на этапе расшифровки корневого раздела. Через эту оболочку можно получить доступ к initramfs — временной файловой системе, используемой ядром на раннем этапе загрузки. И именно здесь атакующий может внедрить вредоносный код, который выполнится при следующем старте системы.
На Ubuntu 25.04 злоумышленник может вызвать отладочную оболочку initramfs: достаточно прервать графический ввод пароля клавишей ESC, трижды нажать Ctrl+C, подождать 30 секунд, отклонить повторный запрос и затем шесть раз подряд нажать Ctrl+C. Через эту оболочку можно подключить внешний носитель с нужными утилитами и внести изменения в initramfs — без нарушения цифровых подписей Secure Boot, которые проверяют только ядро и модули.
Secure Boot проверяет только ядро и модули, но не initramfs. Это позволяет атакующему распаковать initramfs, добавить вредоносные хуки и запаковать его обратно — всё это без каких-либо предупреждений от системы.
Для реализации атаки нужен лишь физический доступ к компьютеру и USB-накопитель с минимальным набором утилит. Протестированные системы работали с корневыми разделами, зашифрованными по умолчанию, но сценарий воспроизводим и на других дистрибутивах.
Мох предлагает простое решение: изменить параметры загрузки ядра. Для Ubuntu следует добавить
panic=0
, для Fedora и подобных систем — rd.shell=0 rd.emergency=halt
. Это предотвратит активацию отладочной оболочки, останавливая систему при ошибке. Также рекомендуется установить пароль не только на изменение записей загрузчика , но и на сам процесс загрузки. Дополнительно можно включить аппаратное шифрование SSD или зашифровать загрузочный раздел с помощью LUKS — меры, редко встречающиеся в типовых гайдах по защите Linux.
Исследователь подчеркивает: несмотря на простоту обхода, уязвимость остаётся недооценённой. Она не требует сложных инструментов и может использоваться для установки бэкдоров, невидимых большинству защитных решений.
В долгосрочной перспективе разработчики могли бы перейти к монолитной подписанной сборке ядра и initramfs. Это закроет аналогичные векторы атак, но потребует изменений в экосистеме большинства дистрибутивов .