4.8. Получение прав root
4.8. Получение прав root
Теперь у нас есть достаточно информации о доступе, и мы можем рассмотреть типичный метод взломщика для получения прав root и способы маскировки в системе.
Допустим, что злоумышленник приобрел возможность выполнять какие-либо системные команды от имени (с правами) root. Сидеть под этой учетной записью будет слишком опасно и вызывающе. К тому же изменять пароль root нельзя.
Как же тогда входить под другим именем и в то же время использовать максимальные права? Давайте вспомним, как Linux работает с правами. В файле /etc/passwd хранятся записи пользователей в следующем виде:
robert:x:501:501::/home/robert:/bin/bash
Третий и четвертый параметры — это идентификаторы пользователя и группы соответственно. Когда на объекты выделяются права, то система сохраняет только идентификаторы. Что это значит? Допустим, что у вас есть пользователь robert с идентификатором 501. Вы создали еще одного пользователя Dan и дали ему такой же идентификатор. Теперь обе учетные записи с одинаковыми ID будут разделять владение одними и теми же объектами.
Что это нам дает? Посмотрите на идентификатор пользователя root — он равен нулю. Именно нулевой ID, а не имя root указывает на максимальные права. Давайте попробуем учетной записи robert, которую мы создали ранее, поставить вручную идентификаторы пользователя и группы, равные 0. В файле /etc/passwd должна получиться строка:
robert:x:0:0::/home/robert:/bin/bash
Теперь войдите в систему под этой учетной записью и попробуйте снова открыть файл /etc/passwd и внести изменения или просто добавить пользователя. Все пройдет успешно, хотя файл /etc/passwd может изменять только root. Так что система проверяет наши права по идентификатору, который в данном случае нулевой и соответствует максимуму.
Так как имя пользователя ничего не значит, я рекомендую удалить пользователя root в файлах /etc/passwd и /etc/shadow, создать новую запись с другим именем, но идентификатором, равным 0. Злоумышленники, которые попытаются взломать ваш сервер, будут пытаться подобрать пароль для администратора root, но т.к. пользователя с таким именем нет, то их действия окажутся безуспешными.
С другой стороны, пользователя root можно оставить, но установить ему идентификатор больше нуля. Я иногда создаю учетную запись root с UID=501 или выше. Увидев эту запись, взломщик думает, что он обладает всеми правами, но в реальности оказывается простым пользователем.
Каждая удачная попытка ввести злоумышленника в заблуждение увеличивает вероятность паники со стороны хакера. Даже профессиональный взломщик, находясь в системе, испытывает большую психологическую нагрузку и боится оказаться замеченным. Среди взломщиков немало людей с неустойчивой психикой. Только не думайте, что это сумасшедшие, все хакеры здоровые люди, просто в момент взлома испытывают перенапряжение, и когда что- либо идет не так, как планировалось, хакер может запаниковать.
Итак, злоумышленник, проникнув в систему, может не пользоваться учетной записью root, а отредактировать любую другую или добавить еще одну с нулевым идентификатором пользователя и получить максимальные права в системе. Если вы являетесь администратором сервера, то должны отслеживать подобные трансформации и останавливать любые попытки изменения идентификаторов.
Команда id позволяет узнать идентификаторы пользователя. Если она вызывается без параметров, то на экран будут выведены идентификаторы текущего пользователя. Чтобы получить информацию о конкретной учетной записи, нужно выполнить команду:
id имя
Например, давайте посмотрим параметры пользователя robert. Для этого выполним команду:
id robert
Результатом будет строка:
uid=501(robert) gid=501(robert) group=501(robert)
Таким образом в любой момент можно определить идентификатор пользователя и его реальные права.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКДанный текст является ознакомительным фрагментом.
Читайте также
11.8. Пересечение минного поля безопасности: setuid root
11.8. Пересечение минного поля безопасности: setuid root Настоящие минные поля трудно, но не невозможно перейти. Однако, это не является чем-то, что можно сделать легко, без тренировки или опытаТочно также написание программ, которые используют setuid root, является трудной задачей.
Создание корня документа: <fo:root>
Создание корня документа: <fo:root> Первый форматирующий документ, который мы рассмотрим, — это <fo:root>, узел документа любого документа XSL-FO.Детьми форматирующего объекта <fo:root> являются единственный форматирующий объект <fo:layout-master-set> и последовательность из
1.5.2. Fedora Core: не удается войти в систему как root в графическом режиме
1.5.2. Fedora Core: не удается войти в систему как root в графическом режиме Включена система безопасности SELinux. При установке некоторым файлам в домашнем каталоге root назначается ошибочный контекст безопасности. Для исправления этой ошибочки зарегистрируйтесь в консоли как root и
1.5.9. Я забыл пароль пользователя root
1.5.9. Я забыл пароль пользователя root Бывает… Перезагрузите компьютер и в строке приглашения загрузчика lilo введите linux single. Будет запущен однопользовательский режим. Для изменения пароля введите команду passwd
1.1.3.7. Пароль root
1.1.3.7. Пароль root После этого нам нужно установить пароль пользователя root (рис. 1.18). Пользователь root обладает максимальными привилегиями. Его можно сравнить с пользователем Администратор в Windows. Постарайтесь не забыть пароль root. Если вы его забудете, тогда вам стоит
Проблема 1. Забыт пароль root
Проблема 1. Забыт пароль root Восстановить забытый пароль довольно просто. Для этого при загрузке системы выберите загрузочный образ (рис. A.1), а затем нажмите клавишу ‹а›. Появится возможность отредактировать параметры ядра. Укажите параметр ядра single (рис. А.2), Рис. А.1.
Проблема 2. Как войти в систему как пользователь root
Проблема 2. Как войти в систему как пользователь root По умолчанию нельзя войти в систему как пользователь root в графическом режиме. Чтобы получить полномочия пользователя root, придётся в окне терминала использовать команду su. Чтобы войти как пользователь root в графическом
Проблема 3. Ошибка kernel panic: VFS: Unable to mount root fs
Проблема 3. Ошибка kernel panic: VFS: Unable to mount root fs Данная ошибка означает, что ядро не может подмонтировать корневую файловую систему.• Если вы увидели данное сообщение при загрузке с дистрибутивного CD/DVD, скорее всего, поверхность носителя повреждена. Попробуйте извлечь диск и
Настройка прав доступа к файлам и ограничение прав пользователей
Настройка прав доступа к файлам и ограничение прав пользователей В процессе работы на компьютере часто возникает необходимость защитить те или иные свои данные от неквалифицированного и несанкционированного просмотра и редактирования. Эта задача обычно возникает при
Пример 9-5. Я -- root?
Пример 9-5. Я -- root? #!/bin/bash# am-i-root.sh: Root я, или не root?ROOT_UID=0 # $UID root-а всегда равен 0.if [ "$UID" -eq "$ROOT_UID" ] # Настоящий "root"?then echo "- root!"else echo "простой пользователь (но мамочка вас тоже любит)!"fiexit 0# ============================================================= ## Код, приведенный ниже, никогда не отработает,#+
2.2.2. Получение прав пользователя root
2.2.2. Получение прав пользователя root Весьма часто загрузка с LiveCD используется для того, чтобы восстановить ранее установленную «упавшую» систему. Вот в этом случае максимальный доступ к системе и может понадобиться. Примечание Более полно о пользователе root мы поговорим в
6.1. Учетная запись root
6.1. Учетная запись root В Windows мы привыкли, что нам разрешено все. Конечно, не всегда, но в большинстве случаев именно так. В Linux все иначе — максимальными полномочиями обладает только пользователь root. Система полностью подвластна этому пользователю. Внимание! Всегда думайте
6.2. Временное получение полномочий пользователя root
6.2. Временное получение полномочий пользователя root Некоторые операции, такие, например, как установка программного обеспечения или изменение конфигурационных файлов, требуют полномочий root. Чтобы их получить, нужно использовать команду sudo следующим образом: sudo
6.3. Переход к традиционной учетной записи root
6.3. Переход к традиционной учетной записи root Несмотря на то, что в дистрибутиве Ubuntu традиционная учетная запись root отключена, возможность восстановить ее имеется. После чего режим ее использования будет таким же, как и в прочих дистрибутивах, — вы сможете заходить в
Голубятня: Acronis, хорошо-что-не-закипевший чайник, OpenSuse и Его Величество Root Сергей Голубицкий
Голубятня: Acronis, хорошо-что-не-закипевшии? чаи?ник, OpenSuse и Его Величество Root Сергей Голубицкий Опубликовано 20 августа 2013 Всю неделю я что-то мучительно перестраивал, перекраивал и революционизировал на всех своих компьютерных устройствах — от