Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #72, ДЕКАБРЬ 2004 г.

Атака на хостинг

_MiF_ (mif@mail.ru)

Хакер, номер #072, стр. 072-078-2


И вот уже с монитора на меня, сияя цветом детской неожиданности, смотрит phpBB2. Надо признаться, я был очень даже рад находке :). Глаза по привычке уставились вниз, на строчку с версией форума. «Powered by phpBB 2.0.6». Зачем мне нужен был этот форум? Я думаю, ни для кого не секрет, что многие используют одинаковые пароли для мыла, форума, фтп, а иногда и шелла. Почитав на багтраке о баге в этом форуме, я сконструировал следующий запрос: http://forum.сервер.ком/privmsg.php?folder=savebox&mode=read&p=99&pm_sql_user=AND%20pm.privmsgs_type=99%20UNION%20SELECT%200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,username,0,0,0,0,0,0,0,0,0,user_password%20FROM%20phpbb_users%20WHERE%20user_id=1%20LIMIT%201

Форум выкинул мне табличку с регистрацией. Странно. Подумав еще раз, я зарегистрировался и повторил запрос. Ответом форума был хэш админского пароля и его логин.

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

Хэш пароля я тут же отдал серверу на расшифровку и ушел варить кофе. Однако выяснилось, что не все так просто и буржуи не дураки. Если бы пароль был шестисимвольным, его бы за пару часов подобрал «мейнфрейм» (dual Xeon 2.8), но прошло около шести часов, а перебор все продолжался. Поняв, что ловить тут нечего, я решил искать другие пути.

И тут же родился естественный вопрос – а какие? Все, кроме апача+ssl, было закрыто файрволом, больше уязвимых скриптов на известных доменах обнаружено не было. Выход был один. Брать супостата изнутри.

Inside

Однако и это оказалось не так просто. Как и любой уважающий себя хостинг, ipowerweb требовал обязательное подтверждение заказа голосом. Проблема была решена (как ни странно :)) с помощью уличного таксофона. Разумеется, можно было применить социальную инженерию и, представившись господином Пупкинсоном из очень важной фирмы, попросить предоставить тестовый аккаунт на пару дней. Но в таких случаях хостеры часто дают аккаунты на заброшенных или тестовых серверах, а тратить усилия впустую не хотелось :). Я заказал 100 мб со всеми делами, ftp и shell-доступом и спустя час обнаружил у себя в ящике письмо от суппорта с логином и паролем. Быстро сработали, умнички.

Однако выдать шелл они отказались, мотивировав это тем, что шелл-аккаунты выдаются только проверенным клиентам. Мне это показалось странным, ведь шелл все равно дается в chroot и при наличии стабильной версии ядра системы и сервисов там сложно что-либо сделать даже опытному взломщику. Чуть позже эта странность прояснилась :).

Назад на стр. 072-078-1  Содержание  Вперед на стр. 072-078-3