一种针对网络协议模糊测试的种子分组方法技术

技术编号:43246121 阅读:32 留言:0更新日期:2024-11-05 17:30
本发明专利技术公开了一种针对网络协议模糊测试的种子分组方法,其步骤包括:1)获取用于网络协议模糊测试的种子在网络协议中的状态转移信息、种子在网络协议中所触发的消息序列以及种子在网络协议中所覆盖的代码;2)根据状态转移信息对种子进行分组,将具有相同或相似状态转移路径的种子归为同一粗粒度种子分组中;3)针对同一粗粒度种子分组中的任意两个种子,根据种子对应的网络协议状态转移、消息序列以及所覆盖的代码计算两个种子之间的相似度;根据相似度将同一粗粒度种子分组中的种子分为若干细粒度种子分组。本发明专利技术能够更加精细化地捕捉网络协议的特性,大幅提升模糊测试的覆盖率和测试效果,为网络协议安全性检测提供强有力的技术支持。

【技术实现步骤摘要】

本专利技术属于网络协议模糊测试,涉及一种针对网络协议模糊测试的种子分组方法


技术介绍

1、模糊测试(fuzz testing)是一种自动化的测试技术,通过向软件程序输入大量的随机或伪随机数据(称为“模糊数据”),以探测软件在处理异常或意外输入时的行为。这种技术旨在揭示程序在处理非法、边界或不规范数据时的潜在缺陷或漏洞。模糊测试可以帮助发现安全漏洞、崩溃点和其他异常情况,从而提高软件的稳定性和安全性。

2、网络协议测试是针对网络协议的测试过程,旨在确保网络协议按照设计规范正确地实现其功能,并在各种操作条件下表现出预期的行为。网络协议测试通过模拟真实或预期的网络环境,使用各种测试工具和技术,如协议分析器、负载生成器和故障注入工具,帮助开发者和测试人员发现并修复协议实现中的潜在问题。

3、在模糊测试过程中,种子指用于通过变异以生成新的输入的基础输入。这些输入种子通常是有效的、格式正确的样本输入,代表了程序可以处理的正常或预期的输入形式。通过对这些输入种子进行变异(即修改或扩展),生成不同的模糊数据,可以测试程序在处理各种输入时的稳定性和本文档来自技高网...

【技术保护点】

1.一种针对网络协议模糊测试的种子分组方法,其步骤包括:

2.根据权利要求1所述的方法,其特征在于,获取所述状态转移信息的方法为:首先根据网络协议的状态机,获取网络协议的状态及其之间的转移关系,构建该网络协议的状态转移图;记录每个种子在针对该网络协议的模糊测试中的状态转移路径。

3.根据权利要求1或2所述的方法,其特征在于,利用完全匹配或部分匹配方法度量种子之间的路径相似性,将具有相同或相似状态转移路径的种子归为同一粗粒度种子分组中。

4.根据权利要求1所述的方法,其特征在于,通过插桩技术获取种子在网络协议中所覆盖的代码。

<p>5.根据权利要求...

【技术特征摘要】

1.一种针对网络协议模糊测试的种子分组方法,其步骤包括:

2.根据权利要求1所述的方法,其特征在于,获取所述状态转移信息的方法为:首先根据网络协议的状态机,获取网络协议的状态及其之间的转移关系,构建该网络协议的状态转移图;记录每个种子在针对该网络协议的模糊测试中的状态转移路径。

3.根据权利要求1或2所述的方法,其特征在于,利用完全匹配或部分匹配方法度量种子之间的路径相似性,将具有相同或相似状态转移路径的种子归为同一粗粒度种子分组中。

4.根据权利要求1所述的方法,其特征在于,通过插桩技术获取种子在网络协议中所覆盖的代码。

5.根据权利要求1所述的方法,其特征在于,根据种子对应的网络协议状态转移计算任意两个种子之间的协议状态机相似度,根据种子对应的消息序列计算任意两个种子之间的消息序列相似度,根据种子对应的所覆盖的代码计算任意两个种子之间的一般语义相似度;根据计算任意两个种子之间的协议状态机相似度、消息序列相似度、一般语义相似度加权计算得到任意两个种子之间的相似度。

6.根据权利要求5所述的方法,其特...

【专利技术属性】
技术研发人员:蔡彦卫思为李鼎程
申请(专利权)人:中国科学院软件研究所
类型:发明
国别省市:

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

1