从3小时到2周的开发实践
2026 年1月,腾讯安全云鼎实验室自研的AI漏洞挖掘智能体在Suricata中发现了两个高危漏洞,均已获得CVE编号和官方致谢。
为什么选择Suricata?作为全球部署量最大的开源网络威胁检测引擎,Suricata被广泛集成于企业级NDR、云服务商安全基础设施以及众多商业防火墙中。我们发现的两个漏洞分别是:
- CVE-2026-22258:无界分片缓冲(Unbounded Fragment Buffering),被评定为CRITICAL
- CVE-2026-22259:类Zip Bomb内存放大攻击(DNP3 Parser)
两个漏洞都属于不受控的资源消耗(CWE-400/CWE-770)。攻击者只需发送极小流量的恶意数据包,就能远程导致内存耗尽使引擎崩溃。这种威胁在腾讯内部NDR产品中得到了生产环境的验证。由于我们的及时发现,内部产品已抢在官方发布补丁前完成修复,闭环了从发现到保护的全过程。
这不是一次普通的人工审计,而是一次自动化漏洞挖掘的实践:
- 全流程自主:从代码分析到漏洞定位,从漏洞假设到PoC构造,全流程由AI Agent自主完成;
- 发现仅需3小时:Agent从启动任务到发现漏洞仅用了3小时;
- 开发仅需2周:这个具备0-Day挖掘能力的Agent初版,仅由一人在2周内开发完成。
我们认为,这展示了一个明确的发展方向:AI正在显著提升漏洞挖掘的效率,让大规模、持续性的自动化审计成为可能。
从手动引导到自主Agent
发现过程
故事始于一次AI辅助审计实践。在使用AI协助分析Suricata时,我们发现AI展现出了远超预期的专业能力——它不仅完成了攻击面分析、代码审计,最终还成功构造出了可复现的PoC。
现有方式的局限
但这种"人工引导"的方式存在明显瓶颈:
- 人力成本高:需要人持续对话引导,无法实现真正的自动化。
- 试错效率低:AI的错误需要人工不断纠正,流程不闭环。
- 路径冗长:从漏洞发现到验证复现缺乏自动化的端到端机制。
设计思路
我们意识到:AI已经具备了全流程能力,欠缺的仅仅是合理的编排。如果能设计出合适的工作流,让AI真正自主地完成从情报挖掘到PoC验证的每一个环节,就能将人从重复劳动中解放出来。这就是VulnAgent的诞生动机。
技术架构:流程编排与能力底座
技术选型:LangGraph+OpenCode SDK
漏洞挖掘是多步骤、有状态、需要动态决策的复杂流程。
- LangGraph(流程大脑):负责复杂的有状态编排。它让VulnAgent的每个节点维护自己的状态,根据执行结果动态路由,并实现审计失败重试、验证失败回溯等循环逻辑。我们的核心代码只需专注于"流程编排",而将原子能力解耦。
- OpenCode(能力底座):开源AI编程助手(对标Claude Code/Gemini CLI)。VulnAgent使用其SDK获得了开箱即用的代码理解能力、多模型支持及工具调用(代码搜索、LSP、Git操作、文件读写)。
架构优势:可扩展性设计
这种设计的精妙之处在于,VulnAgent可以随着技术发展持续进化:
- 向上:它能第一时间吃到基础模型(如GPT-5、Claude 4)迭代带来的推理能力跃迁。
- 向下:它能无缝继承OpenCode生态中不断涌现的新工具、Skills和标准的MCP协议插件。
状态管理与持久化
漏洞挖掘是长期任务,VulnAgent实现了完整的状态管理:
- 全局状态(MainState):记录项目信息、分析进度、已发现漏洞列表。
- 断点恢复(checkpoint):定期保存审计状态,支持任务中断后恢复。
工作流程:从分析到验证
VulnAgent将安全研究员的思维模式抽象为两个闭环阶段:
审计阶段:逐步深入
- 项目分析:自动化理解代码结构与核心模块。
- 威胁情报挖掘:从Git历史、CVE数据库、安全公告中学习漏洞模式。
- 攻击面分析:识别高风险入口(协议解析器、内存管理边界)。
- 静态审计:基于情报驱动生成漏洞假设,进行数据流追踪。
- 结果汇总:整理可疑点并锁定验证优先级。
验证阶段:沙箱环境测试
AI在隔离的Docker环境中循环尝试:生成PoC → 准备目标 → 执行攻击 → 分析判定。
实战结果:流程设计的重要性
本次Suricata漏洞的发现,我们使用了国产大模型GLM-4.7(bigmodel.cn)。
这验证了我们的观点:在基础模型能力已经达到一定水平的今天,流程设计比单纯的模型能力更重要。通过合理的编排逻辑和工程支撑,VulnAgent能在较短时间内发现开源项目的漏洞。这意味着VulnAgent具有进一步优化的空间——当集成能力更强大的模型时,效果将会更好。
当前限制与改进方向
必须坦诚,VulnAgent目前仍处于初具雏形的实验室原型阶段:
- 自动化验证仍需人工干预:复杂项目上的环境搭建和边界条件微调仍有挑战,某些环节仍需人工引导。
- 单线程串行设计:目前尚未实现大规模并行,距离真正的"工业化吞吐量"仍有空间。
- 结果判定的模糊性:区分环境异常与真实漏洞需要更深层的逻辑判断。
扩展可能性:集成更多安全工具
目前的VulnAgent依赖AI的代码理解能力进行审计,并借助Docker沙箱进行黑盒验证——这只是漏洞挖掘工具链的一部分。进一步的发展方向是:为Agent集成IDA、CodeQL、LLDB等专业安全工具,并设计相应的工作流将它们有效串联。
而Skills、MCP、Memory等机制只是当下的起点,未来AI Agent的能力扩展方式还会持续发展。
总结
CVE-2026-22258和CVE-2026-22259只是两个编号,但它们证明了一个清晰的信号:漏洞挖掘的工业化时代,不是即将到来,而是已经到来。
AI的意义不在于替代,而在于赋能。未来,研究员的核心价值将从"亲自下场挖洞"转向"设计更精妙的工作流、编排更高效的Agent"——让专家的直觉沉淀为可复用的流程,让经验驱动的艺术进化为工程驱动的科学。
未来已来。
参考
Suricata 8.0.3 and 7.0.14 Released - 官方安全公告