关于造成iOS大危机的XcodeGhost病毒,这里有三点更新

jopen 9年前

【更新一】

中招应用在不断扩大中,360 网络攻防实验室在跟进此事,不断更新名单,除了昨天已经确认的之外,还有按照版本号定位的百度音乐(5.2.7.3 – 5.2.7 )、穷游(6.4.1 – 6.4 )、南方航空(2.6.5.0730 –   2.6.5)、天涯社区(2.1)、微信(6.2.5 )等等应用,查看名单更新请点击此处(或前往 360 网络攻防实验室页面),目前可以确认的应用及具体版本号如下:

  • 开眼 1.8.0
  • 联通手机营业厅 3.2
  • 妈妈圈 5.3.0
  • 南方航空 2.6.5.0730 – 2.6.5
  • 南京银行 3.6 – 3.0.4
  • 逆轉三國 5.80.5 – 5.80
  • 穷游 6.4.1
  • 穷游 6.4.1 – 6.4
  • 三国名将 4.5.0.1 – 4.5.1
  • 天使房贷 5.3.0.2 – 5.3.0
  • 天涯社区 5.1.0
  • 铁路 12306 2.1
  • 同花顺 9.60.01
  • 同花顺 9.26.03
  • 图钉 7.7.2
  • 网易公开课 4.2.8
  • 网易云音乐 2.8.3
  • 网易云音乐 2.8.1
  • 微信 6.2.5
  • 我叫 MT 4.6.2
  • 我叫 MT2 1.8.5
  • 下厨房 4.3.2
  • 下厨房 4.3.1
  • 造梦西游 OL 4.6.0
  • 诊疗助手 7.2.3
  • 自由之战 1.0.9
  • 卷皮 3.3.1
  • 简书 2.9.1
  • 股票雷达 5.6.1 – 5.6
  • 高德地图 7.3.8.1040 – 7.3.8
  • 高德地图 7.3.8.2037
  • 夫妻床头话 2.0.1
  • 动卡空间 3.4.4.1 – 3.4.4
  • 电话归属地助手 3.6.3
  • 滴滴打车 3.9.7.1 – 3.9.7
  • 滴滴出行 4.0.0
  • 炒股公开课 3.10.02 – 3.10.01
  • 百度音乐 5.2.7.3 – 5.2.7
  • YaYa 药师 1.1.1
  • YaYa 6.4.3 – 6.4
  • WO + 创富 2.0.6 – 2.0.4
  • WallpaperFlip 1.8
  • VGO 视信 1.6.0
  • UME 电影票 2.9.4
  • UA 电影票 2.9.2
  • Theme 2.4 – 2.4
  • Theme 2.4.2 – 2.4
  • Phone+ 3.3.6
  • Perfect365 4.6.16
  • OPlayer Lite 21051 – 2105
  • MTP 管理微学 1.0.0 – 2.0.1
  • Mail Attach 2.3.2 – 2.3
  • Jewels Quest 2 3.39
  • How Old Do I Look? How Old Am I? -Face Age Camera 3.6.7
  • H3C 易查通 2.3 – 2.2
  • Digit God 2.0.4 – 2.0
  • Cute CUT 1.7
  • CarrotFantasy 1.7.0.1 – 1.7.0
  • CamCard 6.3.2.9095 – 6.3.2
  • Albums 2.9.2
  • AA 记账 1.8.7 – 1.8
  • 51 卡保险箱 5.0.1
  • 2345 浏览器 4.0.1

关于造成iOS大危机的XcodeGhost病毒,这里有三点更新

【更新二】

作为下载渠道方,迅雷也发出公告

以下为迅雷官方回复全文。

各位媒体朋友和迅雷用户:

对于今天爆出的 Xcode 被植入恶意代码一事,我们注意到有猜测称,迅雷服务器受到感染,导致使用迅雷会下载到含有恶意代码的 Xcode。

迅雷第一时间安排工程师进行检测。工程师测试了乌云网原文中提到的 Xcode6.4 和 7.0 两个版本的下载,检查了索引服务器中的文件校验信息,并对比了离线服务器上的文件,结果都与苹果官方下载地址的文件信息一致。也就是说,官方链接的 Xcode 经迅雷下载不会被植入恶意代码。

感谢大家对迅雷的支持,请大家放心使用迅雷!

针对 XcodeGhost 恶意代码事件,有分析人士指出,虽然 XCodeGhost 并没有非常严重的恶意行为,但是这种病毒传播方式在 iOS 上还是首次。也许这只是病毒作者试试水而已,可能随后还会有更大的动作,请开发者务必要小心。

【更新三】

经过 Saic 的研究,推断 XcodeGhost 的攻击模式是:在用户安装了目标应用后,木马会向服务器发送用户数据。服务器根据需要返回模拟弹窗。弹窗可以是提示支付失败,请到目标地址付款,也可以是某个软件的企业安装包。用户被诱导安装未经审核的安装包后,程序可以调用系统的私有 API,实现进一步的攻击目的。

以下为详文:

XcodeGhost 实际用途猜测分析》

本文只是根据已有代码进行的猜测与分析,不代表木马的真实用途。

前情提要:http://drops.wooyun.org/news/8864

根据之前大家的分析,这个木马只是为了收集一些用户基本信息,但事实真是如此?

我拿到了一份 ClassDump 的头文件以及 IDA 反编译的原文件,展开了探索。

关于造成iOS大危机的XcodeGhost病毒,这里有三点更新

ClassDump 来自 @糖炒小虾_txx 

木马通过给 UIWindow 创建 Category 的方法(猜测是通过 makeKeyAndVisible),注册了系统的 enterBackground / becomeActive / enterForeground 等系统通知,在这些节点会向远程服务器发送 DES 加密的用户数据。

关于造成iOS大危机的XcodeGhost病毒,这里有三点更新

通过对加密解密方法的逆向,我们找到了加密的 Key。这里用了一个障眼法,你能猜到 Key 是什么么?

关于造成iOS大危机的XcodeGhost病毒,这里有三点更新

经过解密,和之前分析的结果一致,只有一些用户的基本信息。

关于造成iOS大危机的XcodeGhost病毒,这里有三点更新

费这么大劲装木马,攻击者的目的真的在此?

现在远程服务器已经关闭,但我们看到在木马里还有很多诸如 Store,alertView 之类的方法。

木马的关键都在 Response 里,在这里,攻击者会利用服务器返回,来创建模拟弹窗。

关于造成iOS大危机的XcodeGhost病毒,这里有三点更新

关于造成iOS大危机的XcodeGhost病毒,这里有三点更新

Scheme 参数是一切的关键。

scheme 可以理解为 iOS 系统中的网址,通过指定 scheme,可以实现程序的跳转或调用系统服务,之前流行一时的系统 WIFI 开关就是使用了类似原理。

而且通过 scheme,还能实现跳过 App Store 安装未经审核的企业应用。

Show:Scheme: 的中的方法证实了我的猜测:

关于造成iOS大危机的XcodeGhost病毒,这里有三点更新

所以整个木马的逻辑应该是这样:

在用户安装了目标应用后,木马会向服务器发送用户数据。

服务器根据需要返回模拟弹窗。

弹窗可以是提示支付失败,请到目标地址付款,也可以是某个软件的企业安装包。

用户被诱导安装未经审核的安装包后,程序可以调用系统的私有 API,实现进一步的攻击目的。

木马中还有一些调用应用内购的攻击逻辑,就不展开说明了。

如果之前有遇到任何程序弹出非系统需要输入 Apple ID 或密码的网站,并输入过密码的,还请尽早修改。