[发明专利]一种基于系统调用的软件行为评估方法在审
| 申请号: | 201510629665.3 | 申请日: | 2015-09-28 |
| 公开(公告)号: | CN105528286A | 公开(公告)日: | 2016-04-27 |
| 发明(设计)人: | 胡昌振;薛静锋;张妍;赵小林;马锐 | 申请(专利权)人: | 北京理工大学 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 北京理工大学专利中心 11120 | 代理人: | 高燕燕;仇蕾安 |
| 地址: | 100081 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 系统 调用 软件 行为 评估 方法 | ||
技术领域
本发明属于计算机软件技术领域,具体涉及一种基于系统调用的软件行为评估方 法。
背景技术
现有的软件行为评估模型,依据其采集系统调用的方式的不同可以分为如下3类: 动态模型、静态模型和混合模型,这三种模型对应的收集系统调用的方式分别是动态,静态 以及混合。
静态建模的方法指不对程序进行执行,但是直接分析程序的二进制代码或者程序 的源代码,从分析的结果里面搜集到所需要的系统调用等信息,进而建立模型。
动态建模的方法需要大量的数据来支撑,可以对程序进行大量的正常运行,在运 行过程中对程序的系统调用进行监控和记录,从而生成模型,该模型是依赖外部输入的。
Dyck模型是第一个动态和静态相结合的模型,即混合模型,该模型是被Giffin提 出的。该异常检测系统会按照某种特定的规则对二进制代码进行重新写,这样,重写后的二 进制可以使生成的模型更加完备。然后运行重写后的可执行文件,对运行过程进行实时的 监控,检测该程序的行为,然后查看自己建立的模型,看检测得到的结果是否与模型吻合。
其中现有的一种模型为隐马尔科夫模型,通过建立隐马尔科夫模型来对软件行为 进行评估。
其中隐马尔科夫模型由5部分组成,分别为:
隐含状态S:无法直接观察得到的状态,但是这些状态之间的关系是满足马尔科夫 的性质的。
可观测状态O:可以直接观测得到的状态,这些状态是与以上提到的隐含状态相关 联的,虽然关联,但是O的个数不一定和S的个数相同。
初始矩阵π:表示在初始时刻,以上提到的隐含状态S的概率矩阵,例如,在时刻t= 1时,P(si)=pi,则此时π=[p1,p2…pi]。
隐含状态转移矩阵A:是指从一个状态转移到另一个状态的概率矩阵,例如,Aij=P (Sj|Si)就表示状态Si转移为Sj的概率。
观测状态转移矩阵B:表示在隐含状态是某条件下观测状态为某状态的概率,例 如,Bij=P(Oi|Sj),表示隐含状态Sj条件下观测状态为Oi的概率。
评估问题解决的是如果给出了某个观测序列和特定的模型参数,从而计算出该观 测序列在给出的这个模型下出现的概率,该问题是异常检测的关键问题,也就是说,异常检 测就是检测给定的观测序列,在良性执行软件后形成的马尔科夫模型中出现的概率,从而 评估这个概率的大小来确定被检测的这个观测序列是不是软件正常执行产生的。向前算法 (forward)是用来计算给定观测序列在训练形成的马尔科夫模型下出现的概率P{O|λ}的算 法。以下是P{O|λ}的算法:
定义向前变量αt(i)为:
αt(i)=P{O1O2O3…Ot,H(t)=Si|λ}
上式中,某个参数模型λ和部分观测序列O1O2O3…OT,并且t时刻的时候,状态为Si 的几率。可用递归法解得αt(i),其步骤如下:
1)将αt(i)初始化:α1(i)=ωibi(O1)
2)递归法计算:其中1≤t≤T,1≤j≤N;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510629665.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:对web页面进行测试的方法及装置
- 下一篇:一种优化加速的磁盘监控方法及系统





