[发明专利]用于检测恶意程序的判定模型及恶意程序的检测方法有效
申请号: | 201410137169.1 | 申请日: | 2014-04-04 |
公开(公告)号: | CN103927483B | 公开(公告)日: | 2016-11-16 |
发明(设计)人: | 宋建锋;苗启广;刘家辰;曹莹;王维炜;张浩;杨晔;汪梁 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 西安恒泰知识产权代理事务所 61216 | 代理人: | 史玫 |
地址: | 710071*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 检测 恶意程序 判定 模型 方法 | ||
1.一种用于监测恶意程序的判定模型,其特征在于,该判定模型包括判定规则集合和训练模型,该判定模型建立方法包括:
步骤一,判定规则生成:
将由“恶意程序”样本集和“非恶意程序”样本集组成的训练样本集在API调用层、基本抽象行为层和业务抽象行为层生成判定规则集合,所述判定规则集合包括API调用层判定规则、基本抽象行为层判定规则和业务抽象行为层判定规则:
(1.1)将训练样本集在API调用层生成API调用层判定规则,该API调用层判定规则包括API调用层独立规则、API调用层敏感规则和API调用层可疑规则:
①统计训练样本集中出现的API调用,得到所有出现过的API调用;
②针对每一个出现过的API调用,分别进行如下处理:
分别计算当前API调用在“恶意程序”样本集中出现的概率和“非恶意程序”样本集中出现的概率,并计算该API调用的误检风险比率:
当前API调用在“恶意程序”样本集中出现的概率=当前API调用在“恶意程序”样本集中出现的次数÷“恶意程序”样本集中的总样本数,
当前API调用在“非恶意程序”样本集中出现的概率=当前API调用在“非恶意程序”样本集中出现的次数÷“非恶意程序”样本集中的总样本数,
当前API调用的误检风险比率=当前API调用在“非恶意程序”样本集中出现的次数÷当前API调用在“恶意程序”样本集中出现的次数,
如当前API调用的误检风险比率为r1,且当前API调用在“恶意程序”样本集中出现的概率大于d1,则该当前API调用定义为API调用层独立规则,其中:0≤r1≤0.05,0.2≤d1≤0.4;
如当前API调用的误检风险比率为r2,且当前API调用在“恶意程序”样本集中出现的概率大于d2,则该当前API调用定义为API调用层敏感规则,其中:0≤r2≤0.05,0.15≤d2≤0.35;
如当前API调用的误检风险比率为r3,且当前API调用在“恶意程序”样本集中出现的概率大于d3,则该当前API调用定义为API调用层可疑规则,其中:0≤r3≤0.05,0.1≤d3≤0.3;
(1.2)将训练样本集在基本抽象行为层生成基本抽象行为层判定规则,该基本抽象行为层判定规则包括独立基本抽象行为判定规则、敏感基本抽象行为判定规则和可疑基本抽象行为判定规则:
①统计训练样本集中出现的基本抽象行为,得到所有出现过的基本抽象行为;
②针对每一个出现过的基本抽象行为分别进行如下处理:
分别计算当前基本抽象行为在“恶意程序”样本集中出现的概率和“非恶意程序”样本集中出现的概率,并计算该基本抽象行为的误检风险比率:
当前基本抽象行为在“恶意程序”样本集中出现的概率=当前基本抽象行为在“恶意程序”样本集中出现的次数÷“恶意程序”样本集中的总样本数,
当前基本抽象行为在“非恶意程序”样本集中出现的概率=当前基本抽象行为在“非恶意程序”样本集中出现的次数÷“非恶意程序”样本集中的总样本数,
当前基本抽象行为的误检风险比率=当前基本抽象行为在“非恶意程序”样本集中出现的次数÷当前基本抽象行为在“恶意程序”样本集中出现的次数,
如当前基本抽象行为的误检风险比率为r4,且当前基本抽象行为在“恶意程序”样本集中出现的概率大于d4,则该当前基本抽象行为定义为独立基本抽象行为判定规则,其中:0≤r4≤0.05,0.2≤d4≤0.4;
如当前基本抽象行为的误检风险比率为r5,且当前基本抽象行为在“恶意程序” 样本集中出现的概率大于d5,则该当前基本抽象行为定义为敏感基本抽象行为判定规则,其中:0≤r5≤0.05,0.15≤d5≤0.35;
如当前基本抽象行为的误检风险比率为r6,且当前基本抽象行为在“恶意程序”样本集中出现的概率大于d6,则该当前基本抽象行为定义为可疑基本抽象行为判定规则,其中:0≤r6≤0.05,0.1≤d6≤0.3;
(1.3)将训练样本集在基本抽象行为层生成业务抽象行为层判定规则,该业务抽象行为层判定规则包括独立业务抽象行为判定规则、敏感业务抽象行为判定规则和可疑业务抽象行为判定规则:
①统计训练样本集中出现的业务抽象行为,得到所有出现过的业务抽象行为;
②针对每一个出现过的业务抽象行为分别进行如下处理:
分别计算当前业务抽象行为在“恶意程序”样本集和“非恶意程序”样本集中出现的概率,并计算该业务抽象行为的误检风险比率:
当前业务抽象行为在“恶意程序”样本集中出现的概率=当前业务抽象行为在“恶意程序”样本集中出现的次数÷“恶意程序”样本集中的总样本数,
当前业务抽象行为在“非恶意程序”样本集中出现的概率=当前业务抽象行为在“非恶意程序”样本集中出现的次数÷“非恶意程序”样本集中的总样本数,
当前业务抽象行为的误检风险比率=当前业务抽象行为在“非恶意程序”样本集中出现的次数÷当前业务抽象行为在“恶意程序”样本集中出现的次数,
如当前业务抽象行为的误检风险比率为r7,且当前业务抽象行为在“恶意程序”样本集中出现的概率大于d7,则该当前业务抽象行为定义为独立业务抽象行为判定规则,其中:0≤r7≤0.05,0.2≤d7≤0.4;
如当前业务抽象行为的误检风险比率为r8,且当前业务抽象行为在“恶意程序”样本集中出现的概率大于d8,则该当前业务抽象行为定义为敏感业务抽象行为判定 规则,其中:0≤r8≤0.05,0.15≤d8≤0.35;
如当前业务抽象行为的误检风险比率为r9,且当前业务抽象行为在“恶意程序”样本集中出现的概率大于d9,则该当前业务抽象行为定义为可疑业务抽象行为判定规则,其中:0≤r9≤0.05,0.1≤d9≤0.3。
步骤二,机器学习算法训练
(2.1)样本整理:将训练样本集中的样本数据整理为OCSVM算法能够处理的特征串格式;
(2.2)参数选择:对OCSVM模型中RBF核函数的核带宽进行参数选择,RBF核函数的核带宽选择范围是{2k},其中k的取值范围是[-m,m]内的整数,5≤m≤30;
(2.3)模型训练:基于步骤(2.2)选出的RBF核参数,将样本特征从原空间映射到特征空间,并使用超平面模型区分特征空间点与特征空间原点,通过解优化得到超平面与原点距离最大的位置,得到函数(Ⅰ):
f(x)=sgn((ω·Φ(x))-ρ) (Ⅰ)
其中:
x是样本对应的特征向量,
Φ(x)是RBF核函数对应的映射函数,用于将原空间的特征点映射至高维的RKHS中,
ω是OCSVM核心优化问题求解得到的参数,
ρ为RKHS中原点到决策平面的距离,用于确定正类与负类间决策边界的位置,其中正类指的是恶意程序类,负类指的是非恶意程序类。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410137169.1/1.html,转载请声明来源钻瓜专利网。