Почему в linux можно сменить пароль администратора?

25

Несколько дней назад мой друг хотел показать мне, что он может использовать мой Linux, даже если я не сообщу ему свой пароль.

Он вошел в GRUB, выбрал опцию режима восстановления. Моя первая проблема в том, что он уже имел доступ к моим файлам (только для чтения). Он попытался сделать passwd, но потерпел неудачу. Затем он сделал какое-то перемонтирование (полагаю, это дало ему права на запись), и после этого он смог изменить мой пароль.

Почему это возможно? Я лично вижу в этом проблему безопасности. Там, где я работаю, есть несколько человек, которые используют Linux, и ни у кого из них не установлен пароль BIOS или какой-либо другой вид защиты.

Илья Кристиан
источник
24
Для этого требуется физический доступ к компьютеру. Реально, если вы не используете TrueCrypt или аналогичный, если у меня есть физический доступ к вашему компьютеру, я, вероятно, так или иначе могу получить ваши данные.
Зак Б
10
Это не относится к Linux. С физическим доступом вы можете сделать то же самое на Windows, OSX или, возможно, любой ОС. Одна из причин, по которой я вижу это, заключается в том, что администратор всегда может забыть свой пароль и ему нужен способ войти в систему.
Лоран
Даже если вы не можете войти в ОС, установленную на жестком диске, вы можете просто загрузить дистрибутив liveUSB, смонтировать файловые системы и прочитать все файлы. Вы всегда можете зашифровать свой домашний каталог, хотя многие дистрибутивы имеют возможность сделать это при установке. Это защитит большинство данных от чтения. (хотя это не остановит его стирание)
naught101
3
С помощью отвертки это можно сделать практически с чем угодно ...
SamB

Ответы:

43

Пароли предназначены для предотвращения доступа извне (сеть, интернет), и они обеспечивают его. Тем не менее, физический доступ является корневым доступом.

Если вы не шифруете весь свой раздел, всегда можно загрузиться с оптического диска или флэш-накопителя и получить доступ ко всем вашим файлам. Таким образом, вы также можете изменить файлы, в которых хранятся пароли пользователей.

Тем не менее, вы можете отключить режим восстановления, который вы хотите. Этапы:

  1. Открыть /etc/default/grubв текстовом редакторе (с правами root)

  2. Раскомментируйте / добавьте следующую строку:

    GRUB_DISABLE_RECOVERY="true"
    
  3. Сохраните изменения и выполните следующую команду:

    sudo update-grub
    
Деннис
источник
4
Отключение пароля BIOS занимает немного больше времени. Вы можете выполнить сброс, установив перемычку Clear CMOS или удалив батарею CMOS. Кроме того, вы можете получить доступ к жесткому диску на любом другом компьютере.
Деннис
4
Нет. Если кто-то извлекает незашифрованный жесткий диск из вашего компьютера и подключает его к одному из своих, он может читать и записывать на жесткий диск. Это действительно не имеет значения, что вы делаете с остальной частью компьютера.
Деннис
7
Положите это в сейф.
Крис Нава
13
Если диск зашифрован, он все еще зашифрован, даже если диск украден. Вы не шифруете устройство хранения, чтобы предотвратить его кражу.
Ramhound
2
Даже если вы не показываете опцию «режим восстановления», у вас все равно есть доступ к grubконсоли. Если вы не хотите, чтобы посторонний имел доступ к консоли grub, вы должны grub
указать
6

Если кто-то может физически прикоснуться к вашей машине, он может войти.

Самый простой способ - загрузить Linux на USB-накопитель и загрузиться с USB-накопителя. Вуаля, вы можете просматривать родную файловую систему и вносить любые изменения, которые вам нравятся.

HayekSplosives
источник
3

Всегда можно будет сменить пароль root. Всегда может случиться так, что кто-то забудет об этом. Вам необходим физический доступ к серверу (или консольный доступ при виртуализации), чтобы войти в режим восстановления GRUB, поэтому, когда вы уже там, вы можете взять весь сервер / рабочий стол, а также вынуть жесткий диск и провести некоторые экспертизы на нем. С точки зрения безопасности это не имеет большого значения.

Вы всегда можете зашифровать свой диск, если вы хотите дополнительной безопасности. Это сделает восстановление намного сложнее.

Йерун
источник
2

Для grub 1 сделайте следующее:

  1. Откройте командную строку и введите как root grub-md5-crypt

  2. Вас просят ввести пароль, и после подтверждения пароля вы увидите хеш-значение, которое вы копируете в буфер обмена.

  3. Откройте ваш редактор по выбору и отредактируйте /boot/grub/menu.lstи добавьте в первую строку:

    password --md5 "Hashvalue"
    
  4. Сохраните файл. Hashvalue это тот, который вы получаете из команды grub-md5-sum

Для grub2 есть инструмент, который позволяет вам настроить это более просто http://sourceforge.net/projects/grubpass/ После установки просто введите:

  1. grubpassв оболочку от имени пользователя root. Программа в значительной степени говорит сама за себя.

Однако лучший способ защитить ваши данные от такого доступа - использовать полное шифрование диска.

l1zard
источник