Как можно взломать любой Linux-сервер с помощью grub2?

45

Как можно защитить человека, получившего физический доступ к вашему компьютеру, с помощью этих шагов?

  1. Когда откроется меню grub2, нажмите e , чтобы изменить параметры запуска Linux.
  2. Изменить:

    "linux   /vmlinuz-2.6.35-23-generic root=UUID=e7f1e48d-0015-485f-be7d-836217a31312 ro   quiet splash" 
    

    в

    "linux   /vmlinuz-2.6.35-23-generic root=UUID=e7f1e48d-0015-485f-be7d-836217a31312 ro init=/bin/bash"
    
  3. Теперь у вас есть root-доступ:

    mount -o remount,rw /
    passwd user
    mount -o remount,ro / 
    sync
    
  4. перезагрузите компьютер и выиграйте.

Мой вопрос в том, как можно взломать любой Linux-сервер с помощью grub2? Я не понимаю этого факта о Linux, спасибо за ваши ответы.

    
задан Clutchy 26.10.2016 в 18:48
источник

4 ответа

104
  

Как способность человека, получившего физический доступ к вашему компьютеру, получить root [используя Grub / Bash] каким-либо образом безопасным?

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

Плюс, представьте, что ваш X-сервер сломался, и у вас больше нет графического интерфейса. Вам нужно загрузиться в консоль восстановления, чтобы исправить ситуацию, но вы не можете, потому что это небезопасно. В этом случае у вас осталась полностью сломанная система, но эй, по крайней мере, это «безопасно!»

  

Но Каз, как это возможно? Я установил пароль на моем Grub, чтобы вы не могли изменить свой init на Bash!

О, ты сделал, не так ли? Интересно, потому что это похоже на ваш фотоальбом. GRUB вообще не имеет неотъемлемого фактора безопасности. Это просто загрузчик , а не шаг в некоторой безопасной цепочке загрузки и аутентификации. «Пароль», который вы настроили, по сути, довольно прост в обходе.

Что, и что sysadmin не поддерживает загрузочный диск для них в случае чрезвычайных ситуаций?

  

Но как ?! Вы не знаете мой пароль (который полностью не является [email protected] btw)

Да, но это не мешает мне открыть компьютер и вытащить жесткий диск. Оттуда, это несколько простых шагов, чтобы смонтировать ваш диск на моем компьютере, предоставляя мне доступ ко всей вашей системе. Это также имеет огромное преимущество в обходе вашего пароля BIOS. Это, или я мог бы просто сбросить CMOS. Либо / или.

  

Итак ... как я не позволю вам получить доступ к моим данным?

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

  

Итак, могу ли я просто поместить свой компьютер в центр обработки данных или что-то еще? Это довольно безопасно, верно?

Да, они есть. Но вы забываете, что люди тоже взломаны, и, учитывая достаточно времени и подготовки, я, вероятно, мог бы попасть в этот центр обработки данных и пропустить все эти сладкие, сладкие данные с вашего компьютера. Но я отвлекся. Мы имеем дело с решениями real .

  

Хорошо, поэтому ты назвал мой блеф. Я не могу положить его в центр данных. Могу ли я просто зашифровать домашнюю папку или что-то еще?

Конечно, можно! Это ваш компьютер! Это поможет остановить меня? Ни в малейшей степени. Я могу просто заменить что-то важное, например /usr/bin/firefox , со своей собственной вредоносной программой. В следующий раз, когда вы откроете Firefox, все ваши секретные данные будут отфильтрованы на каком-то секретном сервере где-то в секрете. И ты даже не узнаешь. Или, если у меня есть частый доступ к вашей машине, я могу просто настроить вашу домашнюю папку для копирования в /usr/share/nonsecrets/home/ или любое подобное (не зашифрованное) местоположение.

  

Хорошо, как насчет полного шифрования диска?

Это ... на самом деле очень хорошо. Тем не менее, это еще не все! Я всегда могу выполнить Cold Boot Attack , используя мою надежную банку со сжатым воздухом. Или я могу просто подключить аппаратный кейлоггер на ваш компьютер. Очевидно, что это легче, чем другое, но на самом деле это не имеет значения.

В большинстве случаев vast это хорошая остановка. Может быть, пару с TPM (обсуждается ниже), и вы золотые. Если вы не разозлили трехбуквенное агентство или мотивированный хакер very , никто не сможет выполнить усилия, необходимые на этом этапе.

Конечно, я все равно могу заставить вас установить некоторые вредоносные программы / бэкдоры, предлагая вам PPA или аналогичные, но это попадает в очень темную область доверия пользователей.

  

Итак ... как iPhone настолько безопасен? Даже с физическим доступом вы не можете многое сделать.

Хорошо, да и нет. Я имею в виду, если бы я был достаточно мотивирован, я мог бы прочитать флеш-чип и получить все, что мне нужно. Но, iPhone'ы принципиально разные, поскольку они полностью заблокированы. Но в то же время вы действительно жертвуете удобством и способностью восстанавливаться после катастрофических неудач. GRUB (за исключением случаев, когда он специально разработан) not означает цепочку в системе безопасности. Фактически, большинство систем Linux имеют свои сети безопасности, которые начинают послезагрузку, поэтому после того, как GRUB закончит свою работу.

Кроме того, у iPhone есть криптографическая подпись (также обсуждаемая ниже), что сильно вредит вредоносному ПО very , чтобы проникнуть на ваш телефон через законные пути.

  

Но как насчет TPM / SmartCards / [вставить криптотехнологию здесь]?

Ну, теперь вы объединяете физическую безопасность в уравнение, она все усложняется. Но на самом деле это не решение, потому что TPM относительно слабы, и все шифрование не происходит на чипе.Если ваш TPM (так или иначе) достаточно силен там, где он делает шифрование на самом чипе (некоторые очень причудливые жесткие диски имеют что-то подобное), ключ никогда не будет показан, и такие вещи, как атаки с холодным ботинком, невозможны. Однако ключи (или необработанные данные) могут по-прежнему присутствовать в системной шине, то есть они могут быть перехвачены.

Тем не менее, мой аппаратный кейлоггер все еще может получить ваш пароль, и я могу легко загрузить некоторые вредоносные программы на ваш компьютер, а также воспользоваться эксплойтом Firefox, о котором я упоминал ранее. Все, что мне нужно, это оставить свой дом / компьютер на час.

Теперь, если вы возьмете с собой свой TPM / смарт-карту / все, и все шифрование действительно выполняется на чипе (это означает, что ваш ключ вообще не хранится в ОЗУ), то для меня практически невозможно вообще зайдите, если вы (пользователь) не соскользнули и ничего не забыли. То есть, если я не найду способ прочитать (незашифрованный) ключ из системной шины.

  

Но что, если у меня есть какая-то форма криптографической / цифровой подписи для всех моих программ, чтобы убедиться, что они являются законными?

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

Однако это еще не идеальный метод! Применение цифровой подписи не остановит аппаратный кейлоггер для одного. Он также должен быть абсолютно без ошибок, а это значит, что я не могу найти эксплойт, который позволяет мне загружать собственный сертификат в хранилище сертификатов вашего компьютера. Кроме того, это означает, что каждый исполняемый файл в вашей системе должен быть подписан . Если вы не захотите вручную пройти и все это сделать, будет очень сложно найти пакеты Apt и т. Д., Которые имеют цифровые подписи на всех. В аналогичном ключе это блокирует законное использование для неподписанных исполняемых файлов, а именно восстановления. Что делать, если вы нарушите что-то важное, и у вас нет (подписанного) исполняемого файла, чтобы его исправить? Ну, идет ваша система.

В любом случае, усилие сделать это на Linux в основном полностью заброшено и больше не работает для новых ядер , поэтому вам нужно будет создать свой собственный.

  

Таким образом, вы не можете избавить вас от моего компьютера?

Эффективно, да, извините. Если у меня есть физический доступ и достаточная мотивация, всегда можно попасть в систему. Нет исключений.

В действительности, однако, большинство злых людей не будут пытаться зайти так далеко только для некоторых картин кошек. Как правило, просто полное шифрование диска (или даже запуск Linux!) Достаточно, чтобы у большинства сценаристов-девичников не было двух секунд славы.

TL; DR: просто не позволяйте людям, которых вы не доверяете, рядом с вашим компьютером. Это обычно достаточно хорошо.

    
ответ дан Kaz Wolfe 26.10.2016 в 18:59
источник
17

Если вы хотите, чтобы он был привязан, используйте пароль . По ссылке:

Замечания по защите паролем GRUB 2

  

Grub 2 может устанавливать требования к паролю:

  • Все пункты меню
  • Конкретные пункты меню
  • Для конкретных пользователей: например, пользователь «Jane» может получить доступ к Ubuntu, но не к режиму восстановления Windows, доступ к которому доступен только «John», суперпользователю.
  • Администратор должен включить защиту паролем вручную, отредактировав системные файлы GRUB 2.

  • Пользователи и пароли должны быть идентифицированы в файле /etc/grub.d/00_header или другом файле сценария GRUB 2.

  • Если не требуется универсальная защита всех пунктов меню, необходимо указать конкретные записи:

    • Вручную, отредактировав скрипты Grub 2 /etc/grub.d/ , такие как 10_linux и 30_os-prober
    • Вручную, отредактировав пользовательский файл конфигурации, созданный пользователем.

    • Любой из вышеперечисленных методов позволяет GRUB 2 автоматически добавлять требования к паролю в файл конфигурации (grub.cfg), когда выполняется обновление-grub.

    • Вручную, отредактировав /boot/grub/grub.cfg . Редактирование этого файла будет удалено при запуске update-grub , и защита пароля будет потеряна.

  • Если какая-либо форма защиты паролем GRUB 2 включена, имя и пароль суперпользователя необходимы для доступа к командной строке GRUB 2 и режимам редактирования меню.

  • Имя пользователя и / или пароль не должны совпадать с именем / паролем входа в систему Ubuntu.
  • Если не используется функция шифрования паролей GRUB 2, пароль сохраняется в виде обычного текста в читаемом файле. См. Раздел «Шифрование паролей» для руководства по использованию этой функции.

По умолчанию (!) в этом случае юзабилити превосходит безопасность. Если вы не можете доверять людям, которые находятся вокруг вас, всегда держите машину с собой. Люди, которые нуждаются в большей безопасности, как правило, шифруют всю систему, что делает необходимым обязательный пароль.     

ответ дан Rinzwind 26.10.2016 в 19:03
3

Ваш намеренный взлом начинается с этого:

  1. Когда откроется меню grub2, нажмите «e», чтобы изменить параметры запуска Linux.

Но вы можете защитить паролем параметр e , как описано здесь: Как добавить защиту паролей GRUB к процессу загрузки ОС, а не при редактировании параметров загрузки

Вы можете сделать дополнительный шаг для шифрования пароля grub, как описано в ссылке. Действительно, возможно, 3% населения (дикая догадка), использующее Linux / Ubuntu дома, является хорошей идеей для системных администраторов защищать от функции e на производственных системах на работе. Я предполагаю, что если Ubuntu будет использоваться на работе, то 30-40% будут использовать его дома и, возможно, 10% из них будут изучать, как сделать e на своих домашних системах.

Благодаря вашему вопросу они только что узнали больше. Однако, используя ссылку выше, системные администраторы имеют другую задачу в своем списке дел для защиты производственных сред.

    
ответ дан WinEunuuchs2Unix 27.10.2016 в 01:54
0

Чтобы сделать grub secure, вам необходимо защитить доступ к нему. Это можно сделать просто с помощью пароля на жестком диске, и я говорю здесь о защите диска, где он хранится в прошивке самого диска. Диск не может быть прочитан или записан. Следовательно, вы не только недоступны без пароля, но и ваши данные.

Поскольку пароль хранится на самом диске, перемещение его в другую систему не поможет хакеру.

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

    
ответ дан Scooby-2 02.11.2016 в 05:39