[发明专利]基于马尔科夫模型的内存中软件基因动态提取方法有效
申请号: | 201910557072.9 | 申请日: | 2019-06-25 |
公开(公告)号: | CN110414231B | 公开(公告)日: | 2020-09-29 |
发明(设计)人: | 刘福东;单征;林成梁;侯一凡;陈奕杭;郑杨杰;刘子敬;孙文杰 | 申请(专利权)人: | 中国人民解放军战略支援部队信息工程大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F21/53;G06F9/455;G06F8/53 |
代理公司: | 郑州大通专利商标代理有限公司 41111 | 代理人: | 张立强 |
地址: | 450000 河*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 马尔科夫 模型 内存 软件 基因 动态 提取 方法 | ||
1.一种基于马尔科夫模型的内存中软件基因动态提取方法,其特征在于,包括:
步骤1:建立基于QEMU虚拟机平台的内存捕获系统;
步骤2:基于所述内存捕获系统在加壳恶意代码执行时进行虚拟机相关内存转储;
步骤3:基于未加壳恶意代码中提取的恶意代码软件基因构建马尔科夫模型;
步骤4:基于非恶意代码中提取的代码片段构建第一状态转换矩阵;
步骤5:利用所述第一状态转换矩阵对所述马尔科夫模型进行优化,得到加壳软件基因检测模型;
步骤6:通过所述加壳软件基因检测模型对加壳恶意代码进行恶意代码软件基因提取。
2.根据权利要求1所述的基于马尔科夫模型的内存中软件基因动态提取方法,其特征在于,所述步骤1包括:
在QEMU虚拟机平台搭建虚拟机,并在QEMU虚拟机平台的外围搭建控制服务器和文件服务器,构成内存捕获系统;所述控制服务器对QEMU虚拟机平台进行通信控制,控制虚拟机的快照回复、运行、挂起以及内存转储;所述文件服务器对加壳恶意代码在客户端与虚拟机之间的文件进行传输;所述虚拟机对加壳恶意代码进行脱壳处理。
3.根据权利要求1所述的基于马尔科夫模型的内存中软件基因动态提取方法,其特征在于,所述步骤2包括:
预设周期T,基于所述周期T在加壳恶意代码执行时定时对内存捕获系统的虚拟机相关内存进行转储。
4.根据权利要求1所述的基于马尔科夫模型的内存中软件基因动态提取方法,其特征在于,在所述步骤2之后还包括:
通过计算熵值对转储的虚拟机相关内存进行数据预处理,去除脱壳完毕的代码。
5.根据权利要求1所述的基于马尔科夫模型的内存中软件基因动态提取方法,其特征在于,所述步骤3包括:
通过流式反汇编器对转储的虚拟机相关内存文件进行反汇编翻译,截取长度为a以上300以下的恶意代码片段Q,根据恶意代码片段Q中汇编指令跳转的概率建立第二状态转换矩阵;
基于所述第二状态转换矩阵得出第二a阶马尔科夫链概率表达式;
基于所述第二a阶马尔科夫链概率表达式得出该恶意代码片段Q为恶意代码软件基因的概率PQ,完成a阶马尔科夫链模型的构建。
6.根据权利要求5所述的基于马尔科夫模型的内存中软件基因动态提取方法,其特征在于,所述步骤4包括:
基于所述内存捕获系统在非恶意代码执行时进行虚拟机相关内存转储;
通过流式反汇编器对转储的虚拟机相关内存文件进行反汇编翻译,截取长度为a以上300以下的非恶意代码片段Q′,根据非恶意代码片段Q′中汇编指令跳转的概率建立第一状态转换矩阵。
7.根据权利要求6所述的基于马尔科夫模型的内存中软件基因动态提取方法,其特征在于,所述步骤5包括:
基于所述第一状态转换矩阵得出第一a阶马尔科夫链概率表达式;
基于所述第一a阶马尔科夫链概率表达式得出该非恶意代码片段为非恶意代码软件基因的概率PQ';
将PQ'作为参考值,对PQ进行优化,得到恶意代码软件基因的可能性比值S:
设置阈值,若S大于所述阈值,则Q为恶意代码软件基因,对Q进行提取,否则,Q不是恶意代码软件基因;完成加壳软件基因检测模型的构建。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军战略支援部队信息工程大学,未经中国人民解放军战略支援部队信息工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910557072.9/1.html,转载请声明来源钻瓜专利网。