基于状态保存恢复的协议漏洞分析系统及方法与流程

专利查询15小时前  2


本发明涉及网络安全,具体地,涉及基于状态保存/恢复的协议漏洞分析系统及方法。


背景技术:

1、模糊测试是一种安全测试技术,是发现软件漏洞最有效的方法之一。模糊测试根据一定的规则自动化或半自动化地生成随机输入提供给测试程序,并监视程序的异常行为来发现软件漏洞。

2、模糊测试通常使用插桩的方法,向程序中插入反应程序执行状态的代码。对于开源的软件,模糊测试工具可以向源代码插桩并编译;对于闭源的软件,可以对二进制文件进行反汇编然后再进行插桩。

3、对于闭源协议,需要探测并构造协议转换状态,即协议状态自动机。对于无法进行固件提取的封闭系统,无法获取足够的程序信息,因此传统的模糊测试无法有效地进行测试,需利用硬件支持方法获取程序运行状态信息以指导模糊测试进行。

4、相较于2018年,罗森林等人提出的基于多种群遗传算法的二进制程序模糊测试方法(cn201810233482.3),通过模拟自然选择的过程,逐代演化改进生成的测试输入。这种方法虽然能够有效的提高程序执行路径的覆盖率,但在模拟自然选择的过程中会降低输入生成的效率;2020年,王鹏飞等人提出的一种面向二进制代码的导向型模糊测试方法(cn202010717878.2),通过将二进制代码进行反汇编得到汇编代码,再构建程序控制流图。该方法原理简单、易实现,但在模糊测试的有效性上略有欠缺;2020年,胡昌振等人提出的一种基于最小集合覆盖的模糊测试方法和装置(cn202010790762.1),利用深度神经网络为处理结构化或非结构化输入的目标二进制程序。该方法能够获得更小测试用例集以及更有效的测试用例,但这种方法不适用于对封闭式系统闭源协议的模糊测试。本发明的优势在于,采用非侵入式的程序运行信息获取与分析,实现了对封闭式系统闭源协议的模糊测试,提高了封闭系统模糊测试的有效性。而相较于,2018年,peng chen等人提出的一种高效的模糊测试工具angora(chen p,chen h.angora:efficient fuzzing by principledsearch[c]//2018ieee symposium on security and privacy(sp).ieee,2018:711-725.),该工具为了有效地解决路径约束,但在模糊测试的效率上欠佳;2018年,shuitaogan等人提出的collafl路径敏感模糊测试技术(gan s,zhang c,qin x,et al.collafl:path sensitive fuzzing[c]//2018ieee symposium on security and privacy(sp).ieee,2018:679-696.),该技术相较于afl在代码覆盖率和漏洞发现方面有所提升,但模糊测试效率仍有待提高。本发明采用状态保存/恢复的协议模糊测试方法,提高了模糊测试的效率。


技术实现思路

1、针对现有技术中的缺陷,本发明的目的是提供一种基于状态保存/恢复的协议漏洞分析系统及方法。

2、根据本发明提供的一种基于状态保存/恢复的协议漏洞分析方法,包括:

3、步骤s1:获取格式不明的协议的协议状态;

4、步骤s2:当协议状态覆盖率满足预设要求时,则根据状态信息判断协议的异常情况;

5、步骤s3:对基于状态的协议进行保存、恢复与自动分析。

6、优选地,所述步骤s1包括:

7、利用优化后的dfa对格式不明的协议进行语言描述与状态构造,获取协议状态;

8、所述优化后的dfa包括:在dfa的基础上为每个协议状态的转换添加资源消耗;当协议从一个状态转换到另一个状态时,根据预设规则消耗相应的资源;

9、协议的某些状态会触发相应的操作,将相应的操作嵌入到相应的状态节点中;当协议处于某状态时,触发状态节点中相应变量的检查和更新;

10、将dfa中的转换称为网络事务,包括数据的转发、资源的消耗以及协议在某些状态下触发的相应变量的检查和更新。

11、优选地,所述步骤s2包括:

12、步骤s2.1:编译目标程序的源代码,并通过检测源代码收集协议状态覆盖率;

13、步骤s2.2:当协议状态覆盖率满足预设要求时,利用模糊器模拟客户端与服务器之间的tcp/ip消息交换,并记录协议在处理每个测试用例时的状态信息;

14、步骤s2.3:根据状态信息判断协议的异常情况。

15、优选地,所述步骤s3包括:

16、步骤s3.1:使用快照机制保存协议在各种操作下的状态,所述快照机制包括内存映像、寄存器状态以及网络状态;

17、步骤s3.2:使用差异分析算法比较每两个快照之间的差异,从而确定导致状态转换的输入,识别潜在漏洞或不稳定行为模式;所述每两个快照之间的差异包括内存差异、寄存器差异以及网络状态差异;同时,记录每个输入的覆盖率,并根据需要进行优化。

18、优选地,所述步骤s3.1包括:使用增量快照记录技术记录修改情况。

19、优选地,所述步骤s3.1包括:基于保存的快照恢复协议状态,并验证协议是否准确地回到原先的状态。

20、优选地,所述步骤s3.2:当识别到潜在漏洞或不稳定行为模式时,则触发生成报告,所述报告包括漏洞的类型、触发条件和影响范围。

21、根据本发明提供的一种基于状态保存/恢复的协议漏洞分析系统,包括:

22、模块m1:获取格式不明的协议的协议状态;

23、模块m2:当协议状态覆盖率满足预设要求时,则根据状态信息判断协议的异常情况;

24、模块m3:对基于状态的协议进行保存、恢复与自动分析。

25、优选地,所述模块m1包括:

26、利用优化后的dfa对格式不明的协议进行语言描述与状态构造,获取协议状态;

27、所述优化后的dfa包括:在dfa的基础上为每个协议状态的转换添加资源消耗;当协议从一个状态转换到另一个状态时,根据预设规则消耗相应的资源;

28、协议的某些状态会触发相应的操作,将相应的操作嵌入到相应的状态节点中;当协议处于某状态时,触发状态节点中相应变量的检查和更新;

29、将dfa中的转换称为网络事务,包括数据的转发、资源的消耗以及协议在某些状态下触发的相应变量的检查和更新。

30、优选地,所述模块m2包括:

31、模块m2.1:编译目标程序的源代码,并通过检测源代码收集协议状态覆盖率;

32、模块m2.2:当协议状态覆盖率满足预设要求时,利用模糊器模拟客户端与服务器之间的tcp/ip消息交换,并记录协议在处理每个测试用例时的状态信息;

33、模块m2.3:根据状态信息判断协议的异常情况;

34、所述模块m3包括:

35、模块m3.1:使用快照机制保存协议在各种操作下的状态,所述快照机制包括内存映像、寄存器状态以及网络状态;

36、模块m3.2:使用差异分析算法比较每两个快照之间的差异,从而确定导致状态转换的输入,识别潜在漏洞或不稳定行为模式;所述每两个快照之间的差异包括内存差异、寄存器差异以及网络状态差异;同时,记录每个输入的覆盖率,并根据需要进行优化;

37、所述模块m3.1包括:使用增量快照记录技术记录修改情况;

38、所述模块m3.1包括:基于保存的快照恢复协议状态,并验证协议是否准确地回到原先的状态;

39、所述模块m3.2:当识别到潜在漏洞或不稳定行为模式时,则触发生成报告,所述报告包括漏洞的类型、触发条件和影响范围。

40、与现有技术相比,本发明具有如下的有益效果:

41、1、本发明专门针对现有模糊测试工具在面对封闭式系统中的闭源协议时无法进行有效测试的问题,提出了一种创新的基于状态保存和恢复的协议漏洞分析系统;该系统通过精心设计的协议状态机的构建,结合动态调试方法获取程序运行时的关键信息,实现了对闭源协议的深入分析和测试。此外,本发明还采用了先进的模糊测试技术,通过模拟各种网络请求和系统状态,有效地探索和识别新的协议状态,从而提高了对闭源协议模糊测试的准确性和效率;

42、2、本发明相较于现有模糊测试工具的主要优势在于其能够对封闭式系统中的闭源协议进行有效测试。通过构建协议状态机和采用黑盒测试方法,本发明能够模拟和探测协议状态,进而利用状态保存和恢复技术,自动识别和分析潜在的漏洞。这种方法提高了测试的准确性,并且不依赖于对协议内部实现的了解,使得测试过程更加高效和全面。

43、3、本发明的原理是通过构建协议状态机,模拟和分析协议在不同状态下的行为。利用黑盒测试技术,本发明能够在不直接访问源代码的情况下,通过网络层面的交互来探测协议未知状态,并记录其对各种输入的响应。此外,通过状态保存和恢复机制,本发明能够重现特定测试场景,进行深入的差异分析,从而识别新的状态转换和潜在的安全漏洞。这种方法提高了模糊测试的效率和准确性,为发现和修复协议中的安全问题提供了一种有效的技术手段。


技术特征:

1.一种基于状态保存/恢复的协议漏洞分析方法,其特征在于,包括:

2.根据权利要求1所述的基于状态保存/恢复的协议漏洞分析方法,其特征在于,所述步骤s1包括:

3.根据权利要求1所述的基于状态保存/恢复的协议漏洞分析方法,其特征在于,所述步骤s2包括:

4.根据权利要求1所述的基于状态保存/恢复的协议漏洞分析方法,其特征在于,所述步骤s3包括:

5.根据权利要求4所述的基于状态保存/恢复的协议漏洞分析方法,其特征在于,所述步骤s3.1包括:使用增量快照记录技术记录修改情况。

6.根据权利要求4所述的基于状态保存/恢复的协议漏洞分析方法,其特征在于,所述步骤s3.1包括:基于保存的快照恢复协议状态,并验证协议是否准确地回到原先的状态。

7.根据权利要求4所述的基于状态保存/恢复的协议漏洞分析方法,其特征在于,所述步骤s3.2:当识别到潜在漏洞或不稳定行为模式时,则触发生成报告,所述报告包括漏洞的类型、触发条件和影响范围。

8.一种基于状态保存/恢复的协议漏洞分析系统,其特征在于,包括:

9.根据权利要求8所述的基于状态保存/恢复的协议漏洞分析系统,其特征在于,所述模块m1包括:

10.根据权利要求8所述的基于状态保存/恢复的协议漏洞分析系统,其特征在于,所述模块m2包括:


技术总结
本发明提供了一种基于状态保存/恢复的协议漏洞分析方法及系统,包括:步骤S1:获取格式不明的协议的协议状态;步骤S2:当协议状态覆盖率满足预设要求时,则根据状态信息判断协议的异常情况;步骤S3:对基于状态的协议进行保存、恢复与自动分析。本发明提高了模糊测试的效率和准确性,为发现和修复协议中的安全问题提供了一种有效的技术手段。

技术研发人员:曹岸杰,郭禹辰,卢昕,王跃霖,汪伊婕,陈平,王瀚霆,狄慧
受保护的技术使用者:上海卫星工程研究所
技术研发日:
技术公布日:2024/12/5

最新回复(0)