Рука потянулась к консоли и вот уже wget закачал index.html, как нечто, внутри меня, шевельнулось.
Для демонстрации атаки, я решил создать фейк ВКонтакте.
Но data нам не поможет, нам же нужен контроль за vk.com (хотя, возможно, можно было получить доступ через window.opener).
Хорошо, ссылки кликабельны, следовательно мы должны использовать href=«javascript:» OR href=«data:,».
В итоге теги a, img всё же могли встраиваться в страницу.
Далее я пытался внедрить теги body, script, но это не вызвало ровным счетом ничего, кроме упадка настроения, а потом-то только до меня допёрло, что ссылки кликабельны!
Решив проблему с crossdomain, я увидел следующую картину:
<allow-access-from domain="*"/>
<site-control permitted-cross-domain-policies="master-only"/>
crossdomain.xml я написал самый банальный:
Недолго думая, изменил запрос и подал на вход данные вида: *.swf?[переменная]=http://127.0.0.1/. Видя ошибку 404 на crossdomain, я ругнулся, но GET запрос ушел на локалхост. Быстро подделав crossdomain, я увидел тот милый alert(). А сейчас несколько подробней.
Не об этом, изменив свой запрос к «Великому и Могучему» нашёл swf, который отсылал GET запрос в корень сайта.
Одной светлой ночью, выпив еще одну кружку кофе, решил заняться поиском XSS уязвимостей. Вбил в Гугль что-то похожее на: filetype:php inurl:"*.php?search=*" и в ответ получил ~ 1 500 000 000 страниц. Каждая третья была уязвима печально.
Вы всё еще запускаете флешки из браузера? Тогда мы идем к вам.
Уязвимости закрыты и мы можем начать.
В этой статье не будет рассказываться о том, что такое XSS и с чем его едят. Все мы уже большие дяденьки (ну и тётеньки). Это статья о том, что внедрение произвольного кода бывает всегда и везде. Я покажу вам, что к таким видам атак уязвима самая популярная социальная сеть России и СНГ, а так же сайт президента РФ.
Привет, читатель!
Необычные XSS уязвимости
5 августа 2012 в 19:19
Необычные XSS уязвимости / Хабрахабр
