你的 Xcode 已签收,签收人:草签

从昨天上午开始,关于 「XcodeGhost 病毒」的信息充斥了 IT 圈,一石激起千层浪,其火爆程度丝毫不亚于一颗炸弹扔进了粪坑,分量十足。

作为一个嗅觉灵敏的技术男,我也心安理得地放下手上正在码的代码,过去凑了会热闹。

又作为一个循循善诱育人不倦的好老师,小明先给技术盲普及下计算机基础知识:

你现在常用的电脑软件、手机 APP,都是由那群号称「技术改变世界」的程序猿编好代码(这个快乐而痛苦的过程俗称「码代码」,这群苦逼的程序猿俗称「码农」),然后用某款神通广大的编译器编译成可执行程序,然后打包、发布,最后你通过各种渠道下载对应的软件、APP 装到电脑或手机上执行。

下面再科普「病毒」和「漏洞」:

病毒,好比癌细胞,它会繁殖、感染,往一切可能被渗透的地方扩散,更要命的是,它还会自身复制,一生二,二生四,四生八,八方万物……「天下武功,为快不破」,病毒都是主动出击,寻找自己的肉鸡。软件要是中病毒了,如果放任不管,不但自身被吸血,最后变成行尸,还会连累跟你做邻居的其他软件。所以,为了所谓的安全,一般电脑上都要装安全防护软件,用大家都听得懂的人话来讲就是「杀毒软件」(Mac 用户请不要觉得惊讶)

漏洞,则是由于软件本身的 Bug 导致的,由于程序员也不是万能的,大脑也有缺氧短路的时候,谁能保证自己的代码百分百正确呢,一时的逻辑混乱就可能挖下一个巨大的坑,导致软件日后被人利用,这种就是「漏洞」。

自从软件诞生的那一天起,病毒、漏洞这对夺命双头鲨就和它相伴相随,不离不弃,弃而不舍,剪不断理还乱……没有一款软件胆敢号称终身无病毒无毒副作用,当然,也没有哪一种漏洞、病毒能号称能百发百中、侵之四海而皆准。

软件和病毒到底谁能干掉谁?这就涉及到各自「术」的能力高低了,两大阵营之间的斗争从上世纪四五十年代一直延续至今。这对冤家的关系好比「道」和「魔」:

道高一尺,魔高一丈,道挡不过马上穿金钟罩铁布衫护体,魔诡魅一笑放出三分归元气,道感觉到一阵强烈的地震波袭来,马上用降龙第十八掌降龙有悔回击,魔见正面久攻不进,改用暗器,刷刷刷,五枚冰魄银针射出,说时迟那时快,在距离眼睫毛只有 0.01 公分的一刹那……

好吧,天亮了,梦醒了,别意淫了。

醒来继续说说今天的主题,什么是 XCodeGhost?

9 月 17 日上午 9 点,著名的 iOS 开发工程师唐巧老师发了一篇微博:

在非官方渠道下载的 Xcode(苹果软件开发必备工具)居然自带病毒文件?!这种事小明老师还是第一次知道:

这个 XcodeGhost 病毒颇有创新意识,它不走传统病毒传播的老路,而是独辟蹊径,直接把病毒代码嵌入了开发工具源头,只要用了注入病毒的 Xcode 来开发软件,任凭你代码如何健壮,照样毒入真身。

造成的结果是,通过这些 Xcode 编译出来的 App 会被注入不知名的第三方代码,并且向一个陌生的可疑的非苹果官方网站: http://init.icloud-analysis.com 发送数据。

众所周知,由于车迟国互联网与世隔绝,车池国人民访问海外网站的速度只能用「你懂的」蜗速形容。有些程序员急于开发,就想偷懒从国内的某鸟类图标的下载软件搜索下载 Xcode,而木马作者,将他开发的带有木马的编译器发布到了各种平台上,提供种子,导致不明真相的程序员下载到了包含木马的版本,当然,其中有些人也大意得忘了去和官网的版本校验比对。

程序员号称智商一流,没想到啊没想到,在他们都完全不知情的情况下,乐呵呵地发布了包含木马的 APP,而苹果公司在审核过程中,居然也没有能检测出这些恶意代码,因此这些包含恶意代码的 APP 顺利登录了 Appstore,并被数百万甚至数千万用户下载……

这个中招的名单非常恐怖,截止目前,包括但不限于这些 iPhone 上的 APP 均中枪:

  • 网易云音乐
  • 网易公开课
  • 12306 移动端
  • 中信银行动卡空间
  • 下厨房
  • 中国联通手机营业厅
  • 高德地图
  • 简书
  • 豌豆荚开眼
  • 滴滴打车
  • 51卡保险箱
  • 同花顺

细思恐极,后背发凉。

已经有各种技术宅通过代码逆向等方式(详见:http://drops.wooyun.org/news/8864)对该木马挖坟鞭尸,从目前来看,在 Xcode 中莫名加入的这段代码并没有什么恶意,只是收集一些 iPhone 和 APP 相关的时间、包名、应用名称、系统版本、语言、国家等部分数据,但是不得不防的是,未来很可能出现更加带有攻击性的病毒注入 Xcode,那么对于用户手机安全,这其中存在巨大的隐患。

在此,严重建议:

所有使用苹果手机的用户,请密切关注有关报道,尽快卸载公告名单中的软件,并跟踪乌云:http://drops.wooyun.org 或其他安全组织最新的公告寻求解决方案,安全起见,建议修改 Apple ID 及 iCloud 密码。