[发明专利]一种恶意软件家族归属判定方法、系统及存储介质在审
申请号: | 201910787920.5 | 申请日: | 2019-08-26 |
公开(公告)号: | CN110516446A | 公开(公告)日: | 2019-11-29 |
发明(设计)人: | 李维勇;张伟;李建林;李方方;陈云芳 | 申请(专利权)人: | 南京信息职业技术学院 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06K9/62 |
代理公司: | 32224 南京纵横知识产权代理有限公司 | 代理人: | 范青青<国际申请>=<国际公布>=<进入 |
地址: | 210023 江苏省*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 恶意软件 函数调用图 判定 家族特征 节点信息 安装包 归属 存储介质 计算函数 特征结构 敏感API 准确率 构建 减小 同构 调用 分析 | ||
1.一种恶意软件家族归属判定方法,其特征在于,所述方法包括如下步骤:
获取包含恶意软件的安卓安装包;
从所述安卓安装包中获取API函数节点信息;
针对恶意软件家族使用的每个敏感API,结合API函数节点信息分别构建函数调用图;
根据函数调用图计算函数调用图间存在的最大同构子图;
将某一恶意软件家族样本基于同一敏感API得到的函数调用图作为训练集,对最大同构子图进行同构分析,得到恶意软件家族特征;
利用恶意软件家族特征对恶意软件进行家族归属判定。
2.根据权利要求1所述的恶意软件家族归属判定方法,其特征在于,从所述安卓安装包中获取API函数节点信息的方法包括如下步骤:
对安卓安装包进行反编译,得到包含dalvik字节码的smali文件;
对smali文件中的“incoke-xxxx”语句进行分析,得到安卓安装包中所包含的API函数节点;
将父类中的API函数节点替换子类中继承的API函数节点,将API函数节点间的间接调用关系转换为直接调用关系,获取API调用序列。
3.根据权利要求2所述的恶意软件家族归属判定方法,其特征在于,获取API函数节点信息的方法还包括对涉及第三方的软件开发工具包的API函数节点进行过滤。
4.根据权利要求1所述的恶意软件家族归属判定方法,其特征在于,所述函数调用图采用下述三元组表示:
Gi=(Si,Vi,Ei)
其中:Gi表示基于第i个敏感API构建的函数调用图;Si表示第i个敏感API;Vi表示第i个敏感API调用序列上所有函数节点的集合;Ei表示第i个敏感API函数节点间的调用关系。
5.根据权利要求1所述的恶意软件家族归属判定方法,其特征在于,根据函数调用图计算函数调用图间存在的最大同构子图的方法包括:
将多张基于不同敏感API的函数调用图以敏感API节点为图匹配的约束条件,利用子图同构算法得到最大同构子图。
6.根据权利要求5所述的恶意软件家族归属判定方法,其特征在于,利用子图同构算法得到最大同构子图的方法包括:
对于“图-图”同构及“子图-图”同构,采用VF2子图同构算法计算得到最大同构子图;
对于“子图-子图”同构,采用SimRank算法计算函数调用图间各节点关于敏感API节点的相似度,根据相似度构建最大同构子图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京信息职业技术学院,未经南京信息职业技术学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910787920.5/1.html,转载请声明来源钻瓜专利网。