nixp.ru v3.0

19 января 2017,
четверг,
13:57:12 MSK

DevOps с компанией «Флант»
Fatal написал 20 октября 2005 года в 10:17 (308 просмотров) Ведет себя как мужчина; открыл 123 темы в форуме, оставил 484 комментария на сайте.

Привет!

Почему в OpenBSD выводится следующее при логине рутом:

Don’t login as root, use su

Если это более безопасно, то почему?

На мой вгляд это не безопасно, потому что существует потенциальная возможность зайти под root скажем через telnet. Так как в BSDs можно зайти через telnet рутом только через пользователя использую команду su. А если нет такого юзера, то и не будет возможности.

PS: команду su в BSDs могу использовать пользователи входящии в группу wheel

myst

Скорее всего это напоминание про то, что работать под рутом не есть хорошо, что под рутом надо админить, и то только в случае необходимости.

xant

Не могу понять, почему рекомендуют использовать утилиту su. Это же прямая угроза безопасности! Злоумышленник, захватив привилегии обычного пользователя, подменит утилиту su на что-нибудь типа /tmp/fakesu. Сделает alias или, если пользователь попался умный и вводит /bin/su, то запустит свой командный интерпретатор, который вместо /bin/su запустит /tmp/fakesu. В результате программа fakesu отправит пароль на V!asya@mail.ru и выдаст incorrect password.

Или я чего-то не понимаю?

fly4life
xant
Не могу понять, почему рекомендуют использовать утилиту su. Это же прямая угроза безопасности! Злоумышленник, захватив привилегии обычного пользователя, подменит утилиту su на что-нибудь типа /tmp/fakesu. Сделает alias или, если пользователь попался умный и вводит /bin/su, то запустит свой командный интерпретатор, который вместо /bin/su запустит /tmp/fakesu.

Лихо ты так… «запустит свой командный интерпретатор». И при этом никапельки не намекнул, как оно это сделает и что это будет за «интерпретатор»?

Потому и советуют запускать утилиты, типа su, с абсолютным путём до бинарного файла, т.к. без прав рута не заменить файл в директории /bin (/sbin и прочих).

xant
В результате программа fakesu отправит пароль на V!asya@mail.ru и выдаст incorrect password.

Гм. Интересно будет посмотреть на пользователя, который на троекратный ввод пароля получит «incorrect password», и после этого не сменит пароль руту. Надеюсь, ты понимаешь, что после смены пароля уже не важно, что там уходило на мыло Васе ;). Ну, а после повтора подобной ситуации, нужно ещё умудриться не начать разбираться, что там такое с «su».

xant
fly4life
Лихо ты так… «запустит свой командный интерпретатор». И при этом никапельки не намекнул, как оно это сделает и что это будет за «интерпретатор»?

Давай намекну:)

Стандартный bash -> Хакер Вася вторгается -> запускается пропатченный bash, который запускает /temp/fakesu, когда пользователь вводит /sbin/su -> /temp/fakesu после первого ввода пароля выводит «incorrect password», ловит голубя и отсылает пароль. После этого запускает /sbin/su -> /sbin/su авторизирует пользователя

Потому и советуют запускать утилиты, типа su, с абсолютным путём до бинарного файла, т.к. без прав рута не заменить файл в директории /bin (/sbin и прочих).

Не является защитой, см. выше.

Гм. Интересно будет посмотреть на пользователя, который на троекратный ввод пароля получит «incorrect password», и после этого не сменит пароль руту.

Получается только один «incorrect password».

Ну, а после повтора подобной ситуации, нужно ещё умудриться не начать разбираться, что там такое с «su».

Но учитывая пользователей, таких как я…

fly4life
xant
Давай намекну:)

Стандартный bash -> Хакер Вася вторгается -> запускается пропатченный bash, который запускает /temp/fakesu, когда пользователь вводит /sbin/su -> /temp/fakesu после первого ввода пароля выводит «incorrect password», ловит голубя и отсылает пароль. После этого запускает /sbin/su -> /sbin/su авторизирует пользователя

Интересно, как пользователь залогинится в запущенный хакером Васей «пропатченный bash"?

xant
Не является защитой, см. выше.

Является ;). Чтобы убедиться в этом, просто попробуй ответить на вопрос абзацем выше.

xant
Получается только один «incorrect password».

Но учитывая пользователей, таких как я…

Ну ладно, проехали. Я прекрасно понимаю, что в фейковом «su» можно понаписать всё, что душе угодно. Тут придирки прекращаю =).

xant
fly4life
Интересно, как пользователь залогинится в запущенный хакером Васей «пропатченный bash"?

Герой Вася должен заставить оригинальный /bin/bash породить новый процесс. Как он это сделает — уже более интересный вопрос. Предположим, что Вася запишет строчку «/tmp/forfly4life/bash» в /home/fly4life/.bash_rc. После логина оригинальный bash запустит /tmp/forfly4life/bash. Тот полностью проэмулирует нормальный bash до ввода /sbin/su.

xant

Использование su не безопасно, или я совсем погнал?:)

Genie
Использование su не безопасно, или я совсем погнал?:)

ну, пользуй sudo. кто мешает?

впрочем, если будет такой хак, то там, строго говоря, пофиг, что использовать…

потому как это уже будет root-kit, что не столь просто выкинуть (особливо, если этот сервер на другом континенте…)

в общем, use condo… eerhm.. lastest security-patched software. :D

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

собственно это и является причиной «don’t login as root» — слишком много привилегий — плохо.

пока выполняется в системе этот принцип — система более устойчива. вот и вся арифметика

fly4life
xant
Использование su не безопасно, или я совсем погнал?:)

Дык, подключать компьютер к сети небезопасно («или я совсем прогнал?») ;)

Но здравый смысл почему-то не даёт сойти с ума от паранойи и забиться в четырёх стенах, где тебя никто не достанет ;).

P.S. насчёт фейкового su. Я тебе и так пароль рута своего ноутбука скажу ;). Почему? Потому что это ни разу не ухудшит защиту моего десктопа — у меня сетевых сервисов нет ни одного, а локальный доступ ты не получишь. Клоню я всё к тому, что ты с одной стороны прав насчёт опасности использования su, а с другой — «прогнал».

1) Использовать su может быть опасно лишь в двух случаях:

- когда одной машиной физически пользуются несколько людей

- когда машиной уравляют по сети несколько людей

Тут ты прав. Однако, как правило, в таких случаях su не пользуюся вообще — настраивают sudo. Для аутентификации на некоторых сетевых сервисах можно также использовать шифрование на основе пары асиметричных ключей, что исключит передачу чьего-либо (в частности, рута) пароля куда-либо вообще.

2) В исходном вопросе предупреждение: «Don’t login as root, use su» — как тут уже сказали, выводится в качестве простого предупреждения, чтобы ты случайно не натворил дел будучи с правами суперпользователя ;). Т.е. «ты, мол, работай под пользователем. Ну а в случае чего, воспользуешься su, подправишь что надо, и обратно к пользовательским привелегиям».

Так что тут — «прогнал» ;)

xant
1) Использовать su может быть опасно лишь в двух случаях:

- когда одной машиной физически пользуются несколько людей

- когда машиной уравляют по сети несколько людей

Это ты прав.

впрочем, если будет такой хак, то там, строго говоря, пофиг, что использовать…

потому как это уже будет root-kit, что не столь просто выкинуть (особливо, если этот сервер на другом континенте…)

Так это не руткит,здесь рут права для атаки не нужны.

Если я совсем прогнал, то вы немного не туда погнали:). В этой теме обсуждалась не компьютерная безопасность вообще, а конкретно использование su для получения root привилегий, из-под обычного пользователя.

Короче …

Don’t use su, use sudo!

P.S. Или напрямую логиниться, если нужен root.

Dr. Evil
xant
P.S. Или напрямую логиниться, если нужен root.

это ты прогнал! нафиг! никогда это го делать не надо! представь, что у тебя какой0нибудь руткит в автозагрузке прописался….

xant

???

А что это за такие страшные руткиты, которые в автозагрузку к руту прописываются?

P.S. Если руткит уже установлен, то пофиг как логиниться.

Genie

мдааа. не, root-kit не затрагивает сами приложения. в основном — он касается только библиотек. по авторизации или по работе с сетью.

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

DeaDMonaX

Ага, наберешь

rm -rf /

вместо

rm- -rf .

и хана данным. Тоже небезопасно, потому что подразумевается, что рут — не дурак.

ecobeingecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.