![]() |
Баги на Почте.ру
Баги на Почте.ру [intro] Всем привет, вот написал небольшую статейку об обнаруженных мною уязвимостях на Почте.ру. Большинство описанных здесь багов были найдены мною еще несколько месяцев назад, и в службу поддержки этого почтового сервиса я отправлял сообщение об обнаруженных уязвимостях и рекомендациями по их устранению. Некоторое время на главной странице сайта провисело сообщение администрации к пользователям с извенениями о возможных неполадках в работе сервиса. Недавно сообщение это убрали, НО ВСЕ БАГИ ТАК ДО СИХ ПОР И ОСТАЛИСЬ. Непорядок. А ведь Почта.ру достаточно серьезная почтовая система (ее домены: pochta.ru, fromru.com, front.ru, hotbox.ru, krovatka.net, land,ru, mail15.com, mail333.com, pisem.net, pochtamt.ru, pop3.ru, rbcmail.ru, smtp.ru). [Итак приступим] Сразу перечислю ряд уязвимых мест, которые присутствуют в данной системе: 1) возможность захода в систему одновременно с разных ip-аресов; 2) хранение ответа на секретный вопрос в открытом виде без необходимости ввода пароля для его просмотра; 3) и, собственно, отсутствие какой либо фильтрации на входящие данные в ключевых скриптах системы, что дает возможность использовать уязвимости типа passive-xss и sql-inj. Использование взломщиком этих трех уязвимостей системы может привести к следующим последствиям: 1) угон почтового ящика ; 2) угон случайных почтовых ящиков; 3) дефейс, ведь Почта.ру - это еще и бесплатный хостинг; 4) массдефейсы; 5) атаки типа DoS на БД; 6) несанкционированное получение определенной иформации, например, чтение циркулирующих в системе писем или вытаскивание инфрмации из БД адресной книги; 7) теоретичеки существует возможность более серьезного проникновения на сервер, но я не ставил перед собой такой цели, поэтому ничего об этом сказать не могу. [xss] Пассивная xss присутствует в скрипте mailbox.php в параметре mailb. Сначала мне показалось, что эту уязвимость использовать для угона cookie нельзя, так как скрипту передается еще уникальный идентификатор сессии (параметр id), который создается при авторизации в системе. Но потом я нашел аж два способа (способы эти, надо сказать, несколько оригинальные :)) обойти это. Один с помощью sql-inj, другой - связан с отсутствием проверки на заход в систему с разных ip. Надо сказать, что способ угона ящиков через пассивную xss не очень эффективен: во-первых, по умолчанию авторизация через кукисы отключена, а во-вторых большинство пользователей веб-интерфейс не использует, в-третьих, - она ведь пассивка ;). Со дня на день выйдет журнал ][, где подробно будут описаны мои опыты по угону ящиков на Почте.ру (там будет и видео). [sql-inj в mailbox.php] Скуль-иньекции, присутствующие на сайте гораздо круче чем пассивная xss. Вчера вот обнаружил такую тему: http://forum.antichat.ru/thread19714-pochta.ru.html : Цитата:
В общем, просто перейдя по ссылке Код:
http://www.pochta.ru/mailbox.php?id=N'or'1[sql-inj в contact.php] Идем дальше. Адресная книга. Когда мы просматриваем какую нибудь запись в ней, то урл выглядит следующим образом: Код:
http://www.pochta.ru/adb/contact.php?id=[id_сессии]&uid=[id_записи]Код:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'lalala@front.ru'' at line 1Пробуем использовать union в этом параметре: Код:
http://www.pochta.ru/adb/contact.php?id=[id_сессии]&uid=[id_записи]'or''+union+select+null/*Код:
The used SELECT statements have a different number of columns[massdeface] Еще когда я писал статью об угоне ящиков меня посещала идея о возможности массдефейсов на сайтах, хостящихся на этом почто-хостинге. Реализовать их можно используя sql-inj в параметре id. Для этого можно написать бота, который будет через определенные промежутки времени заходить на сайт по ссылке Код:
http://www.pochta.ru/hosting/[id_сессии]'or'1/edit/file/?dir=/&file=index.htmlИ еще кое что: можно ведь совмещать xss и sql-inj. Интересно наблюдать как из одной ПАССИВНОЙ xss на снифер приходит штук по 50 записей... ;) P.S. За все время моих исследований ни один чел не лишился своего мыла, ни один сайт не был задефейсен, и вообще никто не пострадал (про то что "Контакты" не работали - так это я наврал, небыло такого, хе-хе :)). Так что и вы, читающие это, не тупите, ок? P.P.S. Если у тебя ящик на почте и ты предпочитаешь веб-интерфейс Bat'у, то рекомендую пользоваться старым интерфейсом Почты на http://old.pochta.ru. |
Оч пользительно!
|
За труд можно и + поставить )))
|
Небольшое дополнение.
Доступен метод TRACE Описание С помощью использования метода TRACE в протоколе HTTP возможно выполнение атаки межсайтовый скриптинг. Ссылки с параметрами Описание Список ссылок найденных на веб-сервере, которые используют какие-либо параметры: /regform.php?rnd2=1&aid=1&bt_next=1&rnd_img_str=1&b t_next=1 /?sid=5e646f6e1048527134e382fbca69c9cb&lng=en&rnd=3 32745106 /?sid=5e646f6e1048527134e382fbca69c9cb&bt_cancel=on &lng=ru /rnd_img.php?sid=5e646f6e1048527134e382fbca69c9cb /help.php?caption_id=9&lng=ru&skin=september /advertising.php?lng=ru&skin=september /?caption_id=1&lng=ru&skin=september /regform.php?lng=ru&skin=september /support.php?lng=ru&skin=september /help.php?lng=ru&skin=september /?lng=en&skin=september /info.php?mid=agreement /?mid=agreement&lng=en /help.php?caption_id= /?caption_id=&lng=en /regform.php?lng=en /forgot.php?lng=en /?lng=en Список форм Описание Обнаружены формы (POST запрос), использующиеся для передачи данных на сервер. В переменных HIDDEN может храниться специфическая или чувствительная информация. Переменные PASSWORD служат для ввода пароля. Список форм: POST /login.php HTTP/1.1 reason=&lng=&rnd=&user=&pass=&domain=&rememb= POST / HTTP/1.1 lng=&skin= POST /?lng=en HTTP/1.1 skin= POST /support.php?lng=ru&skin=september HTTP/1.1 userName=&userEmail=&email=&sendCopy=&subject=&dom ain= POST /forgot.php HTTP/1.1 lng=&login=&domain= POST /?sid=5e646f6e1048527134e382fbca69c9cb&lng=en&rnd=3 32745106 HTTP/1.1 skin= POST /?sid=5e646f6e1048527134e382fbca69c9cb&bt_cancel=on &lng=ru HTTP/1.1 skin= POST /?caption_id=&lng=en HTTP/1.1 skin= POST /?mid=agreement&lng=en HTTP/1.1 skin= |
+
спс харошая статья |
D=p=ch= Mod= хпайдер рулит ?)
статья + однозначно |
ЫКСспайдер тут не поможет))
|
Статья хорошая. Но автору надо бы сделать получше оформление. Раз начал зелёным цветом выделять, то выделил бы важные места в статье.
|
Цитата:
|
Я не говорю про цвета цирка шапито, но такие места лучше выделить:
Цитата:
|
| Время: 06:59 |