什么是xss
跨站脚本攻击Cross Site Scripting,为避免与层叠样式表(Cascading Style Sheets, CSS)缩写混淆,改为XSS。是一种Web应用程序漏洞,攻击者往Web页面里插入恶意javaScript代码,当用户浏览该页面时,嵌入其中的javaScript代码会被执行,从而达到恶意攻击用户的目的。
xss分类
存储型(Stored XSS)
这是利用起来最方便的跨站类型,跨站代码存储于服务端(比如数据库中)
反射型XSS(Reflected XSS)
跨站代码一般存在于链接中,当受害者请求这样的链接时,跨站代码经过服务端反射回来,这类跨站的代码一般不存储到服务端
DOM
一种基于DOM的跨站,这是客户端脚本自身解析不正确导致的安全问题
XSS可能带来的危害:
1.网络钓鱼,包括盗取帐号等;
2.窃取Cookie,利用用户身份进一步对网站进行操作;
3.劫持用户(浏览器会话),从而执行任意操作,非法转账、转发邮件;
4.弹出广告、刷流量;
5.网页挂马;
6.进行恶意操作,篡改页面信息等;
7.进行大量的客户端攻击,DDOS攻击;
8.获取客户端信息,真实IP、开放端口等;
9.控制受害者机器向其他网站发起攻击;
10.结合其他漏洞,进一步攻击,如CSRF;
11.传播跨站脚本蠕虫
xss漏洞利用
一般在html实体,属性,css和JavaScript里容易存在这样的问题。
有很多的xss扫描工具,扫描器比较容易发现xss,手工也是可以的。结合beef等xss利用框架,可以实现很多功能。
xss防范
不要在页面中插入任何不可信数据
对这些数据进行HTML Entity编码
使用XSS规则引擎进行编码过滤
网友评论