一.什么是XSS攻击
XSS又被称为CSS(Cross SiteScript)
XSS是一种经常出现在web应用中的计算机安全漏洞。其原理是攻击者向有XSS漏洞的网站中“嵌入”恶意的HTML代码,当其他用户浏览该网站时,这段HTML代码会自动执行,从而达到攻击的目的。如:盗取用户Cookie、重定向到其他网站等。
理论上,所有可以输入的地方没有对输入数据进行处理的话,都会存在XSS漏洞
二:XSS攻击常见危害
1.网站钓鱼、网页挂马,包括盗取各类用户账户
2.获取用户Cookie资料,从而获取用户隐私信息
3.获取客户端信息,如用户的浏览历史,真是IP等
4.强制弹出广告页面等
5.进行大量的客户端攻击
6.进行恶意操作,例如用户的浏览历史、真实IP,开放端口等
三、XSS攻击防范方案
(1)相对完整的输入过滤体系
- 凡是有输入的地方,必须得对非法字符做过滤处理
- 过滤“<”和“>”等标记,如果HTML内容中有针对某些不能严格过滤的字符,则要对这些标签进行转义处理。
- 过滤特殊字符:&、回车和空格等
- 关于常用的一些字符串过滤方案,我们可以写一个常用的过滤器(filter)去执行。这里有一篇相关博文可以借鉴。
- web表单各类输入校验(避免非法字符的输入)