我正在测试反映跨站点脚本的应用程序。
我有最初是一个问题的网址,并通过在应用程序的响应中编码各种元素来修复。我正在努力确保没有其他漏洞。
方案如下:
我尝试了一些包含XSS的URL,它们在IE中很好用。
然后我尝试了一个我知道仍然容易受到攻击的网址,并且我的网页内容略有修改,我得到了IE xss阻止警告(这是我所期待的)。
然后我再次尝试上面的其中一个网址很好,突然IE用一个#
符号替换页面的整个内容并显示XSS警报。所以我甚至看不到回应。
经过几次测试后,我有一个理论认为,在尝试了一个易受攻击的网址并尝试了一个不应该容易受到攻击的类似网址(响应在服务器端被修改)之后,由于某种原因,IE会阻止整个页面。
在XSS过滤器的官方文档中没有提到这一点。
IE在什么情况下用#
替换整个响应,而不是仅在易受攻击的位置修改响应?