一种用于协议模糊测试过程中的协议适配方法组成比例

技术编号:37064318 阅读:14 留言:0更新日期:2023-03-29 19:42
本发明专利技术公开了一种用于协议模糊测试过程中的协议适配方法,具体包括以下步骤:步骤一、对每种协议进行调研,探究每种协议的通信方式;步骤二、根据通信方式对每种协议进行分类;步骤三、针对每种通信方式类别进行对应通信模块的开发;步骤四、采用模糊测试系统生成畸形数据;步骤五、定义选择器,由选择器选择该协议对应的通信模块。本发明专利技术与现有技术相比的优点在于:本申请仅需要对不同协议的通信方式进行归类,按不同的通信方式类别进行通信模块的开发,让整个系统可以自行适配新型协议。并且对于具有隐私性和保密性的私有协议,仅需要进行通信方式的适配,不会涉及到具体的协议本身涉密部分。密部分。密部分。

【技术实现步骤摘要】
一种用于协议模糊测试过程中的协议适配方法


[0001]本专利技术涉及模糊测试
,具体是指一种用于协议模糊测试过程中的协议适配方法。

技术介绍

[0002]模糊测试(Fuzz Testing)是一种自动化的软件测试技术,最初由威斯康辛大学的巴顿
·
米勒于1989年提出的,通常用于识别程序中或代码中的潜在漏洞。
[0003]模糊测试的核心是自动或半自动的生成随机数据输入到应用程序中,同时监控程序的异常情况,如崩溃、代码断言失败,以此发现可能的程序错误,如内存泄漏。
[0004]模糊化是指自动生成和执行测试,随机数据的类型包括:超长字符串;随机数如负数,浮点数,超大数、特殊字符如~!@#$%等包含特殊含义的字符,作为输入可能会引发报错,以及其他类型的输入。
[0005]目前模糊测试应用广泛,如通信、计算机软件、工控设备等诸多领域。
[0006]然而,目前针对协议的模糊测试却较为少见。由于目前协议的种类繁多,除公开的标准协议外,各种定制化的私有协议层出不穷。要实现针对协议的自动化模糊测试系统,则需要对种类繁多的协议进行适配。
[0007]在原有的方案中(如附图1所示),在畸形数据生成后,选择器需要选择与被测协议一一对应的通信模块,所以需要针对每一种协议都进行通信模块的开发,工作量巨大,耗时费力。如果是具有隐私性和保密性的私有协议,则需要获取协议的大量信息才能进行通信模块的开发,违背其基本性质。

技术实现思路

[0008]本专利技术要解决的技术问题是克服以上的技术缺陷,提供一种用于协议模糊测试过程中的协议适配方法,来解决模糊测试系统需要适配大量不同协议的问题。
[0009]为解决上述技术问题,本专利技术提供的技术方案为:
[0010]一种用于协议模糊测试过程中的协议适配方法,具体包括以下步骤:
[0011]步骤一、对每种协议进行调研,探究每种协议的通信方式;
[0012]步骤二、根据通信方式对每种协议进行分类;
[0013]步骤三、针对每种通信方式类别进行对应通信模块的开发;
[0014]步骤四、采用模糊测试系统生成畸形数据;
[0015]步骤五、定义选择器,由选择器选择该协议对应的通信模块。
[0016]进一步地,所述步骤四中的模糊测试系统包括种子分发模块、变异模块、通信模块、管理节点以及测试节点;
[0017]所述种子分发模块用于在测试节点分发随机种子;
[0018]所述变异模块用于生成畸形数据,且数据的生成规则能够进行指定;
[0019]所述通信模块用于将数据发送给目标程序;
[0020]所述管理节点用于负责管理若干个测试节点。
[0021]本专利技术与现有技术相比的优点在于:本申请仅需要对不同协议的通信方式进行归类,按不同的通信方式类别进行通信模块的开发,让整个系统可以自行适配新型协议。并且对于具有隐私性和保密性的私有协议,仅需要进行通信方式的适配,不会涉及到具体的协议本身涉密部分。而且本方法可以极大的减少开发人员的工作量,显著提升工作效率。
附图说明
[0022]图1是现有技术中的协议适配方法。
[0023]图2是本申请用于协议模糊测试过程中的协议适配方法的原理图。
具体实施方式
[0024]下面结合附图对本专利技术做进一步的详细说明。
[0025]下面结合附图来进一步说明本专利技术的具体实施方式。其中相同的零部件用相同的附图标记表示。
[0026]需要说明的是,下面描述中使用的词语“前”、“后”、“左”、“右”、“上”和“下”指的是附图中的方向,词语“内”和“外”分别指的是朝向或远离特定部件几何中心的方向。
[0027]为了使本专利技术的内容更容易被清楚地理解,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述。
[0028]结合附图,一种用于协议模糊测试过程中的协议适配方法,具体包括以下步骤:
[0029]步骤一、对每种协议进行调研,探究每种协议的通信方式;
[0030]步骤二、根据通信方式对每种协议进行分类;
[0031]步骤三、针对每种通信方式类别进行对应通信模块的开发;
[0032]步骤四、采用模糊测试系统生成畸形数据;
[0033]步骤五、定义选择器,由选择器选择该协议对应的通信模块。
[0034]在一个实施例中,所述步骤四中的模糊测试系统包括种子分发模块、变异模块、通信模块、管理节点以及测试节点;
[0035]种子分发模块用于在测试节点分发随机种子;
[0036]变异模块用于生成畸形数据,且数据的生成规则能够进行指定;
[0037]通信模块用于将数据发送给目标程序;
[0038]管理节点用于负责管理若干个测试节点。
[0039]工作原理:本申请仅需要对不同协议的通信方式进行归类,按不同的通信方式类别进行通信模块的开发,让整个系统可以自行适配新型协议。并且对于具有隐私性和保密性的私有协议,仅需要进行通信方式的适配,不会涉及到具体的协议本身涉密部分。
[0040]以上对本专利技术及其实施方式进行了描述,这种描述没有限制性,附图中所示的也只是本专利技术的实施方式之一,实际的结构并不局限于此。总而言之如果本领域的普通技术人员受其启示,在不脱离本专利技术创造宗旨的情况下,不经创造性的设计出与该技术方案相似的结构方式及实施例,均应属于本专利技术的保护范围。
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于协议模糊测试过程中的协议适配方法,其特征在于,具体包括以下步骤:步骤一、对每种协议进行调研,探究每种协议的通信方式;步骤二、根据通信方式对每种协议进行分类;步骤三、针对每种通信方式类别进行对应通信模块的开发;步骤四、采用模糊测试系统生成畸形数据;步骤五、定义选择器,由选择器选择该协议对应的通信模块。2.根据权利要求...

【专利技术属性】
技术研发人员:周鹏沈凯文李政博崔卓李唯
申请(专利权)人:北京云起无垠科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1