Уязвимость в системе инициализации finit, позволяющая войти в систему без пароля

В системе инициализации finit выявлена уязвимость (CVE-2025-29906), позволяющая войти в систему под любым пользователем без проверки пароля. Эксплуатация уязвимости осуществляется через манипуляцию с приглашением входа (login) и требует наличия доступа к консоли. Уязвимость проявляется начиная с версии 3.0 (октябрь 2017 года) и устранена в выпуске finit 4.11. Следом уже сформирован выпуск 4.12 в котором устранено переполнение буфера в плагине urandom, которое не отмечено как уязвимость.

Уязвимость затрагивает реализацию программы getty, выводящей приглашение входа в терминале и запускающей процесс /bin/login для аутентификации пользователя. Уязвимость вызвана отсутствием разделения аргументов командой строки при запуске /bin/login, что позволяло указать опцию «-f» в имени пользователя, отключающую проверку пароля (например, можно ввести «-f root» вместо «root»). Проблема решена через добавление аргумента «—» перед полем с именем пользователя:


   - execl(_PATH_LOGIN, _PATH_LOGIN, "-p", name, NULL);
   + execl(_PATH_LOGIN, _PATH_LOGIN, "-p", "--", name, NULL);

В качестве обходного пути для блокирования уязвимости рекомендуется использовать в finit внешнюю реализацию процесса getty, например,
аgetty. В дистрибутивах Debian 12, Ubuntu, Parrot, Raspbian и Trisquel пакеты с finit пока остаются без исправления уязвимости.

Cистема инициализации Finit (Fast init), развивается в качестве простой альтернативы SysV init и systemd, и получила распространение на встраиваемых системах. Проект основан на технологиях системы инициализации fastinit, используемой в Linux-прошивке нетбуков EeePC и примечательной очень быстрым процессом загрузки. Finit поддерживает уровни выполнения (runlevel) в стиле SysV init, автоматический перезапуск сервиса в случае сбоя, выполнение одноразовых обработчиков, запуск сервисов с учётом зависимостей и произвольных условий, прикрепление дополнительных обработчиков для запуска до или после выполнения сервиса, расширение функциональности через плагины, настройку ограничений через Cgroups v2.

Источник: http://www.opennet.ru/opennews/art.shtml?num=63171