[发明专利]一种识别计算机软件行为的谱方法有效
申请号: | 201410012074.7 | 申请日: | 2014-01-13 |
公开(公告)号: | CN103778372B | 公开(公告)日: | 2016-10-19 |
发明(设计)人: | 陈黎飞;陈可意 | 申请(专利权)人: | 福建师范大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 350007 *** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 识别 计算机软件 行为 方法 | ||
技术领域:
本发明涉及一种识别计算机软件行为的谱方法。
背景技术:
计算机软件行为识别技术用于辅助判断一个计算机程序是否是恶意软件(Malware)。当前的方法使用表示软件行为的底层特征(包括特征码、API序列等),通过特征匹配或基于机器学习的序列模式匹配来预测软件行为,前者只能针对已知恶意软件,一旦恶意软件产生变种,需要及时更新特征码库;后者存在误报率高、漏报率高的缺点。
发明内容:
本发明的目的在于克服现有技术的不足,提供一种识别计算机软件行为的谱方法。
为了解决上述技术问题,本发明提供一种识别计算机软件行为的谱方法,包括以下步骤:
(1)构造软件行为表示模型:用DHMM的模型参数二元组(A*,B*)表示S或G的软件行为;
(2)提取软件行为特征:对矩阵A*进行谱分解,提取软件行为特征D;
(3)度量软件行为相似性:根据B*和D计算两个计算机程序之间、或两个计算机程序组之间、或一个计算机程序与一个程序组之间的软件行为相似性。
进一步地,所述步骤(1)构造软件行为表示模型,分两种情况:
第一种情况:单个计算机程序的软件行为表示模型
S具有M种软件行为,每种行为与DHMM(S)的一个隐状态相对应;用模型(A*,B*)表示S的软件行为,具体实施步骤如下:
设定隐状态的数目M,并给定初始状态概率分布C;
输入计算机程序S;
调用一种DHMM训练算法求取令P[S|A,B,C]最大化的模型参数A和B,分别记为A*和B*;
第二种情况:计算机程序组的软件行为表示模型
对于计算机程序组G={S1,S2,…,SN},G具有M种软件行为,每种行为与DHMM(S1),DHMM(S2),…,DHMM(SN)共有的一个隐状态相对应;用模型(A*,B*)表示G的软件行为,具体实施步骤如下:
设定隐状态的数目M,并给定初始状态概率分布C;
输入G中的所有计算机程序S1,S2,…,SN;
调用一种DHMM训练算法求取令P[S1|A,B,C]×P[S2|A,B,C]×…×P[SN|A,B,C]最大化的模型参数A和B,分别记为A*和B*。
进一步地,所述步骤(2)提取软件行为特征中,软件行为特征用M×M的矩阵D={dij}M×M来表示,D的第i(i=1,2,…,M)行元素构成一个行向量Di=<di1,di2,…,diM>,具体实施步骤如下:
输入计算机程序S或计算机程序组G的软件行为模型(A*,B*);
对矩阵A*进行谱分解操作,将之分解为A*=X∑X1,其中∑是一个对角矩阵,其每一个对角线上的元素是A*的一个特征值,矩阵X的每个行向量是与特征值相对应的特征向量;
将∑中的M个特征值按数值大小排序;
排序后的第1个特征值所对应的X的特征向量记为D1,第2个特征值所对应的X的特征向量记为D2,以此类推,排序后的第i个特征值所对应的X的特征向量记为Di,i=1,2,…,M。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建师范大学,未经福建师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410012074.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:高精度微调夹具
- 下一篇:治疗牛出血性肠炎的中药