事情还没结束!XcodeGhost 截胡攻击/服务端复现

oschina
 oschina
发布于 2015年09月22日
收藏 67

转载自:http://drops.wooyun.org/papers/9024

作者:没羽,蒸米,阿刻,迅迪 @ 阿里移动安全 

0x00 序


截胡,麻将术语,指的是某一位玩家打出一张牌后,此时如果多人要胡这张牌,那么按照逆时针顺序只有最近的人算胡,其他的不能算胡。现也引申意为断别人财路,在别人快成功的时候抢走了别人的胜利果实。

虽然XcodeGhost作者的服务器关闭了,但是受感染的app的行为还在,这些app依然孜孜不倦的向服务器(比如init.icloud- analysis.com,init.icloud-diagnostics.com等)发送着请求。这时候黑客只要使用DNS劫持或者污染技术,声称自 己的服务器就是”init.icloud-analysis.com”,就可以成功的控制这些受感染的app。具体能干什么能,请看我们的详细分析。

另外,有证据表明unity 4.6.4 – unity 5.1.1的开发工具也受到了污染,并且行为与XcodeGhost一致,更恐怖的是,还有证据证明XcodeGhost作者依然逍遥法外,具体内容请查看第三节。

PS:虽然涅槃团队已经发出过攻击的demo了2,但很多细节并没有公布。所以我们打算在这篇文章中给出更加详细的分析过程供大家参考。

0x01通信协议分析


在受感染的客户端App代码中,有个Response方法用于接收和处理远程服务器指令。

enter image description here

Response方法中根据服务器下发的不同数据,解析成不同的命令执行,根据我们分析,此样本大致支持4种远程命令,分别是:设置sleep时长、窗口消息、url scheme、appStore窗口。

通过4种远程命令的单独或组合使用可以产生多种攻击方式:比如下载安装企业证书的App;弹AppStore的应用进行应用推广;弹钓鱼页面进一步窃取用户信息;如果用户手机中存在某url scheme漏洞,还可以进行url scheme攻击等。

enter image description here

其通信协议是基于http协议的,在传输前用DES算法加密http body。Response方法拿到服务器下发送的数据后,调用Decrypt方法进行解密:

enter image description here

如果解密成功,将解密后的数据转换成JSON格式数据:

enter image description here

然后判断服务器端下发的数据,执行不同的操作。如下面截图是设置客户端请求服务端器sleep时长的操作:

enter image description here

0x2恶意行为分析及还原


在逆向了该样本的远程控制代码后,我们还原了其服务端代码,进一步分析其潜在的危害。

首先我们在服务端可以打印出Request的数据,如下图:

enter image description here

红色框标记的协议的头部部分,前4字节为报文长度,第二个2字节为命令长度,最后一个2字节为版本信息,紧跟着头部的为DES的加密数据。我们在服务端将数据解密后显示为:

enter image description here

这里有收集客户端信息上传到控制服务器。

同样我们返回加密数据给客户端:

enter image description here

明文信息为:

enter image description here

客户端根据App的运行状态向服务端提供用户信息,然后控制服务器根据不同的状态返回控制数据:

enter image description here

恶意行为一 定向在客户端弹(诈骗)消息

该样本先判断服务端下发的数据,如果同时在在“alertHeader”、“alertBody”、“appID”、“cancelTitle”、“confirmTitle”、“scheme”字段,则调用UIAlertView在客户端弹框显示消息窗口:

enter image description here

消息的标题、内容由服务端控制

enter image description here

客户端启动受感染的App后,弹出如下页面:

恶意行为二 下载企业证书签名的App

当服务端下发的数据同时包含“configUrl”、“scheme”字段时,客户端调用Show()方法,Show()方法中调用UIApplication.openURL()方法访问configUrl:

enter image description here

通过在服务端配置configUrl,达到下载安装企业证书App的目的:

enter image description here

客户端启动受感染的App后,目标App将被安装:

demo地址:http://v.youku.com/v_show/id_XMTM0MTQyMzM1Ng==.html 

恶意行为三 推送钓鱼页面

通过在服务端配置configUrl,达到推送钓鱼页面的目的:

enter image description here

客户端启动受感染的App后,钓鱼页面被显示:

demo地址:http://v.youku.com/v_show/id_XMTM0MTQyMjkyOA==.html 

恶意行为四 推广AppStore中的应用

通过在服务端配置configUrl,达到推广AppStore中的某些应用的目的:

enter image description here

phishing1.html页面内容:

enter image description here

客户端启动受感染的App后,自动启动AppStore,并显示目标App的下载页面:

demo地址:http://v.youku.com/v_show/id_XMTM0MTQyNTk0MA==.html 

0x03 UnityGhost?


在大家以为一切都完结的时候,百度安全实验室称已经确认”Unity-4.X的感染样本”。并且逻辑行为和XcodeGhost一致,只是上线域名 变成了init.icloud-diagnostics.com。这意味,凡是用过被感染的Unity的app都有窃取隐私和推送广告等恶意行为。

enter image description here

Unity是由Unity Technologies开发的一个让玩家创建诸如三维视频游戏、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。很多有名的手机游戏比如神庙逃亡,纪念碑谷,炉石传说都是用unity进行开发的。

更令人恐怖的是,在百度安全实验室确认后没多久,大家就开始在网上寻找被感染的Unity工具,结果在我搜到一个Unity3D下载帖子的时候发 现”codeFun与2015-09-22 01:18编辑了帖子”!?要知道codeFun就是那个自称XcodeGhost作者的人啊。他竟然也一直没睡,大半夜里一直在看大家发微博观察动静? 随后发现大家知道了Unity也中毒的事情,赶紧去把自己曾经投毒的帖子删了?

enter image description here

现在再去看那个帖子已经被作者删的没有任何内容了。。。 http://game.ceeger.com/forum/read.php?tid=21630&fid=8 

enter image description here

但根据XcodeGhost作者没删之前的截图表明,从unity 4.6.4 – unity 5.1.1的开发工具都有可能被投毒了!

0x04 总结


虽然病毒作者声称并没有进行任何广告或者欺诈行为,但不代表别人不会代替病毒作者进行这些恶意行为。并且作者依然还在逍遥法外!所以立刻!马上!删掉那些中毒的app吧!

0x05 参考资料


  1. 涅槃团队:Xcode幽灵病毒存在恶意下发木马行为 http://drops.wooyun.org/papers/8973 

  2. XcodeGhost 源码 https://github.com/XcodeGhostSource/XcodeGhost  

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:事情还没结束!XcodeGhost 截胡攻击/服务端复现
加载中

最新评论(53

lonyis
lonyis
作为开发者使用来源不明开发平台,连md5值都不检测,作死
Havencode
Havencode

引用来自“yonh”的评论

如果作者“声称并没有进行任何广告或者欺诈行为”,为何要弄那么多版本上传共享?吃饱了撑着,这么多文件,这么大的文件,上传都得几天
不用几天,几小时就可以。
Shine_Sun
Shine_Sun

引用来自“铂金小鸟”的评论

我怀疑是这个人: @龙脊_

引用来自“袁弘龙”的评论

我也觉得是这个,codeFun应该只是巧合

引用来自“南湖船老大”的评论

可以留作证据报警了
找到那个家伙啦!
u
ucaime

引用来自“YuKunYi”的评论

求des的key啊。。。。实验实验。。。。请求都收到了,解不开数据。
stringWi
EDIAGD
EDIAGD
今天,我看 12306客户端,更新修复了这个问题
益达先生
益达先生
NND,看不懂!
iMeteOra
iMeteOra
有没有人去报警了?
Z
ZXEOC
苹果是世界上最安全的系统,除了苹果,别人谁也拿不到你们的数据
苹果是世界上最安全的系统,除了苹果和NSA,别人谁也拿不到你们的数据
苹果是世界上最安全的系统,除了苹果和NSA和CodeFun,别人谁也拿不到你们的数据
苹果是世界上最安全的系统,除了苹果和NSA和codeFun^\w*$,别人谁也拿不到你们的数据
__JM_Joy__
__JM_Joy__
苹果是世界上最安全的系统,你们就别黑了
返回顶部
顶部