粗心的 iOS 开发人员被骗通过盗版 Xcode 工具集向其作品中植入了畸形代码
安全专家周五表示,黑客完成了一项前所未有的壮举,诱骗不知情的开发人员在数千个 iOS 应用程序中加载广告软件。
当被问及顶级应用系统是否曾通过第一方开发工具受到感染时,加州米尔皮塔斯网络安全公司 FireEye 的移动开发高级总监 Raymond Wei 说:“这是我记忆中的第一起此类事件。”
魏先生指的是被一位中国研究人员称为“XcodeGhost”的黑客活动,该活动采用一种非常不寻常的方式将恶意代码植入通过Apple的 App Store。XcodeGhost 黑客并没有将攻击代码注入单个应用程序,然后试图让其通过苹果的自动和人工审核,而是感染了 Xcode,这是苹果的一套集成软件开发工具,用于制作适用于 iOS 和 OS X 的应用程序和应用。
Xcode 可从这家位于加利福尼亚州库比蒂诺的公司 Mac App Store 免费获取。
但 XcodeGhost 团伙并没有感染那开发套件的版本。
相反,该公司修改了合法拷贝,将假冒软件植入中国流行的文件共享服务,并宣传其假冒 Xcode 不仅是真品,而且在中国境内使用速度更快,因为该服务比跨太平洋链接到苹果官方网站的速度更有优势。
中国 iOS 开发者上当了。但是,通过使用受感染的 Xcode,他们无意中将盗版感染到了他们创建的应用程序上。
当被问及 XcodeGhost 的独特之处时,旧金山移动风险管理供应商 Appthority 的联合创始人兼总裁 Domingo Guerra 同意 Wei 的观点。不过,Guerra 指出了与 XcodeGhost 类似的漏洞。“一年半前,我们发现一个广告网络的 SDK [软件开发工具包] 中存在一个漏洞,”他没有透露具体名称。该漏洞被用来制作响应黑客命令和控制网络的广告。
苹果无法检测到这些应用程序实际上是否被 XcodeGhost 感染。“畸形代码是由编译器注入的,”Wei 说道。“苹果没有基准 [哈希] 可供比较,因此无法知道它们是否被感染。”
受 XcodeGhost 感染的应用程序数量一直存在争议。Wei 表示,在苹果本周早些时候开始下架这些应用程序之前,FireEye 已经发现了 4,000 多个应用程序。另一方面,Guerra 引用了 Appthority 在 App Store 上发现的一个非常具体的数字 477。其他安全研究人员和供应商给出了各种各样的数字。
苹果尚未透露受影响应用程序的数量,但列出了受感染的 25 款最受欢迎应用程序,并声称从该名单中“受影响的用户数量大幅下降”。
受感染最严重的 iOS 应用程序包括微信、滴滴打车、百度音乐、愤怒的小鸟 2 - 李一峰的最爱和同花顺。这些应用程序在中国最受欢迎。
但 Guerra 和 Wei 都认为,中华人民共和国以外的 iOS 用户也受到了影响。虽然有些 iOS 应用仅限于特定市场,但大多数应用并非如此,因此出现在苹果全球众多的电子商店中。Guerra 表示,Appthority 发现了全球用户下载的畸形应用的证据;Wei 补充说,美国用户也在其中。
受感染应用程序的行为也遭到了多种多样的报道。
Guerra 和 Wei 表示,他们的调查得出结论,这些应用程序的行为就像广告软件,这一类别因散布不受欢迎和未经授权的广告而得名。
Appthority 研发工程师 Andreas Weinlein 在一篇发表在他公司的博客上本周。“此外,对这些请求的响应能够触发标准 iOS 警报,并能够打开给定的 URL 或显示给定应用程序的 App Store 页面。”
Guerra 表示,XcodeGhost 提供的 URL 会投放广告。“这与激进的广告软件非常相似,”他指出,并推测 XcodeGhost 组织是出于经济动机,并想出了如何利用大量其他开发人员的下载来赚钱。
格拉和魏一致认为,如果黑客在伪造的 Xcode 中植入更严重的恶意软件,情况可能会更糟。“有传言说它可以窃取 iCloud 密码,但 [XcodeGhost 中的] 原始代码不具备这种能力,”魏说,他推测其他犯罪分子可能利用 XcodeGhost 的漏洞,自己修改了伪造的 Xcode,以增强攻击代码的功能。
本周早些时候,苹果开始下架受 XcodeGhost 感染的应用程序,并敦促开发人员从苹果自己的服务器(而不是其他地方)获取 Xcode 开发工具包。该公司还发布了验证 Xcode 副本是否合法的说明在其开发者网站上。
苹果还采取了不同寻常的举措,公开发布威胁信息,包括以问答形式发布在其中国网站上发表(不过,苹果并未在其他市场的网站上发布该帖子。)
苹果在帖子中表示:“我们已经从 App Store 中删除了我们知道使用该假冒软件创建的应用程序,并阻止包含该恶意软件的新应用程序进入 App Store。”
苹果公司指责开发人员对病毒感染负有责任,称他们不仅从非官方(也就是说不受信任)的来源下载了 Xcode,还必须关闭 Gatekeeper,病毒才会进入他们的应用程序。
Gatekeeper 是 OS X(iOS 和 Mac 应用程序的开发平台)的一项功能,默认情况下包括苹果。Gatekeeper 在 2012 年的 Mountain Lion 中首次亮相,但经常被高级用户禁用,以便他们可以下载未通过 Mac App Store 分发的第三方软件。
魏先生对那些未经检查就下载假冒 Xcode 的开发者也表示了赞同,他说:“开发者有责任确保 [Xcode] 来自苹果,并且没有经过修改。”“他们应该谨慎行事,并确认下载的哈希值。”
Guerra 警告称,XcodeGhost 等隐蔽策略只是更大问题的一部分。“这只是趋势的一部分,而且只会越来越严重,”他说。“随着越来越多的用户在移动设备上做事,攻击者正在找到更多方法渗透到移动设备中。”