XCode编译器里有鬼 – XCodeGhost样本分析

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

0x00 序


事情的起因是@唐巧_boy在微博上发了一条微博说到:一个朋友告诉我他们通过在非官方渠道下载的 Xcode 编译出来的 app 被注入了第三方的代码,会向一个网站上传数据,目前已知两个知名的 App 被注入。

enter image description here

随后很多留言的小伙伴们纷纷表示中招,@谁敢乱说话表示:”还是不能相信迅雷,我是把官网上的下载URL复制到迅雷里下载的,还是中招了。我说一下:有问题的Xcode6.4.dmg的sha1是:a836d8fa0fce198e061b7b38b826178b44c053a8,官方正确的是:672e3dcb7727fc6db071e5a8528b70aa03900bb0,大家一定要校验。”另外还有一位小伙伴表示他是在百度网盘上下载的,也中招了。

0x01 样本分析


在@疯狗 @longye的帮助下,@JoeyBlue_ 为我们提供了病毒样本:CoreService库文件,因为用带这个库的Xcode编译出的app都会中毒,所以我们给这个样本起名为:XCodeGhostCoreService是在”/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/Library/Frameworks/CoreServices.framework/”目录下发现的,这个样本的基本信息如下:

#!bash
$shasum CoreService
f2961eda0a224c955fe8040340ad76ba55909ad5  CoreService

$file CoreService
CoreService: Mach-O universal binary with 5 architectures
CoreService (for architecture i386):    Mach-O object i386
CoreService (for architecture x86_64):  Mach-O 64-bit object x86_64
CoreService (for architecture armv7):   Mach-O object arm
CoreService (for architecture armv7s):  Mach-O object arm
CoreService (for architecture arm64):   Mach-O 64-bit object

用ida打开,发现样本非常简单,只有少量函数。主要的功能就是先收集一些iPhone和app的基本信息,包括:时间,bundle id(包名),应用名称,系统版本,语言,国家等。如图所示:

enter image description here

随后会把这些信息上传到 init.icloud-analysis.com。如图所示:

enter image description here

http://init.icloud-analysis.com并不是apple 的官方网站,而是病毒作者所申请的仿冒网站,用来收集数据信息的。

enter image description here

目前该网站的服务器已经关闭,用whois查询服务器信息也没有太多可以挖掘的地方。这说明病毒作者是个老手,并且非常小心,在代码和服务器上都没有留下什么痕迹,所以不排除以后还会继续做作案的可能。

0x02 检测方法


为了防止app被插入恶意库文件,开发者除了检测”/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs” 目录下是否有可疑的framework文件之外,还应该检测一下Target->Build Setting->Search Paths->Framework Search Paths中的设置。看看是否有可疑的frameworks混杂其中:

enter image description here

另外因为最近iOS dylib病毒也十分泛滥,为了防止开发者中招,支付宝的小伙伴还提供了一个防止被dylib hook的小技巧:在Build Settings中找到“Other Linker Flags”在其中加上”-Wl,-sectcreate,__RESTRICT,__restrict,/dev/null”即可。

enter image description here

最后的建议是:以后下载XCode编译器尽可能使用官方渠道,以免app被打包进恶意的病毒库。如果非要用非官方渠道,一定要在下载后校验一下哈希值。

0x03 思考&总结


虽然XCodeGhost并没有非常严重的恶意行为,但是这种病毒传播方式在iOS上还是首次。也许这只是病毒作者试试水而已,可能随后还会有更大的动作,请开发者务必要小心。这个病毒让我想到了UNIX 之父 Ken Thompson 的图灵奖演讲 “Reflections of Trusting Trust”。他曾经假设可以实现了一个修改的 tcc,用它编译 su login 能产生后门,用修改的tcc编译“正版”的 tcc 代码也能够产生有着同样后门的 tcc。也就是不论 bootstrap (用 tcc 编译 tcc) 多少次,不论如何查看源码都无法发现后门,真是细思恐极啊。

0x04 追加更新


1 很多开发者们担心最近下载的Xcode 7也不安全。这里笔者没有使用任何下载工具的情况在苹果官网上下载了Xcode_7.dmg并计算了sha1的值。

http://adcdownload.apple.com/Developer_Tools/Xcode_7/Xcode_7.dmg
$ shasum Xcode_7.dmg
4afc067e5fc9266413c157167a123c8cdfdfb15e  Xcode_7.dmg

enter image description here

所以如果在非App Store下载的各位开发者们可以用shasum校验一下自己下载的Xcode 7是否是原版。

2 @FlowerCode同学通过分析流量发现病毒开发者的服务器是搭建在Amazon EC2的云上的。服务器已经关闭 。

enter image description here

3 根据palo alto networks公司爆料,被感染的知名App Store应用为”网易云音乐”!该app应用在AppStore上的最新版本2.8.3已经确认被感染。并且该应用的Xcode编译版本为6.4(6E35b),也就是XcodeGhost病毒所感染的那个版本。网易云音乐在AppStore上目前的状态:

enter image description here

enter image description here

"网易云音乐"逆向后的函数列表,可以找到XcodeGhost所插入的函数:

enter image description here

受感染的"网易云音乐"app会把手机隐私信息发送到病毒作者的服务器”init.icloud-analysis.com”上面:

enter image description here

4 根据热心网友举报,投毒者网名为”coderfun”。他在各种iOS开发者论坛或者weibo后留言引诱iOS开发者下载有毒版本的Xcode。并且中毒的版本不止Xcode 6.4,还有6.1,6.2和6.3等等。

enter image description here

enter image description here

enter image description here

5 根据热心网友提醒,我们在中信银行信用卡的应用”动卡空间”中也发现了被插入的XcodeGhost恶意代码,受感染的版本为3.4.4。

enter image description here

enter image description here

被插入的部分恶意代码如下:

enter image description here

6 在@Saic的提示下我们发现受感染的app还拥有接收黑客在云端的命令并按照黑客的指令发送URLScheme的能力:

enter image description here

URLScheme是iOS系统中为了方便app之间互相调用而设计的。你可以通过一个类似URL的链接,通过系统的Openurl来打开另一个应用,并可以传递一些参数。一个恶意的app通过发送URLScheme能干什么呢?

<1>. 可以和safari进行通讯打开钓鱼网站。
<2>. 可以和AppStore进行通讯诱导用户下载其他AppStore应用。
<3>. 可以和itms-services服务通讯诱导用户下载无需AppStore审核的企业应用。
<4>. 向支付平台通讯发送欺骗性的支付请求等。

7 目前已经官方确认中毒的app有:微信,网易云音乐,豌豆荚的开眼等。

enter image description here

enter image description here

enter image description here

0x05 病毒作者现身


微博地址:http://weibo.com/u/5704632164

enter image description here

发表长微博内容:

"XcodeGhost" Source 关于所谓”XcodeGhost”的澄清

首先,我为XcodeGhost事件给大家带来的困惑致歉。XcodeGhost源于我自己的实验,没有任何威胁性行为,详情见源代码:https://github.com/XcodeGhostSource/XcodeGhost

所谓的XcodeGhost实际是苦逼iOS开发者的一次意外发现:修改Xcode编译配置文本可以加载指定的代码文件,于是我写下上述附件中的代码去尝试,并上传到自己的网盘中。

在代码中获取的全部数据实际为基本的app信息:应用名、应用版本号、系统版本号、语言、国家名、开发者符号、app安装时间、设备名称、设备类型。除此之外,没有获取任何其他数据。需要郑重说明的是:出于私心,我在代码加入了广告功能,希望将来可以推广自己的应用(有心人可以比对附件源代码做校验)。但实际上,从开始到最终关闭服务器,我并未使用过广告功能。而在10天前,我已主动关闭服务器,并删除所有数据,更不会对任何人有任何影响。

愿谣言止于真相,所谓的"XcodeGhost",以前是一次错误的实验,以后只是彻底死亡的代码而已。

需要强调的是,XcodeGhost不会影响任何App的使用,更不会获取隐私数据,仅仅是一段已经死亡的代码。

再次真诚的致歉,愿大家周末愉快



30
zby 2015-09-20 23:35:49

之前遇到过,从百度盘上下载windows server系统,哈希值与官方不一样的情况,不会也是这种东西吧。。

30
yoyokko 2015-09-20 23:29:05

@MagicBoy 怎么给你

30
MagicBoy 2015-09-20 22:10:15

@yoyokko 您好,能方便提供下病毒样本供分析么?谢谢。

30
0x398 2015-09-20 21:27:59

确实细思甚恐, 以后从包管理器安装的软件都不可信, 官方校验值都是有问题的.

30
我了个去 2015-09-20 17:26:03

根据seo的情况个人感觉不太像单人作战,更像团体作战,如果真是作者自己一个人的试验,则让我想起一句电影台词:有时候正是人们不报期望之人,做出了人们不敢期望之事。

30
审判者 2015-09-20 13:25:33

现在的事情发展得怎么样了?

30
基木 2015-09-20 12:13:54

@战斗喵 没错,很久早有这个问题,然后直接用oracle.com下载。渣雷下载还是没发现不同验证。难道不同服务器么?

30
QA 2015-09-20 12:13:11

@疯狗 螳螂捕蝉黄雀在后

30
战斗喵 2015-09-20 09:56:45

@kings0527 那是oracle自己作死,通过java.com下载的JDK就带百度全家福,oracle.com下载的就没有!

30
路人 2015-09-20 06:32:49

@kings0527 百度全家桶还真不一定全是迅雷的锅,前几个月我在微博看到过别人吐槽oracle和百度合作,装jdk强行一起装百度全家桶的,没准完全变全家桶是oracle的锅呢。

30
哈哈 2015-09-19 17:14:59

@mosquito 也许xcodeghost作者就是受到了bruce schneier的启发呢

30
迅雷强伊文 2015-09-19 16:55:53

至本文作者:“谁敢乱说话”已经在他的微博上发布了澄清http://weibo.com/1686747232/CBf2aegc3?from=page_1005051686747232_profile&wvr=6&mod=weibotime 希望本文作者可以在本文中帮助我们澄清这件事。

30
kings0527 2015-09-19 16:24:52

@迅雷强伊文 抱歉,具体的肯定找不到了,总之是官网的jdk地址,我有个兄弟也在迅雷,当时给他看,但是貌似不是迅雷组的,也懒得去管,这个事情应该不止一次,所以我也只好当作是个百度迅雷全家桶合作。。。。但是好歹也给我把jdk下来。现在回想,估计还是你们服务器有问题,业务逻辑肯定是有漏洞导致的信任了非官方文件。人格担保,绝非抹黑,之前我有截图,可惜聊天记录都清理过了。

30
作者公布源码了 2015-09-19 16:05:49

https://github.com/XcodeGhostSource/XcodeGhost

30
迅雷强伊文 2015-09-19 14:51:42

@kings0527 能把下载地址发给我试试吗?

30
kings0527 2015-09-19 14:48:56

@迅雷强伊文 你好,请问我在oracle官网的jdk的链接 在迅雷中下载后成了百度全家桶,这个问题你们查查怎么回事,个人猜测你们只是去信任了客户端首次上传或者多数人上传的一个结果?而不是每次都从官方服务器离线最新了?

30
小大人 2015-09-19 11:40:12

@吃萝卜的大灰狼 没有就好 老娘今天还要用迅雷下载呢

30
tx 2015-09-19 11:10:28

http://mp.weixin.qq.com/s?__biz=MjM5NzE1NjA0MQ==&mid=209375585&idx=1&sn=d6f044867307c474a38ee6865b1eb4ca&scene=1&srcid=0919PAwekpTIFXgKVgwXhIS8&from=groupmessage&isappinstalled=0#rd

30
没有昵称 2015-09-19 10:48:00

更新

30
Mark 2015-09-19 10:16:01

有种预感,这只是一个开始。。。

30
yoyokko 2015-09-19 09:21:17

@p4 不用 lib怎么加壳 没听说过

30
ADJazz 2015-09-19 09:03:00

开发者作的死,用户受罪。

30
p4 2015-09-19 08:53:40

@ yoyokko 昨天反编译的时候,需要脱壳么~ 这哥们是擦不干净屁股,干脆不擦了~

30
ios 2015-09-19 08:45:12

@迷糊蛋 我也覺得ios9時,下載app的時候,輸入密碼次數比以前多了好多,以前直接指紋就行了

30
yfly 2015-09-19 08:34:25

感觉用Mac版的AppStore下载挺快的,基本上就是满网速下载,不过网速是8M光纤。

30
坑惨了 2015-09-19 08:28:51

@迷糊蛋 我之前下载也是 提示输入好几次密码!抓紧改密码

30
123456 2015-09-19 08:22:22

疑似xcodeghost作者发微了http://weibo.com/u/5704632164

30
zzdwcm 2015-09-19 08:09:55

@fvter 这哥们本来可能像嵌入点广告挣点小钱。没想到后来发现连滴滴都中招,几亿用户掌握在自己手中,直接自己给吓尿了

30
朝野布告 2015-09-19 07:43:35

@tkiller 国家信息安全预警中心14号就预警过

30
fvter 2015-09-19 07:20:33

OMG,貌似是作者现身了。http://weibo.com/u/5704632164 https://github.com/XcodeGhostSource/XcodeGhost

30
paros 2015-09-19 06:37:42

通过抓包工具发现,滴滴出行4.0.0,还有个奇怪的请求 http://id1.cn/a/后面是UUID格式的字符串 这个域名显示未备案,都无法访问了,滴滴别的请求User-Agent都是di di d,唯独这个是 滴滴打车/4.0.0.6

30
Honeyjuanjuan 2015-09-19 01:42:02

请问Mac端在论坛下载了office2016版其中注册过程使用了Xcode会不会有影响啊

30
mosquito 2015-09-19 01:18:47

有没有人想起半年前的这个新闻 https://www.schneier.com/blog/archives/2015/03/how_the_cia_mig.html? 我当时还想,谁会下第三方的xcode,CIA蠢到家了……

30
2015-09-19 00:48:37

http://my.oschina.net/u/559682 这个貌似也是他的

30
迅雷强伊文 2015-09-19 00:48:16

我们查到SHA1值为“a836d8fa0fce198e061b7b38b826178b44c053a8”这个被篡改的Xcode6.4文件,最早是从百度网盘添加到离线下载当中的,也就是说用户最早是在百度网盘上看到这个文件,然后使用离线下载创建了任务来下这个文件而已。该文件连文件大小都比官方版本大6.97MB。肯定不可能是用迅雷下载官方链接时下错的。

30
测试测试 2015-09-19 00:04:10

域名曾经在dnspod绑定过 2015 Feb 26 Changes on that date Domain created or Nameservers Added Added ns66.domaincontrol.com Added ns65.domaincontrol.com Active Name Servers on that date ns66.domaincontrol.com ns65.domaincontrol.com Mar 3 Changes on that date Removed ns66.domaincontrol.com Removed ns65.domaincontrol.com Added f1g1ns2.dnspod.net Added f1g1ns1.dnspod.net Active Name Servers on that date f1g1ns2.dnspod.net f1g1ns1.dnspod.net Aug 27 Changes on that date Removed ns26.domaincontrol.com Removed ns25.domaincontrol.com Added ns46.domaincontrol.com Added ns45.domaincontrol.com Active Name Servers on that date f1g1ns2.dnspod.net f1g1ns1.dnspod.net ns46.domaincontrol.com ns45.domaincontrol.com

30
jijiji 2015-09-19 00:03:30

感觉本次事件会引起一轮ios app大筛查,估计还能爆出不少猛料。。。哈哈哈

30
测试测试 2015-09-19 00:00:51

谁有domaintools的会员?可以查一下icloud-analysis.com的whois数据,最先注册的时候应该没有加隐私保护。

30
ffoo 2015-09-18 23:59:58

刚反汇编了同花顺,发现它的原理很简单,就是实现了UIWindow的category,重写了makeKeyAndVisible方法,先调用[[[UIApplication sharedApplication] keyWindow] makeKey];和self.hidden=NO;来替代这个函数,然后就调用它自己的一堆东西,observe application的通知、发请求啥的。因为每个APP启动时系统必调这个方法,所以只需要把lib link进工程就可以了,木有用到method swizzling等。

30
迅雷强伊文 2015-09-18 23:59:21

@Constantine Xcode7 的正确SHA1值就是4afc067e5fc9266413c157167a123c8cdfdfb15e这个。说明你试过之后也是没问题的。

30
Constantine 2015-09-18 23:52:02

@迅雷强伊文 刚下了遍X7是4afc0开头的

30
Constantine 2015-09-18 23:49:30

@迷糊蛋 商店下载是要输密码啊 几个APP一起下载只要输一次

30
Jozin 2015-09-18 23:26:36

android sdk或者ecilpse非正规渠道下载的更多 要是有人放毒 多少app中招

30
ios 2015-09-18 23:17:53

被iOS6 卡在了微信5.2.5怎么办。。

30
WWW 2015-09-18 23:04:45

能否提供中毒Xcode安装包,实在下不到

30
stardust 2015-09-18 22:53:51

卧槽我微信版本比那名单版本高了一级不会有事吧卧槽天啊救命

30
Huc-Unis 2015-09-18 22:52:14

有恶意代码的APP苹果也给审核通过?

30
迷糊蛋 2015-09-18 22:38:07

我想说,我是在苹果的APP STORE里面下载的应用,可为什么也不断的弹出输入密码的窗口?重点是我在此之前并不知情,所以我一次次地输入了自己的ID密码,请问这有什么影响不?

30
迅雷强伊文 2015-09-18 22:31:11

@路人乙 我们测试了文中提到的Xcode6.4 7.0两个版本的实际下载情况,查了电信和联通的索引服务器中的校验信息,查了离线服务器上的文件。都是跟官方下载地址的文件一致的。真的没问题!真了又真!

30
路人乙 2015-09-18 22:25:53

@迅雷强伊文 @谁敢乱说话表示:”还是不能相信迅雷,我是把官网上的下载URL复制到迅雷里下载的,还是中招了。

30
测试测试 2015-09-18 22:15:47

@lll 我抓dnsmasq的log测试了滴滴,没找到这个域名

30
魔力猫 2015-09-18 22:05:10

@不是吧 保密问题这关应该没事。如果通过客户后备邮箱去找回,也会让内容被修改掉,那样很容易被发现。所以目前唯一可能丢失的就是密码本身。估计最大可能还是收集用来撞库,就是登陆内购都不太可能,那样马上就会被发现。

30
迅雷强伊文 2015-09-18 22:03:00

@BlackHack 目前来看这应该是个谣言,除了我们,还看到有好几个人都试过了,并没有发现问题。

30
路人甲 2015-09-18 21:52:47

好热闹

30
不是吧 2015-09-18 21:16:31

单纯是收集app的版本之类信息吗?apple ID的密码肯定要改吧,保密问题要改吗,其他银行app有中招吗?

30
鲁逊 2015-09-18 21:03:52

我向来是不惮以最坏的恶意,来揣测中国人。 这一定是朝廷授意干的。

30
xd 2015-09-18 20:56:42

网易公开课和公交e路通也中招了

30
BlackHack 2015-09-18 20:52:53

@ffoo 迅雷离线服务器也被感染,官网地址用迅雷下也会中招

30
tkiller 2015-09-18 20:40:35

建议大家有手机银行的,各个账户密码基本都是同一个的,最好修改密码,iphone群体越来越成为有高价值的目标群体,请大家好自为之,电子货币来去无踪,最好不要设计到金融!!! 国家信息安全部门有动作吗?既然病毒分析服务器是构建在Amazon EC2上面的,那么其信用卡付款信息分分钟查得到吧??? 还有,安卓开发系统有这个问题吗?

30
Colder 2015-09-18 20:39:56

@killer 没下载之前没办法知道MD5

30
阿凡树 2015-09-18 20:33:35

MARK ,中招的人不少

30
ffoo 2015-09-18 20:29:12

确定是Xcode引起的?这么多APP用了同一修改过的Xcode编译,有点搞笑。还有,能被反汇编出来只能是静态库。

30
谣言似山 2015-09-18 20:25:06

@麦刀塔(AppStore) 你为啥不从Mac App Store下载?

30
HD版本用户 2015-09-18 20:21:31

也不管网络上的各位是否会测试pad版本的app是否有问题了,先说一下自己的情况吧,pad上装过三个受这次风波影响的app:网易云音乐、喜马拉雅、同花顺。网易云装了半年多,其他两个都是近两个月才装,期间确实出现过一次在桌面上跳框要求输入密码的情况,当时是取消了。现在看来似乎是后两个app德嫌疑大一些。

30
tkiller 2015-09-18 20:14:10

现在的开发者太不严谨,这么随便?拖下来的开发工具不校验的吗?那官方的sha1校验值是给白痴看的?公司内部服务器没有开发工具的备份,没人负责分发管理? 安卓有没有这样的问题啊?

30
tkiller 2015-09-18 20:12:51

@Xx 有只从原始地址的选项,大家选了吗?最新版的迅雷本人没有,但目前用的迅雷老版本是有这个选项的,idm非常好使,flashget拖这些玩意完全可以,或者命令行的都行,

30
天晚上 2015-09-18 20:02:47

真可怕,文字补丁地丁添丁

30
ttr 2015-09-18 19:48:01

@yoyokko 仔细看了下反编译。伪造的弹窗并没设置 style,应该不是盗密码的。alertView 的 click 响应present 一个 SKStoreViewController ,最多可能是诱导下载应用,刷榜啥的。 已见。

30
halo 2015-09-18 19:46:22

能不能反编译一下同花顺app看看到底upload了什么内容呢?金融安全非常重要,请帮忙看看有没有银行卡和密码等敏感信息泄露

30
yoyokko 2015-09-18 19:38:21

@ttr http://drops.wooyun.org/mobile/4998

30
QQ 2015-09-18 19:37:04

这次是不是某个猥琐的厂商作恶

30
yoyokko 2015-09-18 19:34:35

@ttr 无需越狱伪装icloud密码输入框的技术文章早有了 之前风风火火的第三方市场发布的所谓正版app盗取icloud密码正是次技术 另外官方alertview不能加输入框是ios5之前的事了吧,就算ios5之前也能自给加的

30
我是你爹 2015-09-18 19:34:10

@匿名用户B 那你咋不说是xyzhushou.com?这跟xyzhushou.me域名比较不是更像么??然后拐弯抹角让你知道一个xyzhushou.me?太低估了写恶意代码的人的智商了吧?别弄无聊的东西出来恶心大家了。。

30
ttr 2015-09-18 19:30:49

研究了一下,据我所知,alertview不能加输入框都,如何能实现钓鱼?也许云风说的对,危言耸听。。

30
匿名用户B 2015-09-18 19:28:48

@匿名用户B init.icloud-analysis.com domain information 2015-07-17 52.2.85.22 2015-05-14 52.4.74.88 2015-05-13 52.6.167.64 2015-04-29 52.68.131.221 2015-04-15 104.238.125.92 104.238.125.92 IP address information 2015-07-03 xyzhushou.me 2015-04-15 init.icloud-analysis.com

30
匿名用户B 2015-09-18 19:24:31

@匿名用户 额,你这证据"铁"在哪里????。。。。。。

30
yoyokko 2015-09-18 19:21:41

@x 啥意思?执行病毒代码吗?不确定病毒服务器返回的数据格式,可以伪造病毒服务器返回数据试试。收到服务器回复后弹框是铁定事实。 大家最好改icloud密码

30
匿名用户 2015-09-18 19:18:53

@共匪 @我是你爹 铁一般的证据 https://www.virustotal.com/en/domain/init.icloud-analysis.com/information/

30
共匪 2015-09-18 19:16:36

@雷小某 因为我觉得你挺"逗"

30
x 2015-09-18 19:14:29

@yoyokko 有没有反射执行的可能性?

30
我是你爹 2015-09-18 19:10:30

@雷小某 一个域名放一起,毛线证据没得就能扯那么远跟"准",幸好我的眼睛不瞎。。。

30
yoyokko 2015-09-18 19:03:50

基本确定病毒先将信息post到服务器,收到服务器返回后,connectiondidfinishloading里调用response的block代码,里面弹出alertview,如果这个alertview不是用来伪装icloud密码输入框岂不是被人发现了?不确定服务器是否有开关来选择性的弹出alertview。另外病毒有部分字符串被加密,病毒里还自带encrypt和decrypt函数,居心叵测!!千万别以为只上传了部分非隐私的信息就放松警惕!

30
迅雷强伊文 2015-09-18 18:58:04

@ZacharyTAT 怎么可能不校验,Xcode6.4我们测过了没问题。至今没有看到第二个人说用迅雷下的Xcode有问题。

30
ZacharyTAT 2015-09-18 18:47:34

迅雷下载难道不会检测哈希值之类的吗?不然的话迅雷就太危险了!!!

30
dohellodo 2015-09-18 18:47:10

自己不链接这个framework,是怎么链接到APP里去的。Apple提供的公共库都有数字签名的,Xcode编译时会验证的,改不了吧。

30
yoyokko 2015-09-18 18:45:13

___51-[UIWindow(didFinishLaunchingWithOptions) Response]_block_invoke: 00001f26 0968 ldr r1, [r1] ; @selector(initWithTitle:message:delegate:cancelButtonTitle:otherButtonTitles:) 00001f28 8DE82052 stm.w sp, {r5, r9, r12, lr} 00001f2c FEF768E8 blx sub_0 00001f30 0546 mov r5, r0 00001f32 42F2D210 movw r0, #0x21d2 00001f36 C0F20000 movt r0, #0x0 00001f3a 7844 add r0, pc ; 0x4110 00001f3c 0168 ldr r1, [r0] ; @selector(show) 00001f3e 2846 mov r0, r5 00001f40 FEF75EE8 blx sub_0 00001f44 42F24410 movw r0, #0x2144 00001f48 C0F20000 movt r0, #0x0 00001f4c 7844 add r0, pc ; 0x4094 00001f4e 0168 ldr r1, [r0] ; @selector(integerValue) 抓到病毒弹alertview的代码了,不偷密码没事弹框干嘛??

30
小奥 2015-09-18 18:43:24

除了@图拉鼎 曝光的几个受到 XcodeGhost.Blackdoor 病毒的 App 外,我在 App Store 前50名里还找到了 @喜马拉雅FM 这个 App。另外,根据自测,我本人购买的 @名片全能王 和 @扫描全能王 同时中招。 今天自查的 app 出现此后门的有 滴滴出行 高德地图 喜马拉雅FM 名片全能王 扫描全能王 下厨房 51卡保险箱 同花顺 中信银行动卡空间 中国联通手机营业厅 简书 豌豆荚-开眼 网易公开课 网易云音乐 滴滴出行 12306

30
微信也中招 2015-09-18 18:41:36

微信的某个版本也中过招 by知道创宇

30
强伊文 2015-09-18 18:37:35

@Xx 我们已经测试过了,Xcode6.4用迅雷下载完之后,SHA1值跟文章里提供的正确值是一样的。而且前面也有其他人试过,也是正确的。

30
Xx 2015-09-18 18:30:22

这样说来,使用迅雷下载的任何东西,即使复制的官方链接(点击官方链接自动弹出迅雷下载框),那其实下回来的也不是官方的东西。以后应该禁止使用这类的东西。

30
HD版本用户 2015-09-18 18:28:34

@8884361 不过大家好像都在测试iPhone平台的app,pad平台的都没人测

30
小白睡不醒 2015-09-18 18:24:17

持续关注 感觉这次危害不会小啊

30
滴滴中了 2015-09-18 18:18:49

滴滴打车 3.9.7 已抓包显示该地址 http://init.icloud-analysis.com ,又一个中招的。

30
killer 2015-09-18 18:17:28

有哪位高人能否让百度网盘开发组加一个功能,就是显示当前待下载文件的实际校验值,是md5或者sha1之类的,功德无量! 安卓平台有没有类似的编译器改后插入的隐患?关注吧,这要是银行卡之类的信息丢了,要出人命的!!!

30
8884361 2015-09-18 18:14:29

@HD版本用户 iOS软件,只要是用被感染的开发工具开发都有问题。

30
恺英网络 2015-09-18 18:13:47

这玩意防不胜防 愤怒都是无能的呐喊 还是赶紧检查更新app为妙

30
killer 2015-09-18 18:07:37

如此的网络犯罪,有通知百度冻结并完全物理删除网盘文件了吗?其实百度网盘加一个功能,就是显示当前页面待下载文件的md5或者sha1值,那么这货根本就失去市场!!! 请开发者校验所有的平台软件是否与官方一致! 那么安卓有没有这样类似的问题啊?

30
HD版本用户 2015-09-18 17:58:29

想知道pad上的HD版本有没有中招

30
p4 2015-09-18 17:57:18

360无插件免弹窗浏览极速翻墙盗账号mod版~ 震撼公测中!完全免费!!! 另加宇宙无敌外挂代码自动补全mod,只要999有没有! 亲自前往xcode官方帝都望京360 mod体验店,享受半价,只要299有没有!!! 还是忍不住要吐槽。。

30
p4 2015-09-18 17:54:37

@yoyokkp 多谢,这个可以有。 预见在不久的以后,xcode会有各种mod。

30
coding 2015-09-18 17:47:08

支持正版。。。

30
yoyokkp 2015-09-18 17:43:29

@p4 http://www.cocoachina.com/bbs/read.php?tid-21019.html

30
conf 2015-09-18 17:40:18

对普通用户有影响吗?还是只针对开发者?

30
小新Xeen 2015-09-18 17:37:46

卧槽,好可怕,型号只是采集一点普通的隐私信息,要是把账号密码什么的也采集就更可怕了。

30
hi 2015-09-18 17:37:41

那个Amazon EC2的服务器地址是怎么得来的?国内不是把Amazon EC2墙了吗?

30
匿名用户 2015-09-18 17:35:12

@p4 老板后台政- - 府背景,小屁孩松散开发能干嘛

30
yoyokko 2015-09-18 17:33:18

@p4 他修改了xcode编译设置的链接路径,那个是配置文件,可以修改的。所以只删除病毒文件夹不行,会报链接错误。还得把编译配置文件改回去。最好还是删了重下。

30
p4 2015-09-18 17:31:19

@yoyokko 开发自己不改配置,默认是怎么把CoreService库加进去的?xcode又拿不到源码,也没法用相同办法hack进去,莫非是用xcode插件的路子?! 多说句题外话,这事得罪了国内这么多开发,后续得把丫底裤扒光了吧。估计现在一闹,整事的要在网上到处擦屁股了。。。

30
JoyChou 2015-09-18 17:28:21

火钳刘明

30
匿名a 2015-09-18 17:26:20

@chenx 你可以看一下你xcode安装包的哈希值

30
Leniy 2015-09-18 17:23:29

编译器有病毒,好高级

30
chenx 2015-09-18 17:22:56

原来我的Xcode没事,我同事的Xcode中招了。。。

30
喜马拉雅也感染了 2015-09-18 17:22:20

刚刚抓包,发现喜马拉雅也感染了

30
yoyokko 2015-09-18 17:21:29

@p4 病毒写的category,编译时加入了病毒库的路径的话,都会被编译进去。在通过application的notificaiton监测相关活动

30
this guy 2015-09-18 17:19:25

张奕恒 coderfun.com 电子科技大学中山学院 计算机软件开发 g+:https://plus.google.com/101707516817589039383/about 是这个人吗

30
kales 2015-09-18 17:18:22

https://www.virustotal.com/en/domain/init.icloud-analysis.com/information/ 这次事件的主角 记录与其通信的恶意软件 被检测为KeyRaider 其中指向的ip 104.238.125.92 可以追踪到 xyzhushou.me 这尼玛团伙真大

30
kales 2015-09-18 17:16:05

主域名的icloud-analysis.com 的解析历史 2015-06-08 52.4.74.88 2015-04-30 52.68.131.221 2015-03-01 50.63.202.48 其中 50.63.202.48 曾记录有大量恶意软件通信 https://www.virustotal.com/en/ip-address/50.63.202.48/information/

30
p4 2015-09-18 17:12:30

实现手法是啥,lib库能编译进去,可以用Swizzling。 但是lib库是怎么挂到xcode上的? 哪位解释下手法?

30
kai 2015-09-18 17:08:24

哈哈哈,还是我大安卓安全。

30
chenx 2015-09-18 16:58:48

我检查了我的xcode,没发现上面说的那个文件,但是一个app里加了听云,在后台监控到了那个网站请求。从17号开始的,这是什么原因?

30
xnsc 2015-09-18 16:50:49

oh no ,这回简直了

30
slm 2015-09-18 16:49:15

@jijiji 你进去就知道了…

30
不匿名 2015-09-18 16:40:53

@雷小某 无证据的猜测,有什么意义,拿出证据,把几个像的域名放一起,引导不明真相的群众,有意思吗?只能证明你自己的无知。

30
今天 2015-09-18 16:40:41

呵呵@呵呵

30
flz 2015-09-18 16:37:52

@yoyokko 有可能哦,曾经出现过在桌面没有什么操作也好几次莫名的弹出要求输入icloud密码的框框的现象,不知道和这个有没有关系。另外,我看了路由器上privoxy的日志,那个域名最早是9.1出现的。

30
雷小某 2015-09-18 16:32:00

@共匪 这是有何不满么

30
sh 2015-09-18 16:31:19

interesting

30
iOS小熊 2015-09-18 16:25:03

@小逛 自己可以抓包看啊。我现在只想知道 我吧那个CoreService文件夹删除了,结果编译就报错了。。。请问怎么彻底解决

30
xd 2015-09-18 16:24:48

目前迅雷打开离线和快速通道从官网下载xcode7(http://adcdownload.apple.com/Developer_Tools/Xcode_7/Xcode_7.dmg ),sha1校验是正确的。 4afc067e5fc9266413c157167a123c8cdfdfb15e *Xcode_7.dmg

30
小逛 2015-09-18 16:20:22

招商银行掌上生活是否也被病毒侵入?请帮忙检查

30
共匪 2015-09-18 16:19:57

@雷小某 呵呵

30
呵呵 2015-09-18 16:17:12

这都是长城防火墙惹的祸

30
呵呵 2015-09-18 16:12:52

感觉就是故意的,那些开发者买个mac很轻松,用不着非得上网找,为了收集用户隐私,这些大公司们(你们懂得)不择手段自己收集也就算了,想让全中国开发者都来帮他们收集。自己应用里有这种代码就说是编译器中毒,责任推的一干二净。

30
雷小某 2015-09-18 16:12:34

@test 看微博链接

30
雷小某 2015-09-18 16:11:58

看微博链接,怎么会没有呢?

30
iOS小熊 2015-09-18 16:02:09

我想知道怎么解决 ,我吧那个文件夹删除了,结果编译就报错了。。。请问怎么彻底解决

30
test 2015-09-18 16:00:38

楼上的,新浪微博没有这个人啊, xyzhushou

30
2015-09-18 16:00:25

@雷小某 我擦了难道是某助手?看收集信息的形态略像啊

30
匿名用户 2015-09-18 16:00:10

上海恺英网络科技有限公司 庞东升产业,专业流氓公司

30
caomaocao 2015-09-18 15:55:33

@suiyin 那用户会被收集更多的信息啊,直接爆出来大家卸了先。

30
雷小某 2015-09-18 15:52:17

init.icloud-analysis.com->104.238.125.92(2015-04)->xyzhushou.me ->(?)weibo.com/xyzhushou 雷锋不谢,剩下的看各位自行研判了

30
约稿 2015-09-18 15:47:28

能否提供一下联系方式? 希望给您约一篇稿子。

30
vvv 2015-09-18 15:36:42

还是支付宝安全,至少钱不会丢啊

30
Praise 2015-09-18 15:34:05

还有 联通-手机营业厅,

30
she1 2015-09-18 15:29:40

银行手机端安全何在,还是支付宝吧 起码还有百万赔偿

30
Praise 2015-09-18 15:27:25

同花顺 也中枪

30
jijiji 2015-09-18 15:27:06

想不通为啥这帮写代码的放着正版的,一键下载安装的,自动升级的xcode不用,非要跑去网盘上下xcode。而且网易这么大的公司对开发工具和环境没有管理么,没有流程么?感觉好山寨啊

30
hua 2015-09-18 15:21:24

@F 恩 同事提醒找到了 https://developer.apple.com/downloads/ 可以直接浏览器下载

30
lll 2015-09-18 15:20:33

“通过 Charles 抓包,会向 http://init.icloud-analysis.com 发请求的有网易云音乐,中信银行动卡空间,12306,滴滴打车 #XcodeGhost” by 推油@fannheyward

30
hakazyc 2015-09-18 14:53:13

@勿忘国耻 你这话说的 好像歪果仁不是这样似的

30
23333 2015-09-18 14:45:33

@hahahh 发现了其实都觉得一般,但是人家这思路真是6啊···而且痕迹抹的干净应该是高手所为

30
F 2015-09-18 14:44:37

@hua App Store啊

30
hifoxwei 2015-09-18 14:43:52

12306也中招了

30
23333 2015-09-18 14:43:39

@yoyokko 是的。。。我也觉得这服务器挺牛逼的,每天接受那么多请求呢,劫持方面还没有发现什么,密码输入框应该是劫持不了的,不然所有app都可以劫持这个了。

30
hahahh 2015-09-18 14:39:21

@23333 不用多牛,国内也一堆人会做,不排除炒作作案

30
wefgod 2015-09-18 14:35:59

@疯狗 难道之前的yanzhaomen?就是因为?

30
yoyokko 2015-09-18 14:18:28

@23333 那作者的服务器得有多牛逼,能撑住那么多用户的ddos?感觉收集这些只是伪装,无利不起早

30
yoyokko 2015-09-18 14:16:59

还有一个可能,病毒里是用到了内购相关的代码。可能劫持了内购时的密码输入弹框,网易有内购。谁能搭个服务器,劫持init.icloud-analysis.com的dns指向本地,看下两种情况下到底上传了什么数据。

30
mofet 2015-09-18 14:11:02

我觉得挺奇怪的,第一次运行Xcode的时候,不是会有一个联网验证Xcode的过程吗?难道不是直接向苹果校验吗,为什么在那一步无法报错。

30
23333 2015-09-18 14:05:48

@navisec 其实受限于IOS的限制,提交的数据倒也没什么都是public api(版本号,bundle,国家地区啥玩意的) ,其实app基本都在往自己服务器收集这些东西...Orz,等于这货薅了网易之类的羊毛,往自己那搞了一份,通俗点就是它掌握了网易用户的数据情况(数量分布等),那网易云到底有木有一个亿用户呢233

30
23333 2015-09-18 14:01:53

@勿忘国耻 看着技术水平还不太像是国内的,感觉是国外大牛的作品?

30
勿忘国耻 2015-09-18 14:00:15

只要能挣钱,中国人是什么东西都去做,难怪当年会出现这么多的汉奸!

30
fool 2015-09-18 13:53:16

@navisec 文章不是说了么

30
navisec 2015-09-18 13:47:19

弱弱的问下,这个后门会提交哪些隐私信息到对方的服务器上?

30
太阳雨 2015-09-18 13:39:10

碎银子不够,赏个元宝给你

30
fenchol 2015-09-18 13:38:56

@AIRZOPE 不用印证,就是

30
fenchol 2015-09-18 13:38:06

@fuwu1245 这要看这个公司的网速以及硬件条件

30
微雨飞燕 2015-09-18 13:34:36

30
fuwu1245 2015-09-18 13:22:00

这年有下XCode不都应该只从AppStore里下载么?

30
冰火九天 2015-09-18 13:18:05

撇开技术不谈,看看作者所在公司正在推广的某音乐,似乎明白了什么

30
嘿嘿 2015-09-18 13:05:07

QQ音乐也有

30
肉饼屋 2015-09-18 13:03:50

@AIRZOPE 黑苹果也可以从apple store下载的。。一般从第三方下载的原因都是因为下载速度原因。。从apple store下载实在是太慢了。。。

30
Constantine 2015-09-18 13:01:01

ftmdx啊 窝也中招了

30
c4bbage 2015-09-18 13:00:25

@yoyokko 关注,这应该是一个开始而已。

30
LisonFan 2015-09-18 12:40:22

垃圾网易,干!

30
Zzzipen 2015-09-18 12:36:53

鸟大了,什么林子都有

30
一个笨鸟 2015-09-18 12:33:05

不错的分析

30
wolfer 2015-09-18 12:31:10

@蛋 你要体会一下每秒1kb的心理状态

30
wolfer 2015-09-18 12:30:16

@kirito 都会,就看他们最近(半个月)有没有发包。

30
Yuiki 2015-09-18 12:28:06

@kirito iPhoneOS的CoreServices受感染,应该不会影响到mac的

30
kirito 2015-09-18 12:13:53

mac 版的网易云音乐可能受感染吗?

30
2015-09-18 12:05:56

@AIRZOPE 黑苹果也是可以用App Store的,所以想不通网易在第三方下载Xcode是什么心态

30
AIRZOPE 2015-09-18 11:59:03

侧面印证了网易用黑苹果做开发机的传闻,否则xCode怎么不从官网下。

30
heheda 2015-09-18 11:53:56

大公司也这样?垃圾。

30
hua 2015-09-18 11:50:42

求教“没有使用任何下载工具的情况在苹果官网上下载了Xcode”的方法。

30
Ivan 2015-09-18 11:41:40

这他妈的…… 时间,bundle id(包名),应用名称,系统版本,语言,国家

30
suiyin 2015-09-18 11:39:54

这种情况应该先通知厂商,上线修复了,然后再爆料比较合适吧。。

30
acros 2015-09-18 11:31:10

有一处没懂,目前知道上传的数据有哪些吗?

30
sxyzbbs 2015-09-18 11:29:15

吓得我赶紧用“网易云音乐”听一下歌压压惊。。。

30
zwo 2015-09-18 10:27:05

使用被注入的XCode调试真机,用charles没看到有访问那个恶意URL,把scheme改成release也没观察到。怎么才能触发恶意代码?

30
BZ2N 2015-09-18 10:20:17

官网靠谱,还是要去官网重新下

30
Melody 2015-09-18 10:09:07

把病毒framework删掉后就不能真机调试了,提示找不到文件,Build Settings里面已经吧相关信息也删除了还是提示找不到文件,clean和删除app都没用,模拟器倒是没问题,求解

30
刘先生 2015-09-18 08:21:57

静等下篇分析报告

30
Arthur2e5 2015-09-18 05:04:06

Ken Thompson 那会还没 tcc 啊喂… 后来 boj 按照那个意思用 tcc 举了个例子倒是真的。 另外感觉可以提一下是不是 MD5 一样,百度和迅雷万年 MD5…

30
DorisDev 2015-09-17 23:45:28

棒棒哒→_→

30
-澪- 2015-09-17 22:14:42

还能不能好好地玩耍

30
唐巧_boy 2015-09-17 22:01:16

动作好快,这么快就有分析报告了

30
石-墨-烯 2015-09-17 20:21:08

大鱼吃小鱼,小鱼吃虾米

30
KellyKentKim 2015-09-17 18:05:30

那个把官网URL复制到迅雷里下载还出问题的是怎么做到的?迅雷难道不比较哈希值吗

30
麦刀塔(AppStore) 2015-09-17 22:50:00

米神, 如何查看官网Xcode 的sha1值. 我从迅雷下载好了, 想对比一下sha1值..

30
yoyokko 2015-09-17 21:26:24

猜测是在applicationDidFinishLaunching里解密了UIAlertView的加密字符串,再反射执行相关代码

30
yoyokko 2015-09-17 21:11:44

请注意!!! 注入的代码有iOS弹窗代码的回调 0000000000001e75 t -[UIWindow(didFinishLaunchingWithOptions) alertView:didDismissWithButtonIndex:] 有很大可能性是盗取 icloud 密码。否则偷偷注入的密码不会随便弹窗让人发现它的存在。

30
Ton7BrEak 2015-09-17 19:27:27

细思极恐啊

30
ppt 2015-09-17 19:03:09

nsa?

30
sh3llc0der 2015-09-17 18:54:20

赞 蒸米大神

30
苹果梨 2015-09-17 18:06:03

所以xcode7的sha1码是多少呢……

30
疯狗 2015-09-17 17:55:58

谜解开了,但是感觉这就是个开始。

感谢知乎授权页面模版