[发明专利]一种有状态协议的规则化状态机模型设计方法在审
申请号: | 201410333944.0 | 申请日: | 2014-07-14 |
公开(公告)号: | CN104142888A | 公开(公告)日: | 2014-11-12 |
发明(设计)人: | 胡昌振;马锐;韩雪;单纯;王勇 | 申请(专利权)人: | 北京理工大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京理工大学专利中心 11120 | 代理人: | 仇蕾安 |
地址: | 100081 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 状态 协议 规则化 状态机 模型 设计 方法 | ||
技术领域
本发明涉及一种有状态协议的规则化状态机模型设计方法,属于安全漏洞检测技术领域。
背景技术
由于网络协议的安全设计与实现,不仅关系着人们的隐私和财产安全,更关系着国家的利益。网络协议漏洞已成为信息安全领域的一个研究热点。对于网络协议的漏洞挖掘技术目前有:模糊测试技术,手工测试,二进制比对,静态分析,动态分析。其中,应用最广,研究最多的是模糊测试技术。
模糊测试是目前进行安全测试和漏洞挖掘的最有效的方法。目前公布的安全漏洞中有许多都是使用模糊测试技术检测发现的,并且有许多模糊测试工具可以用于测试应用程序的安全性。与其它技术相比,模糊测试技术具有思想简单,容易理解、从发现漏洞到漏洞重现容易、不存在误报的优点。
现有的网络漏洞挖掘技术中,模糊测试已经成为网络协议检测的主要方法,但对于有复杂交互过程状态的网络协议,绝大多数网络协议模糊测试数据不能对目标应用的深层协议状态进行有效的覆盖,严重影响测试效率和测试用例的覆盖率。模糊测试数据的生成通常采用的是随机生成的方法。即在程序的输入域上随机生成测试用例,这种方式导致测试用例的生成过程变为在一个过大的空间上随机搜索过程,由于空间过大,和随机数据的统计分布特性,导致大量的测试数据冗余。
安全漏洞:指软件设计实现过程中被引入的、在数据访问或行为逻辑等方面的缺陷,它可能被攻击者利用从而使程序行为违背一定的安全策略。
网络协议:网络上所有设备(例如:网络服务器、交换机、路由器等)之间通信规则的集合,规定了通信时信息所必须采用的格式和这些格式的意义。
有限状态机:表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。
传统模糊测试虽然是最有效的并且是善于发现最高级别的危险漏洞的,在漏洞检测领域被广泛的应用,但其也存在着测试数据量大,效率低等问题。
发明内容
本发明主要是针对有状态网络协议,对传统模糊测试进行了改进,使其生成的测试用例不是杂乱无章的,而是有针对性,覆盖面广并且高效的。
为了解决上述技术问题,本发明采用如下技术方案:
一种有状态协议的规则化状态机模型设计方法,包括以下步骤:
步骤一、获取待测试网络协议的协议规范,通过对协议的格式解析得到协议规则和初步的协议状态机模型;
步骤二、通过初步的协议状态机模型和状态规则信息,生成简化状态空间的规则化状态机模型;
步骤三、通过协议规则和规则化状态机模型生成结合状态和规则的状态生成树,通过状态生成树简化状态和消息之间的关系,排除无意义的组合;
步骤四、生成初始测试用例,其中一条测试用例是状态轨迹和消息的组合,测试时不是仅仅针对协议的一个状态进行测试,而是针对协议的一系列状态轨迹进行测试,生成的测试数据除了每一状态对应的消息外,还包括状态轨迹;构造测试数据即将每一状态的消息与测试状态轨迹结合起来;
步骤五、对初始测试用例进行有规则的变异,得到最终的测试用例集。
与现有技术相比,本发明具有以下有益效果:
本发明结合传统模糊测试的思想和有状态网络协议的特性,提出规则化状态机模型,用以保存目标协议的状态信息和状态轨迹信息。结合规则化状态机模型和传统模糊测试技术,提出基于规则化状态机模型的模糊测试框架,通过规则化状态机到测试用例的一一映射,生成用于测试的测试数据,已完成针对有状态网络高覆盖率,小规模测试数据,高效的测试,发现协议漏洞。
附图说明
图1为本发明有状态协议的规则化状态机模型设计方法框图;
图2为原状态空间示意图;
图3为去掉安全路径的状态空间示意图;
图4为状态规则树结构示意图;
图5为状态规则树生成方式示意图;
图6为运算后的状态机示意图;
图7为一条测试用例数据模型示意图;
图8为测试用例生成示例示意图。
具体实施方式
下面将结合附图及具体实施方式对本发明做进一步的描述。
1.规则化状态机模型
网络协议的形式化描述模型在网络协议模糊测试中占据着重要的地位。形式化描述模型就是将网络协议根据其协议规范书(如RFC文档等)的文字描述,以一种更加容易理解,更加方便分析其特性的方式表述出来的一种数据模型,方便网络协议的测试。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410333944.0/2.html,转载请声明来源钻瓜专利网。