Ваша система имеет механизмы для запуска и отладки (например, параметр init) и, вероятно, имеет механизмы безопасности, которые не позволяют нежелательным пользователям воспользоваться ими. Это особенности, а не ошибки.
Загрузчик отвечает за запуск ОС. Безопасность ОС явно не применяется в этот момент. Вы можете просто загрузить другое ядро, initrd, root fs или установить другие параметры (например, путь инициализации). Если вы хотите, чтобы пользователи не делали этого, это должно быть сделано в загрузчике.
Ваша система (вероятно, ПК, поэтому BIOS) загружает загрузчик, и, очевидно, безопасность загрузчика не распространяется на него. Если вы хотите помешать пользователям загружать биос с USB или тому подобное, вам нужно сделать это на этом уровне.
Ваша система может быть где-то на столе. Если вы хотите, чтобы пользователи не открывали компьютер и не переключали жесткий диск на свой собственный или не извлекали диск для установки его на своих машинах, вам нужно сделать это на физическом уровне. И это не помешает им взять весь стол и уехать на своем фургоне ...
Такова безопасность. Слоны все время вниз.