XcodeGhost探秘:苹果栽在了源码病毒手里(2)

发表于:2015-09-22来源:未知作者:seanhe点击数: 标签:苹果XcodeGhost
1.受感染App打开后会不断向特定 服务器 发送收集到的系统信息,包括:时间,应用名称及版本,本地语言,操作系统版本,设备类型,国家码等等。 2.受

  1.受感染App打开后会不断向特定服务器发送收集到的系统信息,包括:时间,应用名称及版本,本地语言,操作系统版本,设备类型,国家码等等。

  2.受感染App在受感染iPhone中弹出内容由服务器控制的对话框窗口。  XcodeGhost作者通过第一个功能获得的信息来精确区分不同iPhone用户,然后再通过第二个功能实现进一步地攻击:可能是伪装成内购页面来套取你的iCloud密码;也可能是伪装成支付失败,请到某某支付宝付款的字样,来获得金钱等等。

  当然,这种攻击也是非常好识破的。比如XcodeGhost在伪装内购弹窗时,你会发现它需要你输入Apple ID。但用过苹果的朋友都知道,Apple ID在iOS系统内部属于优先级很高的信息,内购弹窗一般都会默认填好Apple ID账号(除了AppStore之外),只需要你输入密码。所以一旦你发现需要手动输入Apple ID账号的应用弹窗,基本可以确定就是XcodeGhost的钓鱼行为了。

  Apple公司这次有多大责任?

  可能绝大多数人都会责怪苹果:不管你的护城河建得多么坚固,不管你的应用审核多么严格,不管你的硬件多么“自足”,最终你还是被攻破了呀。

  对,这次XcodeGhost事件可以算是苹果有史以来最大的安全事件。但苹果这回确实比较“倒霉”,因为遇上了源码病毒。

  苹果不可能逆向分析每一个应用  首先对于苹果的AppStore而言,这种病毒是无法检测出来的。为什么?苹果的应用商店审核只能确定App调用了哪些系统API,而这些被允许调用的API都是经过了重重检验,基本不可能跳出系统沙盒去获取非法信息。

  但除此之外,苹果根本无法通过有限的人力物力去静态分析一个App到底能够怎么弹窗,就算你给了它们源代码也做不到。(如果可以的话,那就表示苹果每上架一款程序,都会将其代码整个逆向分析一遍,这个根本不可能做到)

  那么有人会问了,这种攻击难道就无法避免了?确实,这种程度上的安全我们只能寄托于开发者的素质,但显然系统自身的沙盒隔离也是非常关键的一点。

  譬如iOS开发者就将Apple ID设计成了很高优先级的东西,病毒制造者无法获取到该信息,那么他的钓鱼弹窗就和真实的内购弹窗区别开来了,这就是系统沙盒的作用所在。

  诚然,苹果这回就算没有问题也是有问题。但追究其XcodeGhost传播的根源,国内封闭的网络环境确实是主要因素。(当然,开发人员“不干净不校验”的习惯也存在问题)

  现在我们该如何做?

  说到这里,其实大家也发现这次的“大危机”其实并没有我们想象中那么严重。

  首先,XcodeGhost大面积获取的信息都是常规信息,并不包含你个人的隐私资料。其次,包括各种弹窗在内的钓鱼攻击,其实也比较好分辨,你只要看哪个需要你输入Apple ID就行了。

  最后,笔者也忠告,假如你最近曾经遇到过在第三方应用输入Apple ID的事情,请马上修改。假如你现在不记得了,也请马上修改,这样比较保险。

原文转自:http://tech.sina.com.cn/mobile/n/n/2015-09-22/doc-ifxhytwp5513912.shtml