1

Терпите меня, так как я Noob Linux ... У меня было задание для класса безопасности, в котором я должен был получить доступ к файлу на рабочем столе администратора.

Я изменил настройки загрузки, изменив "ro splash" на «rw init =/bin/bash», перезапустил, получил оболочку bash и изменил пароль root.

Пара вопросов:

  • Таким образом, ro монтирует корневое устройство только для чтения, а rw - для чтения и записи. Что такое "корневое устройство"?
  • Таким образом, init указывает первую программу, запускаемую после загрузки, правильно?
  • Почему я получаю оболочку bash с правами root? Аутентификация не требуется?

2 ответа2

4
  1. "Корневое" устройство определено в загрузчике и является "загрузочным" местом / диском / разделом.
  2. Да.
  3. Это функция, которая позволяет оператору машины войти и восстановить машину.

Помните, что машина безопасна только в том случае, если она не только безопасна в сети, но и физически безопасна. Многие люди забывают об этом и рассматривают только "сквозные" атаки. Машина НЕ безопасна, если только кто-то может добраться до нее. Если я смогу добраться до вашей машины, скорее всего, я смогу загрузить ее с CD-ROM/USB/ дискеты и взять ее - независимо от того, какой "пароль" у вас есть у пользователя root. ВСЕГДА защищайте физическую машину.

Matt

2
  1. root - это устройство, которое ядро видит как местоположение /. Загрузчик может использовать другое корневое устройство, загрузчик использует его для чтения ядра и начального виртуального диска в память.

  2. init - это первая (и единственная) программа пользовательского пространства, запускаемая ядром, и задача которой заключается в управлении пользовательским пространством (т. е. всем, кроме пространства ядра). Обычно вы используете либо SystemV init, либо SystemD systemd, потому что они будут обрабатывать запуск демонов, монтирование файловой системы и т.д. Если вы используете /bin/bash (все остальное также работает), эта программа выполняется после инициализации ядра само по себе, и, конечно, имеет полный доступ к каждому устройству на компьютере (т.е. доступ с правами root). Это не функция для системных администраторов, эта возможность проистекает из открытого дизайна процесса загрузки.

  3. Да, поскольку аутентификация не обрабатывается ядром, это должен делать процесс в пользовательском пространстве, обычно тот, который запущен init . Для этого init нужен root-доступ ...

Как указывал другой участник, если у вас есть доступ к оборудованию, проверка подлинности, выполняемая операционной системой (а не основанная на надежном шифровании), бесполезна. Например, вы можете загрузить компьютер с живой системой (на компакт - диске), смонтировать файловые системы и только в себя chroot системы . С полным доступом к руту ... Шифрование - это путь!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .