Как я ломал hotbox.ru Master-lame-master Хакер, номер #073, стр. 073-044-1 История взлома крупного сервиса Однажды у меня сперли почтовый ящик. Этот мыльник был зареган очень давно и носил стратегическую функцию Primary E-mail ко всем моим ICQ-номерам. Обидно то, что почта располагалась на бесплатном сервисе hotbox.ru, поэтому вернуть мыло было проблематично. По какой-то причине служба поддержки не отвечала на мои письма (еще бы, ведь админам никогда нет дела до клиентов), поэтому я решил устроить самосуд и поглумиться над почтовым сервисом. Первые недоделки Первое, что я сделал, - загрузил главную страницу сервиса. Затем зарегистрировался под левым аккаунтом, чтобы не вызвать лишних подозрений. Поменяв секретный вопрос и ответ, я завершил сессию и намеренно обратился к пункту «Забыли пароль». Передо мной появилась формочка для ввода секретных данных. После занесения верной пары вопрос/ответ меня поздравили и разрешили установить новый пароль. Но менять пассворд я пока не спешил. Для начала мне захотелось обратиться к исходнику HTML-шаблона. Там находились три интересных hidden-параметра. Они назывались answer, user и domain. Я уже когда-то ломал почтовые скрипты, подставляя левые значения в такие опции. Теоретически, если я внесу чужой username и password в код страницы, которая генерируется на финальной стадии, где ответ на секретный вопрос уже получен, – я могу завладеть любым почтовым ящиком. Но, к несчастью, ушлый админ предугадал эту ситуацию. После подстановки левых значений скрипт вывел какой-то набор букв. Я осознал, что взломать сервис через «забытый пароль» мне не удастся, но пока не думал опускать руки. Я снова зашел под зареганным аккаунтом и посетил раздел «Адресная книга». После создания тестовой записи я обратил внимание на то, что скрипт позволял вставить созданное мыло в сценарий отправки сообщения. Все бы ничего, да только делалось это путем прибавления избыточного параметра to с длинным номером. Недолго думая, я поменял число на более короткое и... увидел совершенно левый адрес, принадлежащий другому юзеру. При желании можно было написать Perl-сценарий, который бы инкрементировал значение и записывал все адреса в текстовый файл. Получился бы нехилый спам-лист. Но учитывая то, что спамером мне быть не доводилось, я откинул эту бредовую идею и приступил к более решительным действиям. Дизайн сменился, баги остались Я потратил около получаса на анализ скриптов, но все это не привело к положительному результату. Сценариев было немного, а параметры никак не хотели ломаться :). Но тут я вспомнил, что примерно с полгодика назад на HotBox’е выкладывали проект со звучным названием «Генератор HTML-сайтов». Учитывая, что у меня выработалась профессиональная привычка к запоминанию различных ссылок, почтовых адресов и паролей :), я без труда припомнил ссылку на этот ресурс. Он располагался (и живет по сей день) на хосте webbuilder.hotbox.ru. Только несколько месяцев назад на главной странице была приятная форма авторизации, а сейчас я увидел сообщение об ошибке. Мол, ты у нас не зарегистрирован, поэтому обойдешься без генератора страниц :). Но не все так плохо: я заметил, что скрипту передается параметр sess_id с нулевым значением. Скопировав номер своей сессии из соседнего окна браузера, я обновил страницу генератора. Сценарий принял мой идентификатор и отобразил стартовую страницу. |