在XcodeGhost事件发生近2个月后,美国知名网络安全公司 FireEye近日指出 ,尽管苹果和相关公司反映迅速,XcodeGhost的影响却仍在持续,且出现了变异的XcodeGhost S版本。该版本可以在最新的iOS 9系统中继续窃取用户信息,并可以绕开静态检测的安全防御措施。
XcodeGhost事件起源于国家互联网应急中心(CNCERT)在9月14日发布的一则题为 《关于使用非苹果官方XCODE存在植入恶意代码情况的预警通报》 的预警信息。该信息指出,部分开发者使用的非官方XCODE工具会向苹果APP中植入恶意代码。这些代码经App Store正常下载并安装后,会窃取并上传用户信息,并具有恶意远程控制的功能。随后,iOS开发者@唐巧_boy在微博中表示,已知两个致命App感染恶意代码。由此,XCodeGhost“病毒门”事件开始升级。 据统计 ,全球有超过上千款款应用被发现使用了冒牌Xcode开发工具——XcodeGhost。
苹果官方 随后针对该事件进行了说明,在App Store中下架了受感染App的相关版本,并添加了新的安全特性。相关苹果App的开发团队也纷纷推出了新版本的应用。然而,FireEye近日指出,XcodeGhost的影响仍然进入了美国企业,并将成为一个长期存在的安全风险。而且,其僵尸网络仍然部分存活。代号为XcodeGhost S的变种更是表明,更多高级的安全威胁之前还没有被检测到。
通过对XcodeGhost相关的活动进行为期一个月的观察,FireEye发现仍有210家美国企业在运行被XcodeGhost恶意感染的苹果应用。这些企业主要集中在教育(其使用的恶意软件占所有恶意应用的65%)、高科技(13%)、制造(4%)和通信(2%)行业等。在这些应用程序产生的28000次XcdoeGhost CnC(命令和控制,Command and Control)服务器的连接请求中,服务器地址主要集中在德国(占所有请求的62%)、美国(33%)、法国(3%)、荷兰(2%)和日本(0.09)。由此可见,XcodeGhost的影响已经牵涉到了很多行业和很多国家。
相关研究人员指出 ,XcdoeGhost的CnC数据可以被用作在App Store之外分发应用、强制浏览器访问某个地址、通过直接访问下载页提高任何应用的下载量和弹出钓鱼窗口等。根据从DTI云得到的数据,在152个应用中最活跃的前20个受感染应用如下图所示。
从上图可以看出,尽管绝大部分厂商已经升级了应用,很多用户仍然在使用受感染的应用版本。例如,网易云音乐和WeChat受感染的版本分别如下。
应用 | 版本号 | 三周内的出事次数 |
6.2.5.19 | 2963 | |
网易云音乐 Music 163 | 2.8.1/2.8.2/2.8.3 | 1227/3084/2664 |
为了减少旧版本的影响,一些企业直接屏蔽了XcdoeGhost DNS的查询操作。然而,当相关应用没有升级时,雇员的手机和启动设备仍然可能会在其他网络环境中访问Cnc服务器。
此外,FireEye公司与苹果公司合作把所有受XcodeGhost和XcodeGhost S感染的应用从App Store中进行了移除。在该过程中,FireEye发现XcodeGhost的影响包含了多个版本的Xcode。甚至为iOS 9开发而推出的Xcode 7也没有幸免。最新版的XcodeGhost S更是专门针对iOS9进行了升级,并可以绕开静态检测。
之前,苹果公司引入了“NSAppTransportSecurity”的方法来改善iOS9中的客户端/服务器的连接安全。默认情况下,iOS9只允许安全连接(如携带指定密文的HTTPS)。因此,之前的XcodeGhost都因为使用http而无法连接到CnC服务器。然而,苹果允许开发者在应用的info.plist中添加“NSAllowsArbitraryLoads”例外来允许http访问。因此,如下图所示,XcodeGhost S选择读取该例外的设置,从而相应选择不同的CnC服务器。
更进一步,XcodeGhost选择把CnC域的字符串用一系列的单个字符隔开,从而躲避静态检测。
FireEye的iOS动态分析平台已经成功探测到一个XcodeGhost S感染的应用—— “自由邦” 。该软件已经被苹果公司从App Store中下架。由此,是否存在更多被感染的软件成为一个大大的疑问。一旦这些软件存在,XcodeGhsot事件的影响力将会进一步升级。
因此,FireEye建议,企业和机构能够及时通知XcodeGhost和其他恶意应用的威胁。用户应该及时删除受感染的应用或者升级应用。
感谢魏星对本文的审校。
给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群 )。