1.一种基于大语言模型多智能体协作的自动渗透测试方法,其特征在于,所述基于大语言模型多智能体协作的自动渗透测试方法,包括:采用大语言模型将用户输入的渗透测试目标或任务描述解析为基本任务链,所述基本任务链中包含有序排列的多个基本任务;
按序取基本任务链中的一个基本任务作为当前任务,利用大语言模型生成对应当前任务的初步基本操作;
构建外部经验知识库和负面经验库,并基于检索增强生成技术优化所述初步基本操作,并执行优化后的基本操作;
基于优化后的基本操作的执行结果生成渗透简报,并在执行结果为失败时生成负面经验存入负面经验库;
根据基本任务链和渗透简报,利用大语言模型调整基本任务链中未执行的基本任务,并基于调整后的基本任务链继续进行自动渗透测试操作。
2.根据权利要求1所述的基于大语言模型多智能体协作的自动渗透测试方法,其特征在于,所述外部经验知识库为多层经验库,每层经验库对应存储一个渗透测试阶段的外部经验知识。
3.根据权利要求1所述的基于大语言模型多智能体协作的自动渗透测试方法,其特征在于,所述外部经验知识库的构建过程如下:获取渗透测试内部报告转换为向量数据,并将向量数据存储至向量数据库;
获取网络分享信息,去除网络分享信息中的HTML标签并提取正文信息,将正文信息分割为文本块,将文本块转换为向量数据,并将向量数据存储至向量数据库。
4.根据权利要求1所述的基于大语言模型多智能体协作的自动渗透测试方法,其特征在于,所述基于检索增强生成技术优化所述初步基本操作,包括:利用负面经验库过滤初步基本操作,若初步基本操作被过滤,则将初步基本操作以及过滤该初步基本操作的负面经验,反馈至用于生成初步基本操作的大语言模型,并返回使用大语言模型重新生成初步基本操作;
否则根据初步基本操作所处的渗透测试阶段,在外部经验知识库中检索最相关的多条外部经验,基于初步基本操作以及最相关的多条外部经验,利用大语言模型生成优化后的基本操作。
5.根据权利要求4所述的基于大语言模型多智能体协作的自动渗透测试方法,其特征在于,所述利用负面经验库过滤初步基本操作,包括:基于余弦相似度检索负面经验库中与初步基本操作最相似的多条负面经验;
将检索到的多条负面经验以及初步基本操作,结合提示词模版输入大语言模型,由大语言模型输出初步基本操作是否被过滤的结论,并在结论为被过滤时一同输出过滤该初步基本操作的负面经验。
6.根据权利要求1所述的基于大语言模型多智能体协作的自动渗透测试方法,其特征在于,执行优化后的基本操作时,基于MCP架构实现工具动态调用,首先将渗透测试工具封装为具有结构化描述的工具智能体;其次当得到优化后的基本操作时,通过将基本操作与工具智能体的结构化描述拼接为提示词模版,使用大语言模型选择最适配的渗透测试工具,解析优化后的基本操作中的关键参数注入所选择的渗透测试工具的参数模板,生成安全Shell命令并执行。
7.根据权利要求1所述的基于大语言模型多智能体协作的自动渗透测试方法,其特征在于,所述渗透简报的内容包括优化后的基本操作、执行优化后的基本操作的渗透测试工具的响应、被测对象的环境状态和成功标志;
所述负面经验为三元组形式,三元组中包含优化后的基本操作、执行优化后的基本操作的渗透测试工具的响应和被测对象的环境状态。
8.根据权利要求7所述的基于大语言模型多智能体协作的自动渗透测试方法,其特征在于,在调整基本任务链时,大语言模型遵循的调整规则为:若渗透简报中的成功标志为失败,或被测对象的环境状态与预期偏差大于阈值,则生成新的基本任务链;否则维持原来的基本任务链。
9.一种基于大语言模型多智能体协作的自动渗透测试装置,其特征在于,所述基于大语言模型多智能体协作的自动渗透测试装置,包括:任务生成模块,用于采用大语言模型将用户输入的渗透测试目标或任务描述解析为基本任务链,所述基本任务链中包含有序排列的多个基本任务;
任务执行模块,用于按序取基本任务链中的一个基本任务作为当前任务,利用大语言模型生成对应当前任务的初步基本操作;还用于执行优化后的基本操作;
多层次经验融合模块,用于构建外部经验知识库和负面经验库,并基于检索增强生成技术优化所述初步基本操作,生成优化后的基本操作;
渗透简报生成模块,用于基于优化后的基本操作的执行结果生成渗透简报,并在执行结果为失败时生成负面经验存入负面经验库;
任务调整模块,用于根据基本任务链和渗透简报,利用大语言模型调整基本任务链中未执行的基本任务,并基于调整后的基本任务链继续进行自动渗透测试操作。