欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

利用HTML5的CORS特性绕过httpOnly的限制实现XSS会话劫持

来源:本站整理 作者:佚名 时间:2017-03-31 TAG: 我要投稿

有时候我们遇到一个存储型XSS 漏洞,但是sessionId设置了httpOnly,劫持不了会话,显得很鸡肋,让渗透测试人员很蛋疼,不过这种情况正在好转,随着HTML5的流行,通过HTML5 的CORS功能实现跨域通信,建立HTTP tunnel通信,实现会话劫持已经变成可能,本文就通过实测验证HTML5的CORS条件下的xss会话劫持的可行性。
关于HTML5 的CORS 特性,请参考:http://www.ruanyifeng.com/blog/2016/04/cors.html
0×01. 前提条件
1)有一个存在XSS 漏洞的站点(最好是存储型的)
2)站点cookie使用了httpOnly
3)客户端浏览器支持HTML5 (因为用户端【被控端】和控制端需要通过HTML CORS 跨域通信,建立http通道)
0×02. 本次实验环境
漏洞环境:
1.修改后的dvwa (修改默认security level 修改为high,且high level下设置了httpOnly标志)


使用到的工具:
2.用户端浏览器使用chrome
3. Shell of the Future_v0.9
本文用到的最重要工具,用来实现XSS会话劫持,关于Shell of the Future,请参考:http://www.andlabs.org/tools/sotf/sotf.html
Shell of the Future 监听8080 和1337端口,8080 为对外公开,提供恶意js下载、建立http 通道
1337 监听在本地,用来管理被劫持的会话
选择Server + Proxy 模式,点击start 即可

4. burpsuite 1.7
运行在客户端(就是在虚拟机中,用户端访问含有XSS漏洞的站点时通过burpsuite代理访问,这样会捕获用户的访问,观察会话劫持的过程)
5.Vmware WorkStation
虚拟机,充当用户端 (192.168.3.206)
虚拟机充当用户访问设备 ,宿主机充当以下角色
1)dvwa 所在服务器(充当含有XSS漏洞的站点)192.168.2.85www.xss.net
2)xss漏洞触发时下载js所在服务器(即Shell of the Future所在服务器)192.168.2.85www.attacker.net
3)Shell of Future 管理后台: http://localhost/sotf.console
登录Shell of Future 管理后台的浏览器做以下设置:

然后地址栏输入 http://localhost/sotf.console,当看到如下界面时,说明shell of the future 和管理后台的浏览器设置OK

0×03. 测试过程
1) 事先插入一段xss代码
修改dvwa 数据库下的guestbook表的comment字段大小为800(不然长度不够嘿嘿)

然后插入一段xss 代码

2) 配置好用户端的hosts
192.168.2.85www.xss.net
192.168.2.85www.attacker.net
3)开始测试
用户端打开含有xss漏洞的站点:

恩,确认cookie设置了httpOnly标识
打开含有xss

[1] [2]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载