一种安卓系统恶意应用检测方法及系统技术方案

技术编号:15691354 阅读:90 留言:0更新日期:2017-06-24 04:29
本发明专利技术公开了一种安卓系统恶意应用检测方法及系统,包括:通过逆向工程反编译应用程序得到权限特征;通过动态行为采集和定义的行为链模型匹配得到行为特征。将大量的权限特征和行为特征组合生成特征数据样本集;机器学习算法利用特征数据样本集生成分类器;将未知应用程序的特征输入分类器,得出未知应用是否为恶意应用的结论。本发明专利技术提出基于逆向工程和动态行为采集的行为链模型,然后通过机器学习算法对未知应用的进行检测,从而实现对恶意应用的有效识别,准确率高,可见本发明专利技术提供的检测方法及系统效率高且不需要修改系统源代码可用性好。

Malicious application detection method and system for Android system

The invention discloses a Android system and a malicious application system, the method includes: through reverse engineering anti compile the application permission through behavior characteristics; chain model dynamic behavior of acquisition and definition of matching behavior. The combination of characteristics of authority characteristics and behavior of a large number of samples generated feature data sets; machine learning algorithm using feature data set for generating classifier; feature classifier input unknown applications, the unknown application whether the malicious application conclusion. The invention proposes behavior chain model of reverse engineering and dynamic behavior acquisition based on machine learning algorithm, and then through the application of the detection of the unknown, so as to effectively identify malicious applications, high accuracy, the invention provides the detecting method and system of high efficiency and no need to modify the source code of the system availability.

【技术实现步骤摘要】
一种安卓系统恶意应用检测方法及系统
本专利技术涉及移动互联网信息安全领域,特别是指一种安卓系统恶意应用检测方法及系统。
技术介绍
随着智能手机的快速普及,人们进入了移动互联网的时代。基于应用商店的发布模式成为移动应用的重要模式,移动应用产业得到了快速的增长。由于移动应用可从移动终端获得大量的敏感信息,且其本身能通过移动市场及广告商产生高利润,移动应用频频遭到了黑客的攻击,移动应用安全事件频发。鱼龙混杂的第三方应用市场,海量的移动应用缺乏集中有效的安全审查等,都导致大量的恶意移动应用被发布在移动应用市场。如何从海量的移动应用中精确地识别出可能会给移动终端带来安全隐患的恶意应用,成为移动应用安全研究的重要问题之一。现阶段恶意应用检测的主要手段可以分为静态检测和动态检测。静态检测方法:FlowDroid通过分析目标程序字节码文件和组件的生命周期,可以实现静态的污点分析,并生成函数调用图。TaintDroid提出了系统级的动态污点分析工具,通过标记敏感信息,实现对隐私数据的信息流实时监控;但是静态检测方法需要不断的更新恶意应用的特征库,且仅能识别已知的恶意应用程序。动态检测方法:Kynoid本文档来自技高网...
一种安卓系统恶意应用检测方法及系统

【技术保护点】
一种安卓系统恶意应用检测方法,其特征在于,包括:通过逆向工程反编译应用程序的安装文件,得到权限特征;通过动态行为捕获技术得到所述应用程序的行为记录,将所述行为记录与定义的行为链模型进行匹配得到行为特征;将行为特征与所述权限特征组合成最终特征;将多个已知应用程序的最终特征生成特征数据样本集,机器学习算法利用所述特征数据样本集生成分类器;将得到未知应用程序的最终特征输入生成的分类器,得到所述未知应用是否为恶意应用的结论。

【技术特征摘要】
1.一种安卓系统恶意应用检测方法,其特征在于,包括:通过逆向工程反编译应用程序的安装文件,得到权限特征;通过动态行为捕获技术得到所述应用程序的行为记录,将所述行为记录与定义的行为链模型进行匹配得到行为特征;将行为特征与所述权限特征组合成最终特征;将多个已知应用程序的最终特征生成特征数据样本集,机器学习算法利用所述特征数据样本集生成分类器;将得到未知应用程序的最终特征输入生成的分类器,得到所述未知应用是否为恶意应用的结论。2.根据权利要求1所述的安卓系统恶意应用检测方法,其特征在于,所述将多个已知应用程序的最终特征生成特征数据样本集,机器学习算法利用所述特征数据样本集生成分类器的方法包括:将多个已知正常应用程序和恶意应用程序的最终特征生成特征数据样本集;将所述特征数据样本集化分为特征训练样本集和特征测试样本集;所述机器学习算法利用所述特征训练样本集生成分类器,所述特征测试样本集用于测试评估生成的分类器。3.根据权利要求2所述的安卓系统恶意应用检测方法,其特征在于,所述通过逆向工程反编译应用程序的安装文件,得到权限特征的方法包括:使用反编译工具对所述应用程序的安装文件进行反编译;得到所述权限特征,定义权限特征向量P=(μ1,μ2…μi…μk),其中,k表示安卓操作系统中系统权限的总个数,μi表示该应用是否申请了第i个权限,i<1,μi∈{0,1},0表示没有申请权限,1表示申请了权限。4.根据权利要求3所述的安卓系统恶意应用检测方法,其特征在于,所述将所述行为记录与定义的行为链模型进行匹配得到行为特征的方法包括:将得到的所述行为记录与定义的所述行为链模型做匹配,可以得到每一个行为链的触发次数;将所有行为链的触发次数做归一化处理,可以得到行为特征向量S=(σ1,σ2…σi…σm),其中,m表示行为链模型的总个数,σi表示第i个行为链模型的每千条行为记录中的触发次数,所示将行为特征与所述权限特征组合成最终特征包括:将权限特征向量P与行为特征向量S组合成一个最终的特征向量F:F=(μ1,μ2…μi…μk,σ1,σ2…σi…σm)。5.根据权利要求1-4任意一项所述的安卓系统恶意应用检测方法,其特征在于,所述通过动态行为捕获技术得到所述应用程序的行为记录的方法包括:将本地动态库文件注入到目标应用程序的进程空间内;加载所述本地动态库;修改Java层API在Dalvik虚拟机实例中的对应的Method结构体;通过动态绑定,拦截API调用,即获取所述应用程序的行为记录。6.一...

【专利技术属性】
技术研发人员:刘元安范文浩桑耀辉吴帆张洪光
申请(专利权)人:北京邮电大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1