一种分布式智能协同集群的分层关联模糊测试方法

文档序号:35621394发布日期:2023-10-05 17:40阅读:52来源:国知局
一种分布式智能协同集群的分层关联模糊测试方法

本发明属于信息安全,具体涉及一种分布式智能协同集群的分层关联模糊测试方法,用于解决智能集群场景中漏洞挖掘效率低的问题。


背景技术:

1、随着通信技术与人工智能技术的高速发展,智能集群产业迎来了快速发展的机遇期,随之而来的安全问题也逐渐显现出来。智能集群系统漏洞是导致集群安全问题的重要因素,安全漏洞如果被恶意利用,将会产生严重的后果。当前对智能集群软件系统进行漏洞挖掘的研究较少,而模糊测试常常用于检测软件或计算机系统的安全漏洞,因此采用模糊测试技术是比较可行的方式。

2、现有多节点模糊测试方法在智能集群场景中仍存在如下问题,模糊节点负载不均衡,导致整体模糊测试效率低;未考虑智能实体之间的协同关联性,导致生成测试用例在目标程序中通过率低。

3、传统多节点模糊测试方法采用一个中心节点的星型结构,任意节点直接的通信以及单节点模糊测试信息均需要中心模糊器的转发同步,同时中心模糊器负责对多个节点返回的种子进行变异分发,导致整体模糊测试效率受中心模糊器限制,测试效率低。

4、传统的多节点模糊测试方法没有考虑到智能集群中节点与节点之间的协同关系,导致其所生成测试用例在目标程序初始解析阶段中通过率低,产生大量无效测试用例,无法进行有效测试。

5、请参见图1,传统星型结构模糊测试框架由一个中心模糊器控制端与多个集群代理节点构成,在模糊测试过程中,由中心模糊器控制端集中评估、分发种子并收集其他节点的崩溃返回信息。整体模糊测试过程受制于工作负载过高的中心模糊器控制端。同时传统星型结构模糊测试框架未能考虑集群节点之间的协同关系,导致模糊器变异生成无效测试用例,无法穿透测试代码,测试用例通过率低。

6、在智能集群模糊测试的场景下,传统星型结构模糊测试框架虽然保证了种子在统一评估分发中评分更高的种子优先执行,但造成了中心模糊器工作负载过高,且未能考虑节点之间的协同关系,生成测试用例通过率低。

7、因此,面向智能集群的模糊测试领域需要一种可以平衡模糊器节点工作负载并考虑智能集群内部节点协同关系的模糊测试方法,用以提高整体测试效率。


技术实现思路

1、为了解决现有技术中存在的上述问题,本发明提供了一种分布式智能协同集群的分层关联模糊测试方法。本发明要解决的技术问题通过以下技术方案实现:

2、本发明提供了一种分布式智能协同集群的分层关联模糊测试方法,包括:

3、s1:根据集群中节点的通信次数获取节点之间的关联关系,并结合层次聚类方法对节点进行聚类以形成不同簇的节点群;

4、s2:根据节点的聚类结果,设置模糊器以管理不同簇的模糊节点代理,并由模糊器控制端管理模糊器,形成模糊器控制端、模糊器和模糊节点代理组成的三层模糊测试结构;

5、s3:述模糊节点代理根据由所述模糊器控制端发送的初始种子与模糊器解析确定的字段信息生成测试用例;

6、s4:所述模糊节点代理根据节点执行所述测试用例后的返回信息判定所述节点是否处于异常;

7、s5:所述模糊节点代理将产生异常的测试用例与异常状态信息进行存储并同步至模糊器和模糊器控制端;

8、s6:所述模糊器控制端根据各模糊器反馈异常状态信息的数量调整再次发送至各模糊器的种子数量;

9、s7:在所述模糊器控制端在预定时间内未收到新的异常状态信息返回时,停止模糊测试。

10、在本发明的一个实施例中,所述s1包括:

11、s1.1:为智能集群中的每个节点设置模糊节点代理,用于监控集群节点任务执行状态以及节点之间关联关系;

12、s1.2:所述节点模糊代理通过获取当前节点接收到的任务协作消息以及当前节点发送至其他节点的任务协作消息,对当前节点与其余节点的通信次数进行计算;

13、s1.3:模糊器控制端根据各节点之间的通信次数获得节点之间的关联系数并结合层次聚类方法完成节点之间的分类,以将节点分类为不同簇。

14、在本发明的一个实施例中,所述s1.3包括:

15、s1.31:计算分布式智能协同集群中两两节点之间的关联系数,并利用所述关联系数组成初始邻接矩阵,节点之间的关联系数d(i,j)表示为:

16、

17、其中,n表示所述分布式智能协同集群中节点的总数,degree(i,j)表示节点i到节点j的通信次数,degree(j,i)表示节点j到节点i的通信次数;

18、s1.32:将所有节点之间的关联系数值最大的两个节点归为一类,以完成第一轮聚类;

19、s1.33:计算各个簇之间的关联系数,并将关联系数最大的类别再次归为一类;

20、s1.34:重复步骤s1.33,继续进行聚类,直至不同簇之间的关联系数均低于最初节点之间的平均关联系数average_degree时结束聚类,获得节点的分类结果。

21、在本发明的一个实施例中,所述s3包括:

22、由模糊器控制端将初始种子发送至模糊器,模糊器对所述初始种子进行解析确定所述初始种子中能够进行有效变异的字段后发送至模糊节点代理,所述模糊节点代理根据能够有效变异的字段进行种子变异生成测试用例,并发送至当前模糊节点代理对应的节点进行测试。

23、在本发明的一个实施例中,所述模糊节点代理根据能够有效变异的字段进行种子变异生成测试用例,包括:

24、利用节点之间任务协作通信的特征,基于节点之间的通信消息进行变异生成测试用例,模糊节点代理接收模糊器发送的种子和其它节点发送的任务协作消息,通过随机性策略与确定性策略结合的方式进行种子变异以生成测试用例。

25、在本发明的一个实施例中,所述s4包括:

26、节点在接收到来自模糊节点代理的测试用例进行执行,并产生状态信息返回至所述模糊节点代理,所述模糊节点代理中的状态监控器接收节点返回的状态信息并判断节点是否异常,若未接收到返回的状态信息,所述状态监控器则向节点发送响应消息,若节点预定时间不响应,则判定当前节点处于异常状态;

27、当所述状态监控器监测到节点返回的状态信息,若判定节点是否处于异常状态,将导致本次异常状态的测试用例存入模糊节点代理的种子池,同时将产生异常状态的测试用例作为种子返回模糊器与模糊器控制端;若判定节点处于正常状态并向其他节点发送消息时,由状态监控器将当前种子转发至其他模糊节点代理,并由其他模糊节点代理将种子进行变异测试。

28、在本发明的一个实施例中,所述s5包括:

29、所述模糊节点代理将产生异常的测试用例与异常状态信息去重后保存至种子池,同时将测试用例以及对应的异常状态信息同步至管理当前所述模糊节点代理的模糊器中,所述模糊器将不同簇产生异常状态的测试用例以及对应的异常状态信息同步至模糊器控制端。

30、在本发明的一个实施例中,所述s6包括:

31、所述模糊器控制端接收由各个模糊器上传的异常状态信息及对应的测试用例,根据模糊器反馈异常状态的数量调整发送至各个模糊器的种子数量,当不同模糊器返回的异常状态信息数量不平衡时,所述模糊器控制端将减少向异常状态信息返回数量最多的模糊器的种子分发,同时增加向异常状态返回数量最少的模糊器的种子分发。

32、在本发明的一个实施例中,所述s7包括:

33、所述模糊器控制端在预定时间内未收到新的异常状态信息时,发送终止消息至各模糊器,模糊器将终止消息发送至其管理簇中的任意一个模糊节点代理,所述模糊节点代理通过网络拓扑关系停止当前簇中所有节点的模糊工作。

34、与现有技术相比,本发明的有益效果有:

35、本发明提出一种分布式智能协同集群的分层关联模糊测试方法,优化传统多节点模糊测试方法,考虑集群节点之间的协同关联性。根据智能集群中各节点的关联关系进行节点聚类,通过模糊器管理不同簇的节点群。形成模糊器控制端、模糊器、模糊节点代理的三层模糊测试结构,模糊器控制端负责整体模糊测试的开始结束,以及对不同簇之间测试流的平衡调整;模糊器负责对模糊节点代理发送种子、接收模糊节点代理返回的异常状态与对应测试用例;模糊节点代理负责变异生成测试用例,将经过变异的测试用例注入到集群节点中,将数据进行格式化处理,利用该节点的输出生成后续节点测试用例,绕过目标节点程序中的初始解析阶段,执行更深层次的程序状态,提高测试用例有效性。

36、以下将结合附图及实施例对本发明做进一步详细说明。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1