В Internet Explorer 8 есть новая функция безопасности, XSS filter, которая пытается перехватить попытки межсайтового скриптинга. Это описано так:
Фильтр XSS, новый для Internet Explorer 8, обнаруживает JavaScript в URL-адресах и HTTP-сообщениях POST. Если JavaScript обнаружен, фильтр XSS ищет доказательства отражения, информацию, которая будет возвращена на атакующий веб-сайт, если запрос на атаку был отправлен без изменений. Если обнаружено отражение, фильтр XSS очищает исходный запрос, чтобы дополнительный JavaScript не мог быть выполнен.
Я нахожу, что фильтр XSS срабатывает даже тогда, когда нет "доказательств отражения", и я начинаю думать, что фильтр просто замечает, когда запрос отправляется на другой сайт, а ответ содержит JavaScript.
Но даже это трудно проверить, потому что эффект, похоже, приходит и уходит. IE имеет разные зоны, и когда я думаю, что воспроизвел проблему, фильтр больше не пинает, и я не знаю почему.
У кого-нибудь есть советы о том, как бороться с этим? Что фильтр действительно ищет? Есть ли способ для хорошего парня получить данные POST на стороннем сайте, который может вернуть HTML для отображения в iframe и не запускать фильтр?
Справочная информация. Я загружаю библиотеку JavaScript со стороннего сайта. Этот JavaScript собирает некоторые данные с текущей HTML-страницы и отправляет его на сторонний сайт, который отвечает некоторым HTML-кодом, отображаемым в iframe. Чтобы увидеть его в действии, перейдите на страницу