赞
踩
xss漏洞,既跨站脚本攻击
xss分类:
大致可以分为储存型与反射型。
储存型:最直接的危害类型,跨站代码存储在服务器(数据库)。
反射型:反射型跨站脚本漏洞,最普遍的类型。用户访问服务器-跨站链接-返回跨站代码。
如图
图中所示位储存型xss攻击流程。攻击者要先搭建起恶意服务器。构建xss恶意脚本,通过留言,评论,注册等各种正常服务器可以上传的位置上传恶意脚本。
服务器会将恶意脚本保存在数据库中,当正常用户访问服务器并查看了该恶意脚本时,服务器会将xss的恶意脚本返回至用户浏览器。
这时用户在不知情的情况下就受到了攻击,用户的浏览器会将解析该恶意脚本并向恶意服务器发起指定请求。
攻击者就可以在恶意服务器里拿到自己想要的用户信息。
相比于储存型xss反射型xss对于用户来说要容易防范。
如图
用户访问正常服务器时点击了带有xss恶意脚本的链接。
用户浏览器就会在用户不知情的情况下访问正常服务器
正常服务器会相应该恶意请求并如同正常请求一般返回响应。
浏览器收到响应之后会将恶意脚本指定的信息请求恶心服务器。
黑客也就从恶意服务器中得到了想要的信息。
常见的攻击目的 :
1、盗用cookie,获取敏感信息。
2、利用植入Flash,通过crossdomain权限设置进一步获取更高权限;或者利用Java等得到类似的操作。3、利用iframe、frame、XMLHttpRequest或上述Flash等方式,以(被攻击)用户的身份执行一些管理动作,或执行一些一般的如发微博、加好友、发私信等操作。
4、利用可被攻击的域受到其他域信任的特点,以受信任来源的身份请求一些平时不允许的操作,如进行不当的投票活动。
5、在访问量极大的一些页面上的XSS可以攻击一些小型网站,实现DDoS攻击的效果。
防护措施:
1 当恶意代码值被作为某一标签的内容显示:在不需要html输入的地方对html 标签及一些特殊字符( ” < > & 等等 )做过滤,将其转化为不被浏览器解释执行的字符。
2 当恶意代码被作为某一标签的属性显示,通过用 “将属性截断来开辟新的属性或恶意方法:属性本身存在的 单引号和双引号都需要进行转码;对用户输入的html 标签及标签属性做白名单过滤,也可以对一些存在漏洞的标签和属性进行专门过滤。
3 对输出的内容进行过滤,针对网站需要输出的html内容用进行关键字过滤。
4 实现Session 标记(session tokens)、CAPTCHA(验证码)系统或者HTTP引用头检查,以防功能被第三方网站所执行,对于用户提交信息的中的img等link,检查是否有重定向回本站、不是真的图片等可疑操作。
5 cookie 防盗。避免直接在cookie中泄露用户隐私,例如email、密码,等等;通过使cookie和系统IP绑定来降低cookie泄露后的危险。这样攻击者得到的cookie没有实际价值,很难拿来直接进行重放攻击。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。