[发明专利]基于软件基因的恶意代码检测与识别方法及装置有效
申请号: | 201711434692.0 | 申请日: | 2017-12-26 |
公开(公告)号: | CN108171059B | 公开(公告)日: | 2020-09-04 |
发明(设计)人: | 单征;庞建民;刘福东;赵炳麟;梁光辉;陈奕杭;赵荣彩;张啸川;桂海仁;韩金;孟曦;孙文杰;师炜;周鑫;李男;王婧 | 申请(专利权)人: | 中国人民解放军战略支援部队信息工程大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 郑州大通专利商标代理有限公司 41111 | 代理人: | 陈勇 |
地址: | 450000 河*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及恶意代码分析技术领域,尤其涉及基于软件基因的恶意代码检测与识别方法及装置。本发明通过定义并提取恶意代码的软件基因,构建恶意代码的软件基因组,针对不同恶意代码的软件基因调用关系,为每个恶意代码构建基于图结构表示的基因模式,通过对现有样本进行学习,建立恶意代码软件基因库,具有较好的检测准确率和较低的误报率。通过对不同软件基因进行编码,将软件基因组合成软件基因组,软件基因组为恶意代码信息性的集合,基因模式采用图结构表示,能够表现恶意代码的整体特征信息,为恶意代码物质性的集合。本发明同时兼备软件基因的信息性和物质性,并对遗传特性和突变特性具有较好的表征作用。 | ||
搜索关键词: | 基于 软件 基因 恶意代码 检测 识别 方法 装置 | ||
步骤1:构建恶意代码软件基因库;
步骤2:通过恶意代码软件基因库对恶意代码进行检测与识别。
2.根据权利要求1所述的基于软件基因的恶意代码检测与识别方法,其特征在于,所述步骤1包括:步骤1.1:对恶意代码进行静态分析,扫描恶意代码二进制文件,获取二进制文件的静态信息,将目标代码脱壳,并进行混淆分析;
步骤1.2:将恶意代码二进制文件进行反汇编得到对应的汇编代码,汇编代码以基本块作为基本单位;
步骤1.3:将基本块的二元调用关系作为恶意代码的软件基因表示,恶意代码的所有软件基因表示构成恶意代码的软件基因组;
步骤1.4:将软件基因在恶意代码中的调用关系作为软件基因序列,利用软件基因的调用关系在恶意代码中所构成的调用图构造恶意代码的基因模式,经过模式提取得到软件基因组和基因模式的映射,将恶意代码的软件基因转换成基因模式的集合;
步骤1.5:将基因模式的集合存入恶意代码软件基因库。
3.根据权利要求2所述的基于软件基因的恶意代码检测与识别方法,其特征在于,所述步骤1.3包括:步骤1.3.1:扫描目标代码的汇编代码,按照基本块划分汇编代码;
步骤1.3.2:对相同的基本块进行合并,提取所有基本块的二元调用关系;
步骤1.3.3:提取恶意代码的所有软件基因,利用散列函数对软件基因进行编码,将同一恶意代码的所有软件基因构成的集合作为恶意代码软件基因组。
4.根据权利要求2所述的基于软件基因的恶意代码检测与识别方法,其特征在于,所述步骤1.4包括:步骤1.4.1:提取恶意代码的软件基因,构成恶意代码的软件基因组;
步骤1.4.2:针对不同恶意代码的软件基因组,得出软件基因组中软件基因出现的规律;
步骤1.4.3:根据软件基因出现的规律提取对应恶意代码的基因模式:根据软件基因的调用关系,通过编码所表示的软件基因还原恶意代码的物理结构,所述物理结构由软件基因表示的调用关系图组成,图中的节点为软件基因组中经过编码表示的恶意代码的软件基因,图结构即为恶意代码的基因模式。
5.根据权利要求1所述的基于软件基因的恶意代码检测与识别方法,其特征在于,所述步骤2包括:步骤2.1:提取待测目标代码的软件基因;
步骤2.2:根据提取的软件基因,得出待测目标代码的基因模式,与恶意代码软件基因库中的基因模式进行匹配;
步骤2.3:根据匹配的结果,计算目标代码的匹配率,对恶意性进行判定:设置一个阈值,当目标代码的基因模式与恶意代码软件基因库中基因模式的匹配率达到该阈值,则认为目标代码存在恶意性。
6.基于权利要求1‑5任一所述的基于软件基因的恶意代码检测与识别方法的基于软件基因的恶意代码检测与识别装置,其特征在于,包括:基因库模块,用于构建恶意代码软件基因库;
检测识别模块,用于通过恶意代码软件基因库对恶意代码进行检测与识别。
7.根据权利要求6所述的基于软件基因的恶意代码检测与识别装置,其特征在于,所述基因库模块包括:静态分析模块,用于对恶意代码进行静态分析,扫描恶意代码二进制文件,获取二进制文件的静态信息,将目标代码脱壳,并进行混淆分析;
反汇编模块,用于将恶意代码二进制文件进行反汇编得到对应的汇编代码,汇编代码以基本块作为基本单位;
基因抽取模块,用于将基本块的二元调用关系作为恶意代码的软件基因表示,恶意代码的所有软件基因表示构成恶意代码的软件基因组;
模式提取模块,用于将软件基因在恶意代码中的调用关系作为软件基因序列,利用软件基因的调用关系在恶意代码中所构成的调用图构造恶意代码的基因模式,经过模式提取得到软件基因组和基因模式的映射,将恶意代码的软件基因转换成基因模式的集合;
基因库构建模块,用于将基因模式的集合存入恶意代码软件基因库。
8.根据权利要求6所述的基于软件基因的恶意代码检测与识别装置,其特征在于,所述检测识别模块包括:第一基因提取模块,用于提取待测目标代码的软件基因;
基因匹配模块,用于根据提取的软件基因,得出待测目标代码的基因模式,与恶意代码软件基因库中的基因模式进行匹配;
恶意性判定模块,用于根据匹配的结果,计算目标代码的匹配率,对恶意性进行判定:设置一个阈值,当目标代码的基因模式与恶意代码软件基因库中基因模式的匹配率达到该阈值,则认为目标代码存在恶意性。
9.根据权利要求6所述的基于软件基因的恶意代码检测与识别装置,其特征在于,所述基因抽取模块包括:划分模块,用于扫描目标代码的汇编代码,按照基本块划分汇编代码;
基因抽取子模块,用于对相同的基本块进行合并,提取所有基本块的二元调用关系;
基因组模块,用于提取恶意代码的所有软件基因,利用散列函数对软件基因进行编码,将同一恶意代码的所有软件基因构成的集合作为恶意代码软件基因组。
10.根据权利要求6所述的基于软件基因的恶意代码检测与识别装置,其特征在于,所述模式提取模块包括:第二基因提取模块,用于提取恶意代码的软件基因,构成恶意代码的软件基因组;
分析模块,用于针对不同恶意代码的软件基因组,得出软件基因组中软件基因出现的规律;
模式提取子模块,用于根据软件基因出现的规律提取对应恶意代码的基因模式:根据软件基因的调用关系,通过编码所表示的软件基因还原恶意代码的物理结构,所述物理结构由软件基因表示的调用关系图组成,图中的节点为软件基因组中经过编码表示的恶意代码的软件基因,图结构即为恶意代码的基因模式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军战略支援部队信息工程大学,未经中国人民解放军战略支援部队信息工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201711434692.0/,转载请声明来源钻瓜专利网。