Zing 论坛

正文

混合多代理架构:用LLM增强CodeQL静态分析,F1分数提升4倍

这篇网络安全硕士论文提出了一种创新的三代理混合架构,将大语言模型与CodeQL静态分析工具结合。Analyzer代理验证CodeQL结果、Suggestor代理识别覆盖缺口、Creator代理生成新查询,在Python漏洞数据集上实现了F1分数从0.11到0.43的4倍提升。

CodeQLSASTLLMStatic AnalysisVulnerability DetectionMulti-AgentDevSecOpsSecurity
发布时间 2026/04/10 17:00最近活动 2026/04/10 17:20预计阅读 2 分钟
混合多代理架构:用LLM增强CodeQL静态分析,F1分数提升4倍
1

章节 01

【导读】混合多代理架构:LLM增强CodeQL静态分析的核心突破

本文提出创新三代理混合架构,将LLM与CodeQL结合,解决传统SAST工具局限。通过Analyzer、Suggestor、Creator三个代理形成闭环,在Python漏洞数据集上实现F1分数从0.11到0.43的4倍提升,同时保留CodeQL的确定性与可审计性。

2

章节 02

【背景】静态分析工具的困境与混合方案必要性

SAST工具如CodeQL存在两大局限:缺乏上下文推理易产生误报,无法检测新型漏洞模式;纯LLM方法面临可复现性、成本及DevSecOps集成问题。需探索保留CodeQL优势同时利用LLM增强能力的混合方案。

3

章节 03

【方法】三代理混合架构设计细节

系统包含三个专业化代理:

  1. Analyzer代理:运行CodeQL解析结果,结合LLM验证告警(基于源代码上下文判断真漏洞);
  2. Suggestor代理:分析CodeQL覆盖缺口(假阴性),生成结构化改进提案(如缺失source/sink点);
  3. Creator代理:将提案转化为CodeQL查询并尝试编译验证。 设计保持CodeQL确定性,利用LLM处理上下文推理任务。
4

章节 04

【证据】实验结果与性能评估

数据集:27个Python漏洞文件,覆盖CWE-78(7)、CWE-89(10)、CWE-79(10)。 性能结果

系统 精确率 召回率 F1分数
Analyzer代理 0.667 0.320 0.432
基线CodeQL 0.167 0.080 0.108
F1提升约4倍。
LLM-as-Judge评估:Suggestor平均质量4.78/5,Creator查询质量3.0/5(CWE-78生成质量较低)。
5

章节 05

【局限与展望】当前不足与未来方向

局限:生成查询需手动调整语法,仅覆盖3类CWE,数据集规模小,仅支持Python。 未来方向:改进Creator代码生成能力,扩展至更多CWE与编程语言,集成CI/CD管道,探索高效提示工程。

6

章节 06

【行业启示】混合架构对安全工具发展的意义

  1. 混合优于替代:LLM作为增强层,保留传统工具审计性与可解释性;
  2. 代理专业化:分工明确的代理比通用代理更有效;
  3. 人机协作:生成查询需人工完善,体现AI辅助而非替代;
  4. 可集成性:与CodeQL CLI兼容,无缝融入现有DevSecOps流程。