xss的总结
一、xss简介
- 什么是XSS
XXS攻击目的是在网页中嵌入客户端恶意脚本,最常用的攻击代码是JavaScript - XSS漏洞出现的原因
程序对输入和输出的控制不够严格,导致"精心构造“的脚本输入后,在输到前端时被浏览器当作有效代码解析执行从而产生危害 - XSS的危害
劫持用户cookie、点击构造的链接触发劫持cookie、框架钓鱼、刷流量、挂马、键盘记录、需要设置跨域
二、xss的分类
- 反射型XSS 中危
交互的数据一般不会被存在在数据库里面,只是简单的把用户输入的数据反射给浏览器,一次性,所见即所得。 - 储存型XSS 高危
交互的数据会被存在在数据库里面,永久性存储,具有很强的稳定性
3.DOM XSS 低危
不与后台服务器产生数据交互,通过前端的dom节点形成的XSS漏洞
三、xss可能存在的地方
有输入有输出的地方都有可能存在XSS
四、xss的测试方法
工具测试:APPscan、AWVS、Burpsuite 等
半自动化工具测试:Burpsuite、firefox(hackbar)、XSSER XSSF等
手工测试:最重要的是考虑那里有输入,输入的数据在什么地方输出
五、xss的绕过
前端限制绕过
大小写混合
双写绕过
编码
注释干扰后台绕过
没有分号
六、XSS常规防范
对输入进行过滤,对输出进行html实体编码
加CDN 防护, 代码层过滤,数据库层过滤,自己搭建防火墙,还可以开启 HttpOnly