目录:
Android应用程序市场是用户获取应用程序的便捷方式。 市场也是恶意分子传播恶意软件的便捷方式。 值得称赞的是,交易平台所有者尝试使用Google Bouncer等安全措施来嗅探不良应用。 可悲的是,大多数人-包括保镖-都无法完成任务。 坏家伙几乎立刻想出了如何分辨仿真环境Bouncer何时测试他们的代码。 在先前的采访中,Duo Security的联合创始人兼通知Google的人乔恩·奥伯海德(Jon Oberheide)解释说:
“为了使Bouncer有效,它必须与真实用户的移动设备没有区别。否则,恶意应用程序将能够确定它与Bouncer一起运行,而不会执行其恶意有效负载。”
坏人欺骗Bouncer的另一种方法是使用逻辑炸弹。 在整个历史中,逻辑炸弹对计算设备造成了严重破坏。 在这种情况下,逻辑炸弹代码会悄悄地阻止恶意软件检查程序,就像Bouncer未能激活有效负载,直到恶意应用程序安装在实际的移动设备上一样。
底线是,除非能够有效检测应用程序中的恶意软件有效载荷,否则Android应用程序市场实际上是恶意软件的主要分发系统。
新方法到旧方法
北卡罗来纳州立大学的何宗-,Daniel Dean,顾小慧和William Enck的研究小组可能已经找到了解决方案。 在他们的论文PREC:适用于Android设备的实用根漏洞遏制中,研究团队介绍了他们的异常检测方案版本。 PREC包含两个组件:一个与应用程序商店的恶意软件检测器配合使用,另一个与应用程序一起下载到移动设备上。
应用商店组件的独特之处在于它采用了研究人员所谓的“分类系统调用监视”功能。 这种方法可以动态识别来自高风险组件的系统调用,例如第三方库(那些未包含在Android系统中,但随下载的应用程序一起提供)。 这里的逻辑是,许多恶意应用程序使用其自己的库。
通过从此监视获取的高风险第三方代码进行系统调用,再加上从应用商店检测过程获取的数据,可以使PREC创建正常的行为模型。 与现有模型相比,该模型已上传到PREC服务,以提高准确性,开销和模仿攻击的鲁棒性。
然后,只要有人访问应用程序商店请求应用程序,就可以将更新的模型随应用程序一起下载。
这被认为是监视阶段。 将PREC模型和应用程序下载到Android设备后,PREC进入执行阶段-换句话说,就是异常检测和恶意软件遏制。
异常检测
将应用程序和PREC模型固定在Android设备上后,PREC将监视第三方代码,尤其是系统调用。 如果系统调用顺序与应用商店中监视的顺序不同,则PREC确定异常行为被利用的可能性。 一旦PREC确定该活动为恶意活动,它将进入恶意软件遏制模式。恶意软件遏制
如果正确理解,则涉及Android反恶意软件的恶意软件遏制将使PREC独树一帜。 由于Android操作系统的性质,Android反恶意软件应用程序无法删除恶意软件或将其隔离,因为每个应用程序都位于沙盒中。 这意味着用户必须通过以下方式手动删除恶意应用程序:首先在设备的系统管理器的“应用程序”部分中找到恶意软件,然后打开恶意软件应用程序的统计信息页面,然后点击“卸载”。
研究人员称之为PREC的独特之处是“基于延迟的细粒度遏制机制”。 总体思路是使用单独的线程池来减慢可疑的系统调用。 这迫使漏洞利用超时,导致“应用程序无响应”状态,其中该应用程序最终被Android操作系统关闭。
可以对PREC进行编程以杀死系统调用线程,但是如果异常检测器犯了一个错误,它可能会破坏正常的应用程序操作。 研究人员在线程执行期间插入了一个延迟,而不是冒险。
“我们的实验表明,在我们将恶意本机线程放慢到一定程度后,大多数root用户利用都将失效。基于延迟的方法可以更优美地处理错误警报,因为良性应用程序不会因瞬时错误而崩溃或终止。警报”。
检测结果
为了评估PREC,研究人员构建了原型,并针对140个应用(其中80个使用本机代码,60个不使用本机代码)-加上10个应用程序(Malware Genome项目中的四个已知的root漏洞应用程序,以及六个重新打包的root漏洞应用程序)进行了测试-包含恶意软件。 该恶意软件包括DroidDream,DroidKungFu,GingerMaster,RATC,ZimperLich和GingerBreak的版本。
结果:
- PREC成功检测并停止了所有测试的root漏洞。
- 在没有本机代码的情况下,它对良性应用程序提出了零错误警报。 (传统方案会引发每应用错误报警67-92%。)
- 与传统异常检测算法相比,PREC将本机代码对良性应用程序的误报率降低了一个数量级以上。
PREC的好处
除了在测试中表现出色并转发可用于遏制Android恶意软件的方法外,在涉及误报和性能下降方面,PREC的数字也要好得多。 关于性能,该论文指出,PREC的“分类监视方案所产生的开销不到1%,SOM异常检测算法所产生的开销却高达2%。总体而言,PREC重量轻,这使其在智能手机设备中很实用。”
应用程序商店当前使用的恶意软件检测系统无效。 PREC可提供高度的检测精度,较低的误报率和恶意软件遏制功能-目前尚不存在。
挑战
使PREC正常工作的关键是从应用程序市场获得支持。 只需创建一个描述应用程序正常运行情况的数据库即可。 PREC是可用于完成此任务的工具。 然后,当用户下载所需的应用程序时,性能信息(PREC配置文件)将随该应用程序一起使用,并且将被用于确定该应用程序在Android设备上安装时的行为基线。