Смертельный эксплойт

Master-lame-master

Xakep, номер #063, стр. 063-054-1

Нашумевшие истории крупных взломов

Любому трейдеру известно, что самые свежие 0day-эксплойты есть именно у бразильских хакеров. Причин никто не знает - так уж повелось. Более того, следующий взлом еще раз докажет продвинутость бразильских взломщиков. А все начиналось с простого фриварного хостинга...

В один прекрасный день хакеру потребовалось перекачать с забугорья 600-мегабайтную базу. Он часто проводил подобные операции, но на этот раз у него не было подходящего shell-аккаунта. Точнее сказать, со всех его шеллов скорость перекачки была очень низкая. Проблему помог решить собрат по взлому. Он сказал, что, используя аккаунт на www.rootshell.be, хакер легко может выполнить требуемую задачу. Мысль была логичной, потому как FTP-сервер находился недалеко от Бельгии.

Изучение объекта

Злоумышленник не любил регистрироваться на различных фриварных сайтах и заполнять поля в html-страницах. Он просто попросил у друга аккаунт на бельгийском хостинге. Знакомый с неохотой сообщил свой пароль, т.к. знал, что взломщик попытается ненавязчиво порутать сервер. Он также знал, что все подобные попытки пресекались администратором, после чего учетная запись хакера удалялась. Но наш герой заверил корешка, что как только он выкачает базу, сразу смоется с шелла.

Успешно залогинившись на сервер, хакер скомандовал «wget –b ftp://xakep:31337@server.org/base.sql» и терпеливо стал дожидаться окончания процесса. Но, как говорится, дело было вечером, делать было нечего, поэтому ради забавы взломщик решил пощупать сервак на устойчивость и протестить пару-тройку эксплойтов (чего и опасался его знакомый).

Спустя полчаса сетевой партизан понял, что так просто сервер ему не одолеть. Админы действительно заботятся о безопасности сервака и регулярно патчат ядро. Тогда хакеру стало интересно, что за юзеры обитают на машине и каков их род деятельности. Для этого он набрал команду «find –perm 644 –name .bash_history», особенно не надеясь на положительный результат. Однако интерпретатор вернул ему три пути на читабельную историю команд пользователей. С этого и начался увлекательный процесс взлома...

Шпионский сценарий

Нет, в истории команд не было ничего интересного - сплошные вызовы редакторов и оболочек. Хакера заинтересовало другое. Суди сам: если по какой-то причине на сервере нашлись читабельные истории, то, возможно, получится поиметь акцес и ко всей домашней папке. После просмотра своих прав взломщик понял, что все фриварные пользователи (как и сам хакер) принадлежат к группе hosting. Соответственно, домашние каталоги также должны иметь групповой идентификатор hosting. Решив это проверить, наш герой набрал «ls –la /home». Но он жестоко обломался. На этот каталог был установлен атрибут 700, позволяющий читать содержимое только суперпользователю. Правда, это было сделано с целью отпугнуть глупых скрипткиддисов – возможность просмотра прав внутренних папок была. И взломщик поспешил ею воспользоваться.

Единственное, что требовалось хакеру – это наличие рабочего perl-интерпретатора. Вывод команды «perl –e ‘print “test”’» дал понять, что perl функционирует нормально. Далее хакеру оставалось только пропарсить /etc/passwd и накатать простенький perl-скрипт. После этого он мог узнать права всех домашних папок. Итак, скрипт имел следующее содержание:

Содержание  Вперед на стр. 063-054-2
ttfb: 3.6048889160156 ms