[发明专利]基于SVM的Android恶意软件检测方法有效
申请号: | 201810227892.7 | 申请日: | 2018-03-20 |
公开(公告)号: | CN108563950B | 公开(公告)日: | 2022-03-15 |
发明(设计)人: | 宁卓;张佩 | 申请(专利权)人: | 南京邮电大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06K9/62 |
代理公司: | 南京苏科专利代理有限责任公司 32102 | 代理人: | 姚姣阳 |
地址: | 210003 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 svm android 恶意 软件 检测 方法 | ||
1.基于SVM的Android恶意软件检测方法,其特征在于包括步骤:
获取系统调用序列:在安卓平台上运行程序,向程序发送数量级为千个的伪用户事件,并用strace跟踪获得与伪用户事件相对应的调用序列;
分类系统调用序列:引入贡献度概念,按公式Ci=|(|Bi|\|B|)-(|Mi|\|M|)|计算各系统调用序列中单独的系统调用的贡献值并以降序排列,并基于贡献值设定门槛分类确定的系统调用和正常的系统调用,其中|Bi|代表来自良性应用的系统调用序列si的整体发生时间;|B|是所有来自良性应用的系统调用序列的数量;|Mi|是来自恶意软件的系统调用序列中si的总发生次数;|M|是来自恶意软件的所有系统调用序列的数目;
降维:保留确定的系统调用,并映射到联合向量空间S,样本用向量表示;将样本与联合向量空间S对比得到一个由1、0组成的向量,并用哈希表或布隆过滤器建立并存储向量矩阵;
识别恶意软件:选择径向基函数作为支持向量机的核函数,并确定分类选择的最佳参数组合,对恶意软件进行分类检测。
2.根据权利要求1所述基于SVM的Android恶意软件检测方法,其特征在于,获取系统调用序列步骤中,向程序发送伪用户事件所采用的是Monkey工具。
3.根据权利要求1所述基于SVM的Android恶意软件检测方法,其特征在于,获取系统调用序列步骤中,向程序发送伪用户事件的数量为1000个。
4.根据权利要求1所述基于SVM的Android恶意软件检测方法,其特征在于,分类系统调用序列步骤中,所述贡献度为评定所述系统调用对恶意软件识别的重要程度。
5.根据权利要求1所述基于SVM的Android恶意软件检测方法,其特征在于,分类系统调用序列步骤中,基于贡献值设定门槛的标准为选择系统全部系统调用的30%作为高频率的系统调用,对贡献值为门槛以上的判定为确定的系统调用,而对贡献度小于门槛的判定为正常的系统调用。
6.根据权利要求1所述基于SVM的Android恶意软件检测方法,其特征在于,降维步骤中在保留确定的系统调用同时,将正常的系统调用舍弃。
7.根据权利要求1所述基于SVM的Android恶意软件检测方法,其特征在于,降维步骤中包括数据集的特征提取,将样本与联合向量空间S对比,一个样本如果存在对应的特征则标记为1、如果不存在对应的特征标记为0,并通过哈希表和布隆过滤器建立并存储向量矩阵。
8.根据权利要求1所述基于SVM的Android恶意软件检测方法,其特征在于,识别恶意软件步骤中支持向量机确定各核函数的最佳参数组合是通过采用网格搜索法和遗传算法组合处理,并利用十折交叉验证得到各组核函数的最高平均分类率,比较各组最高平均分类率得到确定选择的核函数以及参数组合。
9.根据权利要求8所述基于SVM的Android恶意软件检测方法,其特征在于,所述网格搜索法包括粗选和精选两个从步骤,通过粗选确定参数范围,而后通过精选逐步缩小搜索范围和步长完成处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京邮电大学,未经南京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810227892.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:针对多核处理器信息安全的任务映射方法
- 下一篇:病毒检测方法及装置