[发明专利]一种恶意Android应用程序检测方法和系统有效
| 申请号: | 201110382248.5 | 申请日: | 2011-11-25 |
| 公开(公告)号: | CN103136471A | 公开(公告)日: | 2013-06-05 |
| 发明(设计)人: | 焦四辈;苏璞睿;应凌云;杨轶 | 申请(专利权)人: | 中国科学院软件研究所 |
| 主分类号: | G06F21/56 | 分类号: | G06F21/56 |
| 代理公司: | 北京君尚知识产权代理事务所(普通合伙) 11200 | 代理人: | 余长江 |
| 地址: | 100190 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 恶意 android 应用程序 检测 方法 系统 | ||
技术领域
本发明主要涉及恶意Android应用程序检测技术,更确切的说是基于应用程序行为和底层API行为分析的恶意Android应用程序检测技术,属于计算机软件技术领域。
背景技术
随着移动网络的不断发展,手机已经成为人类现代生活的不可或缺的一部分。而Android手机操作系统,占据了智能手机的半壁江山,并且出货量以每天50万部的速度增长。由于智能手机功能的多样性和复杂性,人们通过手机进行的工作也越来越多,不再局限于发短信、打电话,还可以玩游戏、上网、看视频、听音乐、购物等等,手机应用程序的数量也随之爆炸性的增长,Android应用商店的程序数量已经突破20万个。手机应用程序增长的同时也带来了很多窃取用户信息的恶意软件。Juniper网络公司发布的最新移动安全报告显示,Android平台上的恶意软件数量激增了400%。Android应用程序商店已经成为恶意软件分布最多的移动智能平台。所以,对Android应用程序进行安全性分析是迫切需要的。但是由于软件数量众多,软件功能越来越复杂,且其恶意行为更加隐蔽,造成分析起来难度大、效率低。
应用程序检测分析的时候,通常有两种基本方法:一种是静态分析,即静态反汇编程序代码,通过人工或者自动分析反汇编代码来分析程序安全性。一种是动态分析,即在程序运行过程中,获取其运行数据,分析其安全性。第一种方法,人工分析准确性较高,但是需要很强的专业知识,花费的人力物力很大,不适合大规模快速的安全分析;而自动分析误报和漏洞率相当高。第二种方法需要在软件运行过程中能实时的获取其运行数据,根据获取的大量数据进行分析,进而得出应用程序安全分析结果。因此,如何实时获取软件运行的数据,以及如何对这些数据进行分析,从而准确的得到应用程序检测分析结果,成为动态分析方法的研究的难点和热点。
发明内容
针对上述问题,本发明的目的在于提供一种高效率且更加准确的恶意Android应用程序检测方法,利用该方法,通过简单设置,一个不具有专业分析知识的人也可以快速准确的对Android应用程序进行分析,确定是否为恶意程序。
根据以上目的,实现本发明的一个具体的方案,其系统结构示意图如图1所示:至少包括一个硬件模拟器,一个应用程序行为定义模块,一个应用程序行为分析模块,一个底层API(application program interface应用程序接口)获取模块,一个API序列分析模块,一个安全分析模块。硬件模拟器模拟Android运行环境,应用程序行为分析模块和API序列分析模块从硬件模拟器中采集信息,安全分析模块判断应用程序的安全性。在这个最简模式下,正常的Android应用程序处理过程包括如下步骤:
1)应用程序行为定义模块。首先,将Andorid中的行为分为6个类别:联网,短信,访问地址薄,访问sim卡信息,访问多媒体数据,执行程序。其次,把需要分析的应用程序,每个页面上的每个按钮,跟Android中的6类行为对应起来,一个按钮可以对应多个行为。最后,把对应关系建模,建立应用程序按钮----行为模型。按钮是待分析程序页面上原有的,每个按钮有独一无二的id,通过获取按钮的id即可得到相应的按钮。
2)应用程序行为分析模块采集硬件模拟器中的应用程序信息,应用程序信息包括:确定目前操作的是哪个页面中的哪个按钮,有些点击可能没有涉及按钮,就过滤掉;这部分采用了模式匹配技术。具体的方法如下:首先,在应用程序定义模块中,记录了应用程序每个按钮对应的行为。应用程序行为分析模块,采集硬件模拟器中的各种点击、滑动以及晃动操作,通过模式匹配,即模式识别技术,识别出目前操作对应的按钮,进而根据所建的应用程序按钮----行为模型得到即将进行的操作行为。
3)API获取模块,采集硬件模拟器底层的API序列,这部分采用了反汇编、API函数识别等技术。具体的方法如下:首先,实时监控硬件模拟器CPU运行,通过反汇编引擎反汇编硬件模拟器的CPU指令,然后根据反汇编的指令调用地址,在API表里查找对应的API,记录这些API调用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所,未经中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110382248.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种滑块延时抽芯模具结构
- 下一篇:滑块与模架的安装结构





