假面攻击(Masque Attack)详细分析与利用

一、漏洞概述

近期在苹果iOS手机系统上曝光的两个漏洞,WireLurker和Masque Attack,影响了iOS目前到8.1.1 beta的最新版本,而且不受越狱和非越狱环境限制。 

从安全性上来看,前者WireLurker主要是窃取用户的设备标识信息,或是在越狱的环境下会安装恶意程序,盗取用户隐私数据,包括通话、短信等敏感数 据。在而后者是通过使用相同的bundle ID,替换手机上已有从app store上下载安装的APP应用程序,替换后的APP可以获取该应用程序的的用户敏感数据,比如第三方邮件应用下邮件信息,也可以作为跳板,通过已知漏 洞绕过应用层的sandbox保护,对系统层进行攻击。

二、Masque Attack漏洞原理分析及利用

该漏洞最早是在2014年7月由FireEye移动安全人员提交,通过使用企业账户安装APP,替代通过苹果官方APPStore安装的APP应用,该漏洞 只要替换的应用程序使用了和appstore安装的应用程序有相同的bundle identifier,即可完成IPA安装程序的替换。

1.影响覆盖面:

目前该漏洞被证实在越狱和非越狱的 iOS 7.1.1, 7.1.2, 8.0, 8.1 及其 8.1.1 beta版本下均受影响,我们实测环境为7.0.2,7.1.1,8.1,基本可以通杀目前所有iOS版本。

2.漏洞危害:

1).通过诱导用户替换APPStore中下载的APP应用程序,因为做了二次封装和改动,可以获取用户登录APP的账户及密码,比如邮箱账户密码或者银行账户密码

2).该APP应用下的隐私数据,比如配置信息,缓存文件,本地sqlite数据库

3).虽然苹果对应用有sandbox保护,只能获取该应用下的敏感数据,但是可以通过已有的漏洞绕过sandbox保护机制对系统层进行攻击

3.攻击途径:

可通过USB连接安装或者无线网络安装APP:

1).USB连接方式使用PC与手机端底层驱动libimobiledevice通讯,在非越狱的情况下将替换的APP安装到手机中,上面提到的MAC OSX系统平台的WireLurker木马程序就是通过这种方式实现的

2).无线网络环境下可通过短信、iMessage、邮件中包含一个链接的方式诱导用户去安装,导致原有通过APPStore下载的APP被替换,这种方式受众面更广。

4.攻击条件:

1).替换的APP需要企业证书重新签名并二次打包,当然越狱手机就不需要一定是重新签名,可以直接下发安装(已安装appsync)

2).只能替换APPStore安装的应用程序,如系统自带程序,如Safari无法通过该方式替换

5.漏洞利用流程:

1).通过clutch等ipa解密工具解密从APPStore上下载的APP程序

这是苹果的安全保护机制,通过APPStore发布的应用都有代码签名保护机制,是Digital Rights Management(DRM)的一种形式,可以通过在越狱手机下利用clutch工具解密重新打包,实现逻辑是程序在运行态时把解密部分的内容提取出来 覆盖原有加密地址段

2).修改APP程序的二进制程序

通过IDA逆向或者动态调试的方式找到程序中调用的一些函数,对函数实现重新封装,修改逻辑执行,执行重写后函数。

3).重新签名打包

利用企业证书重新打包APP,确认重新打包的APP使用了相同的bundle identifier

6.漏洞原理重现:

这里我们通过漏洞原理重现下如何替换appstore下载的app,利用相同的bundle identifier,对原有APPStore中应用程序进行替换

1).先读取bundle ID,比如某社交APP,可以通过libimobiledevice方式读取到

http://p0.qhimg.com/t019595fb51275f82d3.png

原有社交APP和打开后正常运行的界面:

http://p3.qhimg.com/t01aebe8976e72b0076.pnghttp://p0.qhimg.com/t01062cdb844b009830.png

2).解压分析原有APP,修改替换原有APP,通过企业账户重新签名封装打包,这里我们对app执行文件进行了替换,越狱环境下不需要企业账户签名也可直接安装

http://p3.qhimg.com/t01036567bee99bac3d.pnghttp://p1.qhimg.com/t016ba483960a876665.png

3).诱导用户下载安装我们提供的网站的APP应用,安装替换包:

4).安装完成后打开原有社交APP发现已变为某银行APP应用:

http://p5.qhimg.com/t013a77020106690f20.pnghttp://p8.qhimg.com/t0198408ffe0fc7413f.png

7.如何防御:

因为苹果默认非越狱环境和通过APPStore安装的APP为保证其安全的机制,但是忽略了通过企业账户进行木马传播的方式,目前还没有好的防御方法,但是可以有一些手段可以规避类似的恶意程序

1).不要安装非apple官方App Store或第三方用户开发的应用程序的

2).不要点击通过短信、iMessage、邮件弹出的第三方网页上的安装app程序

3).如果安装程序显示,“不受信任的应用程序开发”,请谨慎安装

三、总结

本文分析了近期iOS上被曝光的影响较大的Masque Attack漏洞的详细分析、形成原理及利用过程。影响了iOS系统目前到8.1.1beta的最新版本,而且不受越狱和非越狱环境限制。

附录

参考资料:

1.On the Feasibility of Large-Scale Infections of iOS Devices

https://www.usenix.org/system/files/conference/usenixsecurity14/sec14-paper-wang-tielei.pdf‍

2.Masque Attack: All Your iOS Apps Belong to Us

http://www.fireeye.com/blog/technical/cyber-exploits/2014/11/masque-attack-all-your-ios-apps-belong-to-us.html

3.Palo Alto Networks,WIRELURKER:A New Era in iOS and OS X Malware

https://www.paloaltonetworks.com/content/dam/paloaltonetworks-com/en_US/assets/pdf/reports/Unit_42/unit42-wirelurker.pdf‍

4.Palo Alto Networks,WireLurker for Windows

http://researchcenter.paloaltonetworks.com/2014/11/wirelurker-windows/