Межпротокольный XSS с нестандартными сервисными портами
-
21-09-2019 - |
Вопрос
Он, ребята,
Я просто читал этот пост о действительно неприятных (и в то же время крутых) способах выполнения XSS.Однако мне все еще есть что-то непонятное.
Я понимаю всю концепцию атаки, однако не понимаю, как этим можно потенциально воспользоваться.Атрибут «действие» внутри формы должен указывать на ftp-сервер (или любой другой сервер, который отображает вводимые данные), но это никогда не бывает так.
Поэтому, если у вас нет еще одной дыры в XSS для внедрения такой формы, эту уязвимость невозможно использовать.Мой вопрос: верен ли мой вывод о том, что его нельзя использовать, или я что-то упускаю?
Решение
Это можно использовать следующим образом.
- MrCrim хочет украсть логин у кого-то, кто используетжертву.net
- MrCrim замечает, что сайт жертвы использует ftp-сервер на необычном порту.
- MrCrim размещает форму на своем сайте evil.com.
- Форма содержит «ftp-команды» в элементах формы, и ее действие по отправке — на сайтжертвы.net.
- MrCrim пишет JS-скрипт, который крадет document.cookie с сайта, и размещает этот скрипт в файле .js на сайте evil.com.Вероятно, это работает, если включить строку cookie как часть URL-адреса источника изображения, запрашиваемого с сайта evil.com.
- Одна из «ftp-команд» в форме MrCrim предназначена для написания небольшого фрагмента JS, который выполняет сценарий кражи файлов cookie MrCrim.
- MrCrim соблазняет людей заглянуть на evil.com, размещая ссылки на форумах и рассылая спам.
- UnsuspectingUser переходит по ссылке, размещенной на его любимом форуме, и попадает на сайт evil.com.Он размещает форму, не зная о ее злых и коварных намерениях.
- UnsuspectingUser теперь на сайтежертвы.net и Бам!JS, «внедренный» FTP-сервером, выполняется, и файл cookie UnsuspectingUser дляжертвы.net отправляется на evil.com.
- Выгода!:-)
Другие советы
Полагаю, ваш аргумент заключается в том, что никто не запускает FTP-сервер на том же хосте, что и HTTP-сервер.Вы правы, если это предположение верно.Его невозможно использовать, если вы точно знаете, что у вас нет других открытых портов.
Чтобы воспользоваться этой дырой в IE, на хосте должны быть запущены другие службы, а номера портов должны быть нестандартными.Это действительно редкость.Многие сайты имеют FTP на одном и том же хосте, но обычно они используют стандартный номер порта (21).Однако это может случиться.Моя хостинговая компания запускает FTP-сервер на нескольких портах (один из них должен быть нестандартным) на том же хосте, где обслуживается моя веб-страница, и это альтернативный способ обновления страниц, если инструмент разработки не поддерживает WebDAV.
- Атака размещена на другом сервере,
- FTP-сервер должен размещаться на сервере-жертве.
- Поскольку атака получает ответ от сервера-жертвы, теперь страница злоумышленника может читать файлы cookie.Потому что теперь код злоумышленников отражается в контексте домена цели.
Вот и все.
Так нет, тебе не нужна еще одна уязвимость, FTP-сервера или аналогичного сервера с общедоступным портом достаточно, чтобы быть уязвимым.