![]() |
Xss, скрытый от юзера сабмит формы
Есть сайт, на сайте форма. В форме нефильтруемые поля.
Задача: чтобы эту форму отправил другой человек, при этом ничего не заметив. Варианты: 1) Делаем отвлекающую страницу с каким-нибудь текстом, который заинтересует жертву, в коде страницы iframe, в нем наша форма и <script>ourform.submit();</script> Такой вариант работает в FF и Opera. Но только до тех пор, пока iframe не зашифрован. С зашифрованным iframe'ом в FF работать перестает. А желательно хотя-бы минимально зашифровать его (хотя бы String.fromCharCode)... В ие вообще работать такой вариант отказывается. 2) Делаем страницу, при заходе на которую только в первый раз произойдет отправка формы. А к коду XSS дописываем редирект обратно на нашу страницу. Работает во всех браузерах, но не слишком быстро, и юзер может заметить сменившийся адрес окна и подгружающийся любимый сайт. Есть другие варианты? Желательно, хотя бы один пример незаметного и работающего в IE кода. |
document.write('<iframe src='+String.fromCharCode()+'></iframe>');
|
Да, в FF с зашифрованным адресом пашет, а если весь iframe шифровать - то нет. Странно.
Но в IE по прежнему в iframe работать отказывается. Вернее, оно отсылается, но фрейм подгружает форму логина и пишет неизвестную ошибку. Скорее всего тут дело не в том, что браузер что-то блокирует, а в какой-то защите на стороне атакуемого сайта. Поэтому интересны другие методы, кроме загрузки страницы в iframe. |
Даже простым
document.write(String.fromCharCode( --- full iframe code here --- )); ничего не получалось. И простым unescape тоже. Но это по сути не важно, способ зашифровать линк от дурочка уже подсказали. Судя по ответам, третьего, скрытого способа просто нет. Не очень и надеялся, конечно. Хотя сейчас пришла в голову идея подключить ajax, он ведь может отсылась кастомные заголовки? Если да, то ответ загружать в скрытый <div> или просто не получать, если можно. Кто в курсе ajax'a, можно ли POST запрос им отправить другому хосту ? |
К сожалению шифрование фрейма сейчас не самая приоритетная задача, потому-что сам факт фрейма не дает отправить форму в ИЕ. Но за способ все равно спасибо, на будущее запомню.
Я еше думаю по поводу попапа какого-нибудь, который бы был очень мелким по размерам, открылся бы на заднем плане, и сразу же закрылся, как только выполнил нужные действия, вроде так можно, только вот сложно открыть попап в ИЕ, блокируется он. Думаю попробывать сделать в нем сабмит. |
Вот держи, не помню от какого-то загрузчика
PHP код:
|
| Время: 23:17 |