VPS    微软    Win10    苹果    Office2016

你以为这就是全部?让我们来告诉你完整的 XCodeGhost 事件!

        ,,,,,   来自Gmxp

这几天安全圈几乎被苹果 iOS 病毒 XCodeGhost 事件刷屏,大家都非常关注,各安全团队都很给力,纷纷从不同角度分析了病毒行为、传播方式、影响面积甚至还人肉到了作者信息。拜读了所有网上公开或者半公开的分析报告后,我们 (腾讯) 认为,这还不是全部,所以我们来补充下完整的 XCodeGhost 事件。

XcodeGhost

事件溯源

不久前,我们(腾讯)在跟进一个bug时发现有APP在启动、退出时会通过网络向某个域名发送异常的加密流量,行为非常可疑,于是终端安全团队立即跟进,经过加班加点的分析和追查,我们基本还原了感染方式、病毒行为、影响面。

随后,产品团队发布了新版本。同时考虑到事件影响面比较广,我们立即上报了CNCERT,CNCERT也马上采取了相关措施。所以从这个时间点开始,后续的大部分安全风险都得到了控制——可以看看这个时间点前后非法域名在全国的解析情况。

接到我们上报信息后,CNCERT发布了这个事件的预警公告。我们也更新了移动APP安全检测系统“金刚”。

9月16日,我们发现 AppStore 上的TOP5000应用有76款被感染,于是我们向苹果官方及大部分受影响的厂商同步了这一情况。

9月17日,嗅觉敏锐的国外安全公司 paloalto发 现了这个问题,并发布第一版分析报告

接下来的事情大家都知道了,XCodeGhost 事件迅速升温,成为行业热点,更多的安全团队和专家进行了深入分析,爆出了更多信息。

被遗漏的样本行为分析

1)在受感染的APP启动、后台、恢复、结束时上报信息至黑客控制的服务器

上报的信息包括:APP版本、APP名称、本地语言、iOS版本、设备类型、国家码等设备信息,能精准的区分每一台iOS设备。

上报的域名是icloud-analysis.com,同时我们还发现了攻击者的其他三个尚未使用的域名。

代码上传机器数据的恶意代码片段

2)黑客可以下发伪协议命令在受感染的iPhone中执行

黑客能够通过上报的信息区分每一台iOS设备,然后如同已经上线的肉鸡一般,随时、随地、给任何人下发伪协议指令,通过iOS openURL这个API来执行。

相信了解iOS开发的同学都知道openURL这个API的强大,黑客通过这个能力,不仅能够在受感染的iPhone中完成打开网页、发短信、打电话等常规手机行为,甚至还可以操作具备伪协议能力的大量第三方APP。

代码控制执行伪协议指令的恶意代码片段

3)黑客可以在受感染的iPhone中弹出内容由服务器控制的对话框窗口

和远程执行指令类似,黑客也可以远程控制弹出任何对话框窗口。至于用途,将机器硬件数据上报、远程执行伪协议命令、远程弹窗这几个关键词连起来,反正我们是能够通过这几个功能,用一点点社工和诱导的方式,在受感染的iPhone中安装企业证书APP。装APP干什么?还记得几个月之前曝光的Hacking Team的iPhone非越狱远控(RCS)吗?

代码控制远程弹窗的恶意代码片段

4)远程控制模块协议存在漏洞,可被中间人攻击

在进行样本分析的同时,我们还发现这个恶意模块的网络协议加密存问题,可以被轻易暴力破解。我们尝试了中间人攻击,验证确实可以代替服务器下发伪协议指令到手机,成为这些肉鸡的新主人。
图5 存在安全漏洞的协议解密代码片段

值得一提的是,通过追查我们发现植入的远程控制模块并不只一个版本。而现已公开的分析中,都未指出模块具备远程控制能力和自定义弹窗能力,而远程控制模块本身还存在漏洞可被中间人攻击,组合利用的威力可想而知。这个事件的危害其实被大大的低估了。

感染途径

分析过程中我们发现,异常流量APP都是大公司的知名产品,也是都是从AppStore下载并具有官方的数字签名,因此并不存在APP被恶意篡改的可能。随后我们把精力集中到开发人员和相关编译环境中。果然,接下来很快从开发人员的xcode中找到了答案。

我们发现开发人员使用的xcode路径Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/Library/Frameworks/CoreServices.framework/下,存在一个名为CoreServices.framework的“系统组件”,而从苹果官方下载的xcode安装包,却不存在这些目录和“系统组件”。

原来开发人员的xcode安装包中,被别有用心的人植入了远程控制模块,通过修改xcode编译参数,将这个恶意模块自动的部署到任何通过xcode编译的苹果APP(iOS/Mac)中。

水落石出了,罪魁祸首是开发人员从非苹果官方渠道下载xcode开发环境。

通过百度搜索“xcode”出来的页面,除了指向苹果AppStore的那几个链接,其余的都是通过各种id(除了coderfun,还有使用了很多id,如lmznet、jrl568等)在各种开发社区、人气社区、下载站发帖,最终全链到了不同id的百度云盘上。为了验证,团队小伙伴们下载了近20个各版本的xcode安装包,发现居然无一例外的都被植入了恶意的CoreServices.framework,可见投放这些帖子的黑客对SEO也有相当的了解。

Xcode

进一步来看,攻击者做到的效果是只要是通过搜索引擎下载xcode,都会下载到他们的XCodeGHost,还真的做到了幽灵一样的存在。

影响面

在清楚危害和传播途径后,我们意识到在如此高级的攻击手法下,被感染的可能不只一个两个APP,于是我们马上对AppStore上的APP进行检测。

最后我们发现AppStore下载量最高的5000个APP中有76款APP被XCodeGhost感染,其中不乏大公司的知名应用,也有不少金融类应用,还有诸多民生类应用。根据保守估计,受这次事件影响的用户数超过一亿。

后记

经过这一事件后,开发小伙伴们纷纷表示以后只敢下官方安装包,还要MD5和SHA1双校验。而这个事件本身所带来的思考,远不止改变不安全的下载习惯这么简单。

经过这两年若干次攻击手法的洗礼后,我们更加清醒的意识到,黑产从业者早已不是单兵作战的脚本小子,而是能力全面的黑客团队。

总结来看,移动互联网安全之路任重道远。当然,这里的危机也是安全行业的机遇。

  • 苹果这两年不好过。

    9 10
     
  • XCodeGhost的作者已经发表声明了。声称并没有任何恶意。并且已经关闭服务器并且删除数据。

    10 10
     
    • 这种人才该枪毙掉吧,好可惜但还是枪毙掉吧

      10 10
       
    • 应该像电锯惊魂里一样,把这小子和方校长一块绑起来,不解决校长自己就得死!

      8 10
       
    • 声明未必就是他所声称的“没有任何恶意”

      10 10
       
    • 要这样的话,早知道熊猫烧香的作者当年道个歉,公开一下源码不就好了,何必还要坐牢

      9 10
       
  • 怎么感觉全文都在说iOS不安全!

    9 10
     
  • 不用攻击别人 使我们自己的 网络大门不常开的原因 导致的漏洞所在 国家不反省 永远都这样 ios之后还会有 安卓 国家不觉醒 心里真是耻辱又悔恨!

    8 10
     
    • 你说的是什么鬼?句子读不通啊

      9 10
       
    • 开发工具从官网下载是一个程序员基本的素养, 土啬并不是理由, 大部分开发资料都是国外的, 不是一样番习的飞起.

      10 10
       
  • 首先没有人吐槽为什么腾讯为何没有用官方渠道的东西?xcode作为苹果的产品只能运行在Mac机器上同时Mac的签名制度肯定会对xcode进行签名确认并发出警告;
    其次如同沙发上的人所说,人家已经道歉&公开源代码给你们了……说枪毙的请自重,不要感觉文章说得好严重就真的好严重–然后感觉自己被强奸了一样高潮起来

    10 10
     
    • 没有必要帮开发者洗地吧,真相信这是那个道歉的人个人所谓?即便上传那些信息也可以说是有恶意的吧

      9 10
       
    • 要证明自己没恶意就别删数据,法院要求你提交什么就提交什么。

      毁灭证据犯法

      7 10
       
    • 别人QJ完你以后,道个歉,然后把QJ你的方法和录像公开。就没事了是吧?

      8 10
       
  • 腾讯自己的威信也中毒了,为什么自己的安全机构没有查出来

    8 10
     
  • 拜读了所有网上公开或者半公开的分析报告后,我们 (腾讯) 认为,这还不是全部,所以我们来补充下完整的 XCodeGhost 事件。
    ————————————————————
    我们(腾讯)
    自己的微信也中了,还像发现新大陆一样去发布各种研究报告,然后觉得你们的分析还不够彻底,我们腾讯来分析一下,早干什么去了。
    事前猪一样 事后诸葛亮

    7 10
     
  • 就和当初人们说MAC和linux这类系统没病毒一个道理,多数人并不真正了解MAC系统,在win下,有病毒的基本一眼就看出来了,MAC下面中了毒估计也没几个人知道,单让系统自己去验证软件是不靠谱的

    9 10
     
  • Android 开发者表示很受伤, 请问如何从官方渠道下载到 AndroidStudio, 请问如何从官方渠道下载SDK, 如果AppStore这些官方渠道不被土啬,谁愿意在外面下,目测以后这种事情很容易发生在AndroidStudio上.

    9 10
     
    • 安卓一堆各种安全卫士,有这种行为早被发现了

      安卓开发者必备番习土啬技能啊,打开官网复制下载链接到迅雷就可以了,满速。

      6 10
       
    • AndroidStudio很简单,随便弄个梯·子到官网复制链接,放迅雷下就可以了,一定下得动,我这都是5M的速度下载,因为迅雷服务器有缓存,前提是你得是迅雷VIP。至于SDK的话,Windows版的AS自带一部分,MAC版的就得找强力的梯·子了

      8 10
       
    • 用迅雷下的xcode也中招了。哪怕是你贴的原始地址迅雷也不是从原始地址下载。

      7 10
       
  • 中国的开发环境本来就是很野蛮的,这样中毒也一定程度上给予一定的警钟。

    国人也是为了省钱省事,去下载免费的东西,可后来吃亏的不是一点两点。

    6 10
     
    • XCode是免费的好吧?这跟省钱有毛线关系!

      8 10
       
  • 其实程序猿用的什么开发工具不是问题, 但最后发布的版本应该是从专门的编译服务器出来,不会是从程序猿的机器上出来的, 尤其腾讯一类的大公司, 不够严谨。

    9 10
     
  • 说明国内公司的开发环境不是一般的垃圾啊,居然用第三方来源的开发工具来编译正式版程序。。。丢人!

    6 10
     
    • 你傻吗?就是因为官方被土啬了,下载不到官方版本,才被逼得下载百度到的工具来用

      7 10
       
  • 那么android的不是更容易感染?国内有多少人是直接从android的官方站点下载的IDE,想想就觉得可怕。

    10 10
     
  • 虽说Mac缺少病毒是因为使用者少,但Mac下同样缺乏的是安全软件,比起Windows的安全软件多入繁星,每台必装什么360、安全卫士等,Mac有几个人会装安全软件?

    9 10
     
  • 我简单说两点吧:1.不番习土啬下SDK,那是不可能完成的;2.你要跟国内的程序猿说源代码安全问题,保证不鸟你,有那个检查安全的时间,老板就有骂人的理由了。

    8 10
     
  • 我的所有的开发工具基本都是网上下的,这样以后谁还敢用呢,下正版的要么下不到,要么太贵。

    9 10
     





评论内容 (*必填):
Ctrl + Enter 快速提交