[发明专利]基于软件控制流特征的计算机恶意软件检测新方法有效
申请号: | 201310069852.1 | 申请日: | 2013-03-05 |
公开(公告)号: | CN103177215A | 公开(公告)日: | 2013-06-26 |
发明(设计)人: | 李琪林;赵宗渠;王俊峰;肖杰;苗长胜;余明书;冯军;屈鸣;白泰 | 申请(专利权)人: | 四川电力科学研究院;国家电网公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F17/30 |
代理公司: | 成都信博专利代理有限责任公司 51200 | 代理人: | 舒启龙 |
地址: | 610071 四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种基于软件控制流特征的计算机恶意软件检测新方法,通过静态分析:二进制文件的控制流结构,自动提取操作码序列,并利用空间向量模型将序列转为结构化信息,这些信息经过筛选后作为文件的特征集,再使用数据挖掘的方法从大量特征集中发现软件分类的规则,并将其用于恶意软件的检测。本发明不但能够有效的检测出普通zero-day恶意软件,而且对于采用模糊和多态技术的恶意软件同样有较好的检测结果,对于蓄意攻击也保持良好的稳定性。 | ||
搜索关键词: | 基于 软件 控制 特征 计算机 恶意 检测 新方法 | ||
【主权项】:
一种基于软件控制流特征的恶意软件检测方法,其特征是:包含4个主要步骤:1)对PE格式文件即Portable Executables格式文件进行反汇编:采用递归下降算法来处理文件,以有效区分指令和数据,并采用基于x86汇编指令集创建指令序列;2)根据控制流选择代码的基本块:软件控制流是指反汇编代码中的基本块所形成的控制流结构;基本块是由若干虚拟地址连续的指令组成,它的特点是只有一个入口地址和一个出口地址,即这些指令执行时要么都不执行,要么按地址依次全部执行;基本块的构成采用断点判别法来实现,即首先确定整个软件代码序列中的断点地址,在相邻断点地址之间的指令序列则形成一个基本块; 3)软件特征表示和筛选:将软件代码序列中的基本块作为代表软件的特征类型,采用布尔型向量来表达软件特征:统计软件样本中出现的所有n个基本块并编号分别为(0,1,2,…,n‑1),所有软件使用一个n维的布尔向量来表示,当软件包含编号为i的基本块时,向量的第i+1表示为1,否则表示为0;并通过软件特征在文件中出现的频率来筛选特征,最优先的选择区间为[0.2×m,0.6×m],其中m是所有样本中不同特征的数量;4)通过数据挖掘算法判断恶意软件和正常软件:4.1)通过数据挖掘算法产生训练集结果:该过程是生成训练集结果和判断规则的过程;首先对大量的正常软件和恶意代码样本进行处理,样本文件按前面的特征表示与筛选生成的数据集作为输入,通过机器学习过程,在以下选用的数据挖掘算法中得到训练集结果;数据挖掘算法采用基于决策树的C4.5算法,基于Random Forest的分类算法和贝叶斯分类算法中的基于Bagging算法之一种;并按m fold 交叉验证产生分类规则;训练集结果产生的这些分类规则作为之后检测PE文件的依据;m fold 交叉验证:在对文件进行分类时,将所有文件按随机方式平均分为m份,将其中m‑1份作为机器学习的材料,而另外1份作为测试目标,这样进行m次,使每一份都能得到测试;4.2)产生测试结果:对于被测试的PE文件,经过提取与前面过程中相同的控制流特征后,将这些特征使用布尔型向量表示并使用arff记录文件存储这些数据;这些记录文件作为输入,利用上述训练集结果就得到测试结果。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川电力科学研究院;国家电网公司,未经四川电力科学研究院;国家电网公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310069852.1/,转载请声明来源钻瓜专利网。
- 上一篇:交错PWM控制电路
- 下一篇:高效率XC/DC电源转换电路