avatar
Кавычка
@webpwn
06.09.2017 13:44
XSS атаки с помощью Referer'а

Часто бывает, что веб-приложение вставляет на страницу сайт с которого перешел пользователь. И делает это без фильтрации данных. Основная проблема - современные браузеры преобразуют спецсимволы в их urlencode представления:

' в %27
" в %22
< и > в %3C и %3E соответственно.

Поэтому если сайт тупо вставляет содержимое заголовка Referer не декодируя ссылку, то с этим все сложно.

Ну разве что Internet Explorer, его параметры будут без URLENCODE. Перенаправив с такой страницы на уязвимую - выполнится наш js.

С адекватными браузерами не так гладко, однако Google Chrome не энкодит одинарные кавычки в пути (не в параметре). Поэтому если инъекция в одинарных кавычках атрибута или переменной в js, то эксплуатация не составит труда.

Для этого достаточно создать html страничку с подобным содержимым:


<script>
window.history.replaceState('', '', "/hello'-alert()-'/");
location.href="//vulnerabledomain/"
</script>


#xss #referer
22 4.9K

Обсуждение 0

Обсуждение не доступно в веб-версии. Чтобы написать комментарий, перейдите в приложение Telegram.

Обсудить в Telegram

Кавычка

16.1K
Практическая безопасность. Уязвимости и атаки на веб-приложения.

Чат @WebPwnChat

Только авторский контент, без репостов и рекламы (простите).

Вместо лайка:
https://t.me/webpwn?boost

Платный канал:
https://t.me/tribute/app?startapp=s2Vr
Открыть в Telegram