[devel] kernel: отключить random.trust* из коробки
Vitaly Chikunov
vt на altlinux.org
Ср Мар 5 20:42:02 MSK 2025
On Tue, Feb 11, 2025 at 09:41:12PM +0300, Andrey Savchenko wrote:
> Добрый день!
>
> Начиная с ядра 6.10 опции CONFIG_RANDOM_TRUST_CPU больше нет:
> https://www.kernelconfig.io/config_random_trust_cpu
Перед удалением там был такой текст.
-config RANDOM_TRUST_CPU
- bool "Initialize RNG using CPU RNG instructions"
- default y
- help
- Initialize the RNG using random numbers supplied by the CPU's
- RNG instructions (e.g. RDRAND), if supported and available. These
- random numbers are never used directly, but are rather hashed into
- the main input pool, and this happens regardless of whether or not
- this option is enabled. Instead, this option controls whether the
- they are credited and hence can initialize the RNG. Additionally,
- other sources of randomness are always used, regardless of this
- setting. Enabling this implies trusting that the CPU can supply high
- quality and non-backdoored random numbers.
>
> Теперь доверие к RDRAND и энтропии от загрузчика включено
> по-умолчанию:
> https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/drivers/char/random.c#n821
>
> И можно выключить только по:
> random.trust_cpu=off
> random.trust_bootloader=off
>
> Поэтому и пишу сюда, а не в devel-kernel, потому что изменения
> нужны на уровне параметров ядра со стороны загрузчика.
>
> Ввиду уязвимостей вида:
> https://github.com/google/security-research/security/advisories/GHSA-4xq7-4mgh-gp6w
>
> сложно рассматривать включенный из коробки random.trust_cpu иначе,
> чем бэкдор. У Intel дела не сильно лучше — вспоминаем материалы
> Сноудена.
>
> И с random.trust_bootloader не лучше — вспоминаем качество кода
> вендорских реализаций UEFI и количество проблем в них.
>
> Поэтому предлагаю: во всех загрузчиках (grub, efi, lilo, extlinux,
> что там ещё у нас используется) добавить в kernel cmdline:
>
> random.trust_cpu=off random.trust_bootloader=off
>
> Да, у пользователей систем с сотнями контейнеров, где systemd
> выедает всю энтропию на старте системы, могут быть задержки
> в загрузке. На таких системах пользователи могут убрать эти
> параметры ценой безопасности своих систем, что печально, т.к. обычно
> это хостинг. Правильным лечением будет исправлять systemd, но ввиду
> острой нехватки галоперидола у его ключевых разработчиков это
> представляется затруднительным.
>
> С наилучшими пожеланиями,
> Андрей Савченко
> _______________________________________________
> Devel mailing list
> Devel на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
Подробная информация о списке рассылки Devel