XCode编译器里有鬼 –51CTO剖析“苹果APP中毒事件”

原创
移动开发 iOS
苹果中毒已经不是第一次了,但去百度“苹果会中病毒吗?”这个问题,绝大多数的答案是:不越狱根本不会。的确去年流行一时的WireLurker也才感染了30万用户,对于国内数以千万计的苹果用户拉说不值一提。这次,情况严重了许多。

一款隐藏在XCode编译器里的病毒为刚刚推送的iOS9庆生。

苹果中毒已经不是***次了,但去百度“苹果会中病毒吗?”这个问题,绝大多数的答案是:不越狱根本不会。的确去年流行一时的WireLurker也才感染了30万用户,对于国内数以千万计的苹果用户拉说不值一提。这次,情况严重了许多。

9月17日上午,微博用户@JoeyBlue_ 曝光称,有开发者用了非官方渠道下载的Xcode编译出来的应用被注入了第三方的代码,会向一个网站上传数据。

51CTO记者***时间通过乌云知识库作者蒸米了解到:对注入的病毒样本“XcodeGhost“进行分析,确认了上述说法。经分析,该病毒会收集应用和系统的基本信息,包括时间、bundle id(包名)、应用名称、系统版本、语言、国家等,并上传到init.icloud-analysis.com(该域名为病毒作者申请,用于收集数据信息)。

随后,18日上午,硅谷安全公司Palo Alto跟踪事件后发现国内知名应用网易云音乐中招,当前App Store上架的网易云音乐***版v2.8.3已经感染病毒,会将手机隐私信息上传至病毒作者的服务器上(Palo Alto还发现存在更多收集数据的域名)。

问题在于一款APP从开发到上线进入用户手机,当中存在众多环节,那么这款隐藏于XCode编译器里的病毒是如何通过一道道审查的呢?

畅通无阻的病毒

如前文所说,病毒就藏身于从第三方下载XCode编译器里,以至酿成大祸。乌云白帽子王彪告诉记者:“由于用户体验不佳,像网络优化不够,许多开发人员觉得从Mac App store下载官方插件的速度相比于网盘和迅雷要慢许多,因此才选择从第三方下载。”

不过一款APP开发完成之后,从理论上说是需要进行安全检查的,而针对这款病毒只需要做一个简单的云端数据测试,来检测数据是否都返回到自己这里就可以发现病毒所在。

王彪说:”尤其是在涉及到用户敏感数据和支付业务时,如果由于疏忽对用户造成了损失是一件非常严重的事情。“

另外,不同于网站,APP的更新成本更高,绝大多数的APP都会对老版本提供支持,如果在上线之初没有做好安全测试,对于用户的伤害无疑是巨大且长期的。

话又说回来,App Store的审核严格到变态,所以相比于第三方应用市场的Android应用都要安全规范得多。为什么这次的病毒也骗过了App Store?

王彪分析:”因为这病毒收集信息包括时间、bundle id(包名)、应用名称、系统版本、语言、国家等,目前看到还没有用户敏感信息,加之国内一些APP也会收集同样的信息,苹果可能有疏忽让病毒趁虚而入。

长悬的达摩克利斯之剑

说到这里,事情大致可以看清楚了。从开发到上线的每一个过程都恰巧被病毒钻了空子。当然信息安全问题也不是一天两天了,它就像一把长悬在用户和APP头上的达摩克利斯之剑。不过值得庆幸的是,王彪告诉记者这次隐藏在XCode编译器的病毒暂时还没有看到收集用户的敏感信息,所以大家可以稍稍放心。不过也建议,苹果用户开启iCloud二次验证功能,加强自身安全使用习惯。

安全问题总是被挂在嘴边,却没有被提上日程。

附检查方法(来自乌云)

恶意Xcode包含有如下文件“/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/Library/Frameworks/CoreServices.framework/CoreService”;正常的Xcode的SDK目录下没有Library目录(来自@JoeyBlue_)

其次,还应该检测一下Target->Build Setting->Search Paths->Framework Search Paths的设置,看看是否有可疑的frameworks混杂其中(来自蒸米)

 

责任编辑:chenqingxiang 来源: 51CTO
相关推荐

2010-02-25 09:38:13

苹果中毒

2011-09-08 13:50:51

51cto 51CTO

2010-12-10 13:21:47

51CTO博客大赛

2009-02-17 19:02:33

2011-09-08 13:26:27

51cto 51CTO

2012-07-13 14:13:58

APP推广

2016-02-24 16:06:43

2011-07-20 16:43:33

iPhone Bug Xcode

2011-06-01 16:35:50

51CTO投稿

2021-12-08 09:16:00

社区编辑加盟指南

2011-08-01 09:34:32

Xcode Xcode 4 编译器

2016-02-24 16:40:40

2011-09-08 14:24:57

51cto 51CTO

2010-01-19 11:21:20

51CTO驻站专家

2010-04-21 11:06:15

2013-09-05 14:54:52

浏览器内核开发

2015-12-14 19:16:42

APP创新评选大赛

2015-05-29 10:36:04

51CTO学院APP

2011-10-25 15:10:56

微软TechE d2011

2009-01-19 18:26:51

年夜饭IT三十年08盘点
点赞
收藏

51CTO技术栈公众号