来源:自学PHP网 时间:2015-04-17 13:03 作者: 阅读:次
[导读] 当我们要利用一个CSRF漏洞去攻击的时候,常会在第三方站点使用资源请求的方式加载存在漏洞的CSRF接口,当用户访问这个页面的时候就会偷偷的发送http request到漏洞站点,即攻击成功。...
当我们要利用一个CSRF漏洞去攻击的时候,常会在第三方站点使用资源请求的方式加载存在漏洞的CSRF接口,当用户访问这个页面的时候就会偷偷的发送http request到漏洞站点,即攻击成功。实例利用代码: <img src="http://www.2cto.com /index.php?csrf=woyigui"> 使用资源发送http request的方法很多,带上认证信息的属性如:SRC、background等,标签可使用img、script、css等。
正常使用html标签去加载所需要的资源的时候,对应的类型是一致的,如:
和正常加载相反的是:我们进行CSRF攻击的时候请求的接口正好返回的 text/html 类型,这就与正常的请求有区别了。 //img src CSRF 对比 <img src="http://www.2cto.com /img/baidu_sylogo1.gif" /> <img src="http://www.2cto.com /index.php?csrf=woyigui" /> //script src CSRF 对比 <script src="http://www.2cto.com /js/bdsug.js?v=1.0.3.0"></script> <script src="http://www.2cto.com /index.php?csrf=woyigui"></script>
可以看到,区别是有的,script、img去请求的http api却是text/html的,这是有问题的,可能就是CSRF攻击。 //误报 <script src="http://www.2cto.com /my/alert.html"></script>
基于如上的对比与分析,我们可以在浏览器中这样做: 此文在刚逛物美想到的,如有缺陷,请找我交流,感谢。 摘自 woyigui's blog www.woyigui.cn |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com