Android平台漏洞挖掘与利用

by admin on 2020年5月8日

在中国,Android
Root非常流行,主流的应用开发商都参与了Root工具开发,比如ROOT精灵、360的一键ROOT和Kingroot等。利用漏洞获取系统root
权限,不仅对普通用户来说并不安全,而且它也为恶意应用绕过Android系统的安全防御而开启了方便之门。而在中国,Android移动应用环境是相当恶劣的。在本周举行的ACM计算机和通信安全会议上,加州河滨分校的研究人员发表报告《Android Root and its Providers: A
Double-Edged
Sword》(PDF),研究人员花了一个月的空闲时间逆向工程了一个Root工具包含的167个漏洞。他们认为澳门新葡亰平台官网,,Root
工具为恶意应用提供了大量可定制的、可轻易逆向工程的漏洞利用工具,让恶意应用可以绕过安全工具的检测,从而让所有Android用户面临日益增长的风
险。研究人员说,ROOT应用供应商本应该充分保护其包含的可利用漏洞,但在实际中这些漏洞可以被恶意程序作者轻而易举的借用。
    

澳门新葡亰平台官网 1

via Solidot

即使当所有信息都被披露,安卓Root应用开发商还是存在不为人知的一面。

由于Android平台特殊的生态,每一个Android设备中存在着Google、手机开发商、芯片厂商等多种来源的软件。每个软件模块没有统一的安全审计制度和测试流程,导致质量良莠不齐,对于安全研究者乃至于恶意攻击者来说,一直是一个比较好的目标。从安全的角度考虑,
Android平台利用Linux的uid特性把权限做了很好的区隔,使得在App层级,权限比较受限,一方面阻隔了许多恶意软件可能造成的破坏,另一方面也限缩了用户能够掌控自己设备的能力。例如,卸除用不到的预装软件、清理、加速、杀毒这类的功能,在Android平台上因为权限的关系,都不容易进行。为了因应用户强烈的需求,Rooting
App工具软件诞生了。Rooting
App利用各种系统漏洞帮用户提升权限,也让Android漏洞在近年来被大量挖掘,利用的手法也不断演进,同时也促使厂商更注重Android平台的安全性。在Android平台上,最底层也是各种权限控制的中枢是Linux内核。Linux内核主体是社群维护的操作系统,也包含了Google、手机厂商、芯片厂商的各种扩展。其中,手机厂商与芯片供货商提供的设备驱动这一部分,一直以来都存在许多安全漏洞。例如,2012年底开始出现mmap类的漏洞利用,第三方软件可以轻易地修改内核数据甚至代码来提权。Samsung平台上的CVE-2012-6422漏洞,算是其中大家比较熟知的。引用注:mmap是一个用来映像内存空间的系统调用,常用于从内核暴露一段地址空间让用户态可以更有效率的进行内存读写。除了mmap类的漏洞外,用户态与驱动数据交换导致的任意地址写漏洞也在2013年开始大量被发现。例如Qualcomm平台上的copy_from_user类漏洞CVE-2013-6123,第三方软件可以用伪造的数据与摄像头驱动做交互,进而修改任意地址的内容。引用注:copy_from_user是一个Linux内核中的应用程序接口,用于从用户态拷贝数据到内核态。例如,应用程序设定内核驱动中的某个变量,常会用到这个接口。提到Android漏洞,当然不得不提2013年出现的通用型漏洞。CVE-2013-6282算是最早被用在Rooting
App中的通用型漏洞,它是一个内核层级的应用程序接口调用缺少必要的参数检查,导致攻击者可以透过一个简单的系统调用做到任意地址写。搭配Linux内核的信息泄露设计疏失,使得利用这个漏洞做提权的工具几乎可以横扫当时所有的Android设备。其他包括CVE-2014-3153,以及CVE-2015-3636,都算是存在Linux内核操作系统的漏洞,可以适用于大部份Android设备。其中,近期发现的CVE-2015-3636是一个关于内存分配与释放的逻辑错误,是一种比较难被发现而且利用门坎较高的漏洞类型,特征不如前面两个类型明显,需要对于代码逻辑有较深的理解才能挖到漏洞。而漏洞利用时需要的合适攻击目标也比较难定位,这一部分只能依靠平时积累经验以及多充实工具库,如此一来,当漏洞出现时能尽快找到合适的武器。除了权限中枢Linux内核以外,对于拥有较高权限的进程也是被关注的目标,例如mediaserver这样的进程,由于需要处理多种媒体文件格式,使用了大量第三方应用库,也同时引入了很多安全漏洞。其中,Stagefright的一系列问题在2015年8月开始大量被披露,其攻击手段就是利用第三方应用库处理较复杂的媒体文件格式时,没考虑到的边界情况导致溢出,进而控制mediaserver。由于这些媒体文件可以以MMS的形式传递到手机,对Android手机用户是一个很大的威胁。相较于media权限,以system权限执行的system_server更是攻击者觊觎的一个目标,CVE-2014-7911就是通过第三方软件准备的数据使得system_server进程执行任意代码,获取system权限后,更多的攻击目标会被暴露在外,例如使用Qualcomm一系列芯片的手机上存在的CVE-2014-4322漏洞,在正常的情况下,第三方软件是无法与其相关的驱动做交互。然而,利用CVE-2014-7911提升到system权限后,CVE-2014-4322相关的设备文件就能被打开,进而造成有效的攻击。
只要人类继续写代码,漏洞无可避免地会被持续制造出来,并且被挖掘与利用。一方面,开发和测试人员应该关注的是如何有效地审计代码,在用户使用之前找出可能的漏洞。另一方面,假设漏洞必然存在,厂商应该与安全研究人员积极的合作,更快速地修补漏洞。然而,由于漏洞修补的实时性存在很多不可控的因素,如何使用更底层的保护机制避免漏洞被有效地利用,将会是手机厂商与芯片厂商需要投入研究的方向。
本文总结自Android平台漏洞挖掘与利用,演讲PPT下载地址。作者简介:吴家志,奇虎360高级安全研究员,美国北卡州立大学计算机科学博士,研究方向主要为系统安全、虚拟化安全。从事网络安全设备开发多年,近年主要关注Android平台系统安全,曾独立发现多个Linux内核,厂商驱动0-day漏洞,目前带领奇虎360无线安全研究院ROOT团队进行漏洞挖掘与利用研究以及超级ROOT产品开发,是C0RE
Team创始成员之一。

ROOT也为漏洞利用打开方便之门

最新研究发现,通过推广强大的Root利用程序,为数不多的应用程序经销商正在将数以百万计的安卓用户置于十分危险的境地。Root程序会很容易被逆向工程,让恶意软件利用漏洞利用工具绕过安卓的重要安全检测。

澳门新葡亰平台官网 2

周四,来自加州河滨分校的研究人员在ACM计算机与通信安全会议上发表了题为《安卓Root及其供应商:一把双刃剑》的报告,他们花了一个月的空闲时间逆向工程了一个Root工具包含的167个漏洞。最终研究者得出结论,root供应商通过提供了大量种类繁多、高度定制的漏洞利用很容易导致逆向工程,并难以检测,这提升了所有安卓用户的安全风险。

而在中国,安卓Root非常流行,主流开发商都参与到了Root工具开发,比如Root精灵、IRoot、360的一键Root以及Kingroot等等,这些Root程序帮助安卓用户不受手机运营商或者制造商的限制。为此,Root供应商们针对运行特定版本安卓系统的特定硬件设备收集大量的漏洞利用。

澳门新葡亰平台官网 3

手机杀毒软件检测结果

供应商的代码通常包括已知的最先进的漏洞利用,例如TowelRoot(又称futex)、Pingpong
Root和Gingerbreak。这些漏洞利用正常情况下都会被安卓杀毒应用程序封锁。但是由于Root供应商进行了改进,这些专业开发的漏洞利用便不容易被检测到。而更糟的情况是,许多现成的漏洞利用被直接用于攻击未公开的安卓安全缺陷。

ROOT:一把双刃剑

来自加州大学河滨分校的研究者在论文中提出:

“我们发现他们不仅仅努力融入和整合已知漏洞利用,为保持竞争力同时还开发新的利用。然而,这些精致的漏洞利用并没有得到很好的保护,一旦落入错误的人手中将会造成极其危险的影响。”

研究者将相同的167个漏洞利用捆绑放进一个自主研发的应用程序当中,检测安卓杀毒程序(AV)是否能够检测到。每个利用以三种不同方式暴露于杀毒程序面前——从root供应商网站下载的原始exp,一个直接暴露于AV引擎的脱壳exp,以及恶意软件经常使用的加壳exp。检测结果显示,四款AV产品只有来自趋势科技的一个程序检测到了exp,其测试结果为167中的13个exp,并且都是脱壳当中。

澳门新葡亰平台官网 4

·N:没有检测出威胁 ·检测中的所有反病毒软件都是最新版本

研究人员在报告中写道:

“这些反病毒软件没有检测出任何加壳exp的结果真令人失望。这可能是由于供应商自定义模糊程序,exp没有被识别出。然而,即使是脱壳exp,只有趋势科技从167个当中识别出13个文件标记为恶意。值得一提的是,高度危险的futex利用与PingPong
root利用都没有被任何反病毒软件抓到。”

其他的AV程序分别来自于Lookout、AVG和赛门铁克。需要说明一点,这份报告写于今年5月,测试中的这些产品可能在这之后进行了更新,或许已经可以检测出全部、或一部分的利用。

即使我们的乐观推测为真,报告中仍然非常强调root应用供应商本应该充分保护其包含的可利用漏洞,但在实际中这些漏洞可以被恶意程序作者轻而易举的拿来用。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图