GRUB: Получаем полный доступ к системе | автор: Luca | 20 сентября 2010
Категория: Open Source, GNU/Linux, Security
Линукс хреново спроектирован и вот еще одно доказательство того, как легко получить root доступ к системе.
Сценарий 1: загружаемся со внешнего носителя
Ситуация, когда в BIOS заблокирована загрузка со внешних носителей, — отнюдь не редкость. Делается ли это из соображений безопасности или иных причин не так уж и важно. Важно то, что GRUB может помощь нам преодолеть этот барьер. Ниже описана последовательность действий, которая позволит нам загрузиться с флешки.
Изготавливаем загрузочную флешку любым способом, например, с помощью unetbootin.
Вставляем флешку и включаем компьютер.
Дожидаемся появления экрана grub (иногда для того, чтобы успеть его поймать, надо держать Shift).
Перед нами появляется список вариантов загрузки.
Нажимаем c и входим в интерактивный режим.
Теперь требуется указать носитель, с которого будем грузиться. Обычно (hd0) — это родной жесткий диск компьютера, а флешка становится (hd1). Выяснить, как назовется флешка в вашем случае, нетрудно просто опытным путем.
Так или иначе, вводим: root (hd1) для GRUB Legacy или set root=(hd1) для GRUB2
Просим передать управление загрузчику на указанном диске: chainloader +1
Загружаемся! boot
Если вы все сделали правильно, то в результате вы успешно загрузитесь со своей флешки, несмотря на запрет в биосе. Опытным путем мне удалось выяснить, что метод не работает если ваша материнка не умеет грузиться с usb или не опрашивает устройства при каждой загрузке (как, например, на моем eee PC при включенном Boot Booster).
Лирическое отступление: этот метод мне удалось опробовать в одном из терминальных классов нашего университета, где на компах стояли в дуалбуте винда с линуксом. Прелесть того случая в том, что факультетский сервер экспортировал /home по NFS и та терминалка была занесена в разрешенные подсети. В результате, мне удалось прочитать домашние каталоги пользователей того сервера и уйти так никем и незамеченным.
Сценарий 2: получаем консоль root'a
Опять-таки, ситуация, когда пароль рута не сообщают конечным пользователям компьютера, ни у кого удивления не вызывает. Однако все тот же GRUB поможет нам это досадное ограничение обойти. В отличие от предыдущего способа, удобного для доступа в духе «незаметно пришел, скопировал и ушел, не наследив», этот способ удобнее для внесения нужных нам изменений в установленную систему. Кроме того, для этого нам уже не нужны никакие флешки.
Аналогично, добираемся до списка вариантов загрузки.
Выбираем нужный нам вариант.
Входим в режим редактирования. Здесь есть небольшие отличия между GRUB Legacy и GRUB2. В GRUB2 после нажатия клавиши e мы сразу попадаем в режим редактирования, а в GRUB Legacy нужно нажать e первый раз, выбрать строку для редактирования и еще раз нажать e.
Выбираем строку, которая начинается со слова linux или kernel.
Удаляем из нее слова quiet и splash, если они есть, и дописываем в конец single init=/bin/bash
Если у нас GRUB2, то сразу жмем Ctrl+X, а если GRUB Legacy — Esc и потом b
В результате мы загрузимся в рутовую консоль безо всяких паролей и ненужных вопросов.
Защита?
И GRUB2, и GRUB Legacy предоставляют возможность ограничить доступ к интерактивному режиму и редактированию с помощью директивы password. Подробности описаны в руководстве по GRUB2 и GRUB Legacy. В обоих случаях манипуляции весьма просты и не требуют много времени.
Баян!
В общем, да, ничего нового я не сказал — все это можно нагуглить, например так. Однако, проблема от этого меньше не становится, наоборот. Более того, если с января в школа действительно поставят linux, то желающих считерить или просто «похакать терминалку» станет на порядок-другой больше. И не стоит недооценивать школьников — найдутся и те, кто умеют гуглить. Если же принять во внимание лирическое отступление, которое я сделал в первой части, то тут еще и поле для утечки данных. Думаю, каждый сможет придумать еще пару способов применения.
источник
Прочитано 7857 раз и оставлено 265 комментариев.
Линукс хреново спроектирован и вот еще одно доказательство того, как легко получить root доступ к системе.
Сценарий 1: загружаемся со внешнего носителя
Ситуация, когда в BIOS заблокирована загрузка со внешних носителей, — отнюдь не редкость. Делается ли это из соображений безопасности или иных причин не так уж и важно. Важно то, что GRUB может помощь нам преодолеть этот барьер. Ниже описана последовательность действий, которая позволит нам загрузиться с флешки.
Изготавливаем загрузочную флешку любым способом, например, с помощью unetbootin.
Вставляем флешку и включаем компьютер.
Дожидаемся появления экрана grub (иногда для того, чтобы успеть его поймать, надо держать Shift).
Перед нами появляется список вариантов загрузки.
Нажимаем c и входим в интерактивный режим.
Теперь требуется указать носитель, с которого будем грузиться. Обычно (hd0) — это родной жесткий диск компьютера, а флешка становится (hd1). Выяснить, как назовется флешка в вашем случае, нетрудно просто опытным путем.
Так или иначе, вводим: root (hd1) для GRUB Legacy или set root=(hd1) для GRUB2
Просим передать управление загрузчику на указанном диске: chainloader +1
Загружаемся! boot
Если вы все сделали правильно, то в результате вы успешно загрузитесь со своей флешки, несмотря на запрет в биосе. Опытным путем мне удалось выяснить, что метод не работает если ваша материнка не умеет грузиться с usb или не опрашивает устройства при каждой загрузке (как, например, на моем eee PC при включенном Boot Booster).
Лирическое отступление: этот метод мне удалось опробовать в одном из терминальных классов нашего университета, где на компах стояли в дуалбуте винда с линуксом. Прелесть того случая в том, что факультетский сервер экспортировал /home по NFS и та терминалка была занесена в разрешенные подсети. В результате, мне удалось прочитать домашние каталоги пользователей того сервера и уйти так никем и незамеченным.
Сценарий 2: получаем консоль root'a
Опять-таки, ситуация, когда пароль рута не сообщают конечным пользователям компьютера, ни у кого удивления не вызывает. Однако все тот же GRUB поможет нам это досадное ограничение обойти. В отличие от предыдущего способа, удобного для доступа в духе «незаметно пришел, скопировал и ушел, не наследив», этот способ удобнее для внесения нужных нам изменений в установленную систему. Кроме того, для этого нам уже не нужны никакие флешки.
Аналогично, добираемся до списка вариантов загрузки.
Выбираем нужный нам вариант.
Входим в режим редактирования. Здесь есть небольшие отличия между GRUB Legacy и GRUB2. В GRUB2 после нажатия клавиши e мы сразу попадаем в режим редактирования, а в GRUB Legacy нужно нажать e первый раз, выбрать строку для редактирования и еще раз нажать e.
Выбираем строку, которая начинается со слова linux или kernel.
Удаляем из нее слова quiet и splash, если они есть, и дописываем в конец single init=/bin/bash
Если у нас GRUB2, то сразу жмем Ctrl+X, а если GRUB Legacy — Esc и потом b
В результате мы загрузимся в рутовую консоль безо всяких паролей и ненужных вопросов.
Защита?
И GRUB2, и GRUB Legacy предоставляют возможность ограничить доступ к интерактивному режиму и редактированию с помощью директивы password. Подробности описаны в руководстве по GRUB2 и GRUB Legacy. В обоих случаях манипуляции весьма просты и не требуют много времени.
Баян!
В общем, да, ничего нового я не сказал — все это можно нагуглить, например так. Однако, проблема от этого меньше не становится, наоборот. Более того, если с января в школа действительно поставят linux, то желающих считерить или просто «похакать терминалку» станет на порядок-другой больше. И не стоит недооценивать школьников — найдутся и те, кто умеют гуглить. Если же принять во внимание лирическое отступление, которое я сделал в первой части, то тут еще и поле для утечки данных. Думаю, каждый сможет придумать еще пару способов применения.
источник
ВНИМАНИЕ !
Возможно что-то уже неактуально. Обращайте внимание на даты !
Эта статья опубликована 20 сентября 2010-го года !
Прочитано 7857 раз и оставлено 265 комментариев.
#1.pavel2403