【技术实现步骤摘要】
基于SVM的Android移动网络终端恶意代码的动静结合检测方法
本专利技术属于信息安全领域,具体涉及一种基于SVM的Android移动网络终端恶意代码的动静结合检测方法。
技术介绍
当前智能手机的应用已经涉及到人们生活的各个方面,而Android系统在智能手机中占有大量的份额,因此准确的检测Android恶意代码,对于保护Android用户隐私和财产安全具有重要的意义和应用价值。现有的Android恶意代码多标签检测的研究中,一般仅使用静态分析方法提取Android软件的特征,无法处理动态加载、运行时加解密等行为,恶意软件的检测精度和恶意家族的分类精度较低。
技术实现思路
本专利技术的目的在于提供一种基于SVM的Android移动网络终端恶意代码的动静结合检测方法。实现本专利技术目的的技术解决方案为:一种基于SVM的Android移动网络终端恶意代码的动静结合检测方法,包括以下步骤:步骤1、获取Android移动智能终端嵌入式恶意软件样本,并标记各样本所属的Android恶意软件家族,然后获取非恶意软件样本,从而构建包含恶意软件和非恶意软件的训练样本数据集;步骤2、使用反编译工具处理Android软件样本,构建软件的静态特征向量;步骤3、创建Android虚拟设备,使用Android软件动态分析工具,构建软件的动态特征向量;步骤4、获取训练样本数据集中每个样本的静态特征与动态行为特征,构建每个软件样本的特征向量;步骤5、对所有软件样本的特征 ...
【技术保护点】
1.基于SVM的Android移动网络终端恶意代码的动静结合检测方法,其特征在于,包括以下步骤:/n步骤1、获取Android移动智能终端嵌入式恶意软件样本,并标记各样本所属的Android恶意软件家族,然后获取非恶意软件样本,从而构建包含恶意软件和非恶意软件的训练样本数据集;/n步骤2、使用反编译工具处理Android软件样本,构建软件的静态特征向量;/n步骤3、创建Android虚拟设备,使用Android软件动态分析工具,构建软件的动态特征向量;/n步骤4、获取训练样本数据集中每个样本的静态特征与动态行为特征,构建每个软件样本的特征向量;/n步骤5、对所有软件样本的特征向量增加恶意软件标记字段,指明该样本是否为恶意软件,利用带恶意软件标记字段的特征向量训练支持向量机分类器;/n步骤6、对恶意软件样本的特征向量增加恶意软件类别标记字段,指明该样本所属的Android恶意软件家族,利用带恶意软件类别标记字段的特征向量训练随机森林分类器;/n步骤7、提取待测软件的静态特征向量和动态特征向量,构建待测软件的特征向量;/n步骤8、利用支持向量机分类器进行恶意软件检;若检测为恶意的软件,则进 ...
【技术特征摘要】
1.基于SVM的Android移动网络终端恶意代码的动静结合检测方法,其特征在于,包括以下步骤:
步骤1、获取Android移动智能终端嵌入式恶意软件样本,并标记各样本所属的Android恶意软件家族,然后获取非恶意软件样本,从而构建包含恶意软件和非恶意软件的训练样本数据集;
步骤2、使用反编译工具处理Android软件样本,构建软件的静态特征向量;
步骤3、创建Android虚拟设备,使用Android软件动态分析工具,构建软件的动态特征向量;
步骤4、获取训练样本数据集中每个样本的静态特征与动态行为特征,构建每个软件样本的特征向量;
步骤5、对所有软件样本的特征向量增加恶意软件标记字段,指明该样本是否为恶意软件,利用带恶意软件标记字段的特征向量训练支持向量机分类器;
步骤6、对恶意软件样本的特征向量增加恶意软件类别标记字段,指明该样本所属的Android恶意软件家族,利用带恶意软件类别标记字段的特征向量训练随机森林分类器;
步骤7、提取待测软件的静态特征向量和动态特征向量,构建待测软件的特征向量;
步骤8、利用支持向量机分类器进行恶意软件检;若检测为恶意的软件,则进一步利用随机森林分类器判断其所属的恶意软件家族。
2.根据权利要求1所述的Android移动网络终端恶意代码的动静结合检测方法,其特征在于,步骤2中,使用APKParser处理Android软件样本,解析AndroidManifest.xml文件,根据xml中的标记字段,提取软件申请的权限列表、声明的组件以及软件监控的系统事件,构建软件静态特征向量Fstatic,将其表示为下列三元组:
Fstatic=<Per,Cpt,Act>
其中,Per为软件申请的所有权限的集合,Cpt为软件声明的所有组件集合,Act为软件监听的所有事件集合。
3.根据权利要求1所述的Android移动网络终端恶意代码的动静结合检测方法,其特征在于,步骤3中,使用AndroidSDK工具创建Android虚拟设备,使用DroidBox作为Android软件动态分析工具,通过构建的MonkeyRunner脚本安装待检测的软件,模拟用户交互行为并仿真系统事件,收集监控到的软件动态行为,构建软件的动态特征;
其中仿真系统事件使用adbshell命令实现,关注的系统事件为Android恶意软件通常监听的10种系统事件,包括:收到基于数据的短信、收到基于文本的短信、系统启动完成、有电话呼入、有电话呼出、手机电量低、时区发生改变、电话状态改变、信号强度改变和关机;
构建的软件动态特征Fdynamic为:
Fdynamic=<DCL,SS,RN,FRW,ON,CN,SN,DL-N,DL-F,DL-S,SSMS,PC,CU>
其中,DCL为动态加载,SS为启动服务,RN为接收网络数据,FRW为文件读写,ON为开启网络连接,CN为关闭网络连接,SN为发送网络数据,DL-N为数据泄露(通过网络),DL-F为数据泄露(通过文件),DL-S为数据泄露(通过短信),SSMS为发送短信,PC为打电话,CU加密算法使用。
4.根据权利要求1所述的Android移动网络终端恶意代码的动静结合检测方法,其特征在于,步骤4中,每个样本的特征向量F为:
F=〈F′static,F′dynamic>
其中F′static和F′dynamic为对Fstatic和Fdynamic进一步处理的结果,具体...
【专利技术属性】
技术研发人员:顾晶晶,庄毅,乔塨哲,
申请(专利权)人:南京航空航天大学,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。