从规则扫描到认知螺旋,AI 代码审计的范式转移
原创
AI基础设施构建者
AI基础设施构建者
云起无垠
2026年11月4日 19:05
北京
去阅读
代码审计的真正难点,并非识别危险函数、追踪可疑数据流,而是吃透软件业务逻辑、系统架构与信任边界。面对陌生项目,资深审计人员会先梳理文档、模块与程序入口,建立整体认知,再研判可控输入、可执行操作与防护有效性。随着大模型与智能体技术成熟,这套以项目理解为先的审计思路得以转化为可落地的工程流程,AI 代码审计的重心,也从识别已知风险模式,转向先构建项目认知,再验证漏洞实际影响。
传统静态分析依托规则、语法及控制流、数据流分析,擅长批量挖掘缺陷,但受规则覆盖、框架适配、业务语义理解的约束,难以处理业务逻辑、复杂权限校验以及跨模块的组合类安全问题。大模型补齐了语义理解能力,但仅传入零散代码片段,仍会面临上下文缺失、代码体量过大、证据匮乏等短板,难点在于长周期任务下持续沉淀项目知识、有序组织分析、严谨校验漏洞。
云起无垠 VulnHunter 便是该思路的工程化实践,它并非传统 SAST 工具,而是基于自研 Agent Harness 框架的 AI 安全数字员工,可通过对话窗口一站式完成源码审计、漏洞挖掘、PoC/EXP 生成及修复建议输出的全流程。
01 以项目认知驱动漏洞发现
代码审计要把局部代码放回完整系统里看。一次文件读取算不算漏洞,光看调用函数判断不了,得确认路径参数从哪里来、调用者有什么权限、能访问到什么范围、这个接口外部能不能触达。漏洞发现建立在对项目结构和业务约束的理解之上,路径大致是:梳理结构、识别信任边界、定位关键链路、提出假设,再用证据确认或排除。
VulnHunter 走的是同一条路。它在自研 Agent Harness 框架里实现了一种认知螺旋机制,把项目理解、风险分析和验证放进同一个持续迭代的流程,让模型依据已有发现调整方向:每一轮都在既有认知上进行,新的证据和验证结果再反过来加深对项目的理解。
认知螺旋由 decide 驱动,是一轮接一轮的调度。调度器看着当前认知、待验证的问题和已有证据,每轮只定一个方向,建画像、建认知、找假设、双向论证、动态复现、影响评估、组合攻击链或者结果汇总——派发出去,做完回到调度器再定下一轮。初期重点是把项目画像和初始知识库立起来,包括技术栈、代码规模、模块划分、入口、外部接口和关键依赖;随分析推进,重心转向业务链路梳理、信任边界识别、假设生成与验证。这个过程不是单向的:新证据可能支持原有判断,也可能推翻假设,逼着系统回头重看相关链路。为了让分析能连续做下去,各阶段产物会结构化保存、按需取用项目画像、审计链路、风险假设、验证结果和项目知识库,上下文窗口装不下的内容沉淀在这里,重复分析也就少了。
02 从孤立发现到可追溯的证据链
企业用 AI 代码审计工具,除了看发现多少漏洞,更在意每条结论有没有依据。VulnHunter 让认知、假设和结论沿同一条编号链走下去:认知切面 COG、审计链路 ADV、风险假设 HYP、漏洞 BUG 逐级派生,形成从项目认知到审计链路、风险假设、漏洞发现,再到验证证据的可追溯关系。翻到任意一条发现,都能回溯到它由哪轮审计建立的哪块权限认知、落在哪个接口的调用链路上、判断依赖什么证据。风险假设还要过双向检查:从攻击者一侧看成立条件,比如输入是否可控、危险操作是否可达;从防御者一侧找让它不成立的因素,比如上游鉴权、参数约束、部署限制或者走不到的分支。来回夹一遍,误判会少很多,人工复核也有据可查。
03 从静态候选到实际风险的验证闭环
静态分析标出来的可疑行为,未必能在目标环境里真的打成一个有效攻击。要分清三件事:代码层面有没有缺陷、缺陷能不能被触发、触发之后会造成什么业务影响。VulnHunter 把验证拆成三个前后衔接的环节,分别回答这三个问题。
(1)动态复现
VulnHunter将PoC构造能力直接融入漏洞审计流程。系统会围绕漏洞点对应的代码路径、参数流转关系、调用上下文、依赖条件以及目标语言和框架特征,逐步分析漏洞成立所需的前置条件、输入约束与触发路径,并结合具体项目环境动态生成能够实际运行的PoC。
(2)影响评估
VulnHunter 将 PoC 置于受控隔离环境执行,还原漏洞触发所需依赖、配置与运行场景,采集运行日志、响应回显等动态证据,结合代码上下文综合研判漏洞路径是否可达。针对存疑结论,通过多轮交叉复核降低误判,过滤因权限、配置、依赖限制导致无法实际触发的静态告警,减少无效风险输出。
完成 PoC 真实性验证后,系统开展 EXP 层面可利用性研判,基于目标环境、权限关系构造验证方案,在隔离环境下评估漏洞是否会引发权限突破、敏感数据泄露、代码执行等后果,明确业务环境下的影响边界。所有研判信息统一结构化沉淀,构建从发现、验证到影响评估的完整证据链,输出可利用性结论,支撑企业风险定级与修复处置。
(3)组合验证
有些风险要几个缺陷凑在一起才成一条完整的攻击路径。当多个已确认漏洞落在同一组件、同一身份体系、同一数据流或同一攻击面上,组合构建就以单漏洞刻画出的攻击原语为起点,看前一个缺陷能不能满足后一个缺陷的利用条件,朝破坏力最大的方向去探索。组合分析同样要划清证据边界:哪些环节已经验证过,哪些还停在假设上,整条链有没有在受控环境里完整跑通。跑通的和没跑通的都会沉淀下来,下一个项目可以接着用。
04 将审计方法转化为可复用的工程能力
认知驱动的代码审计,一半靠模型能力,一半靠支撑模型的任务组织方式。项目画像、知识维护、威胁建模、情报检索、风险假设、双向论证、动态验证、报告生成,每一样都能拆成职责明确的能力组件,各自规定输入、输出和证据要求。VulnHunter 把这些方法论沉淀成一组 Skill,和流程定义分开:改方法论不用动调度逻辑,换项目也不用重写流程。
拆开来看,好处有三个。不同项目走的是同一套流程,过程一致性有保证;误报漏报的反馈能定位到具体某一环去改,不必牵动全局;有效的方法和项目知识会沉淀下来,换个项目接着用。所以 VulnHunter 的价值不全在大模型上,而在把项目理解、任务调度、工具执行和证据管理连成一条线,让审计经验能反复执行、持续迭代。
05 面向未来的演进方向
规则匹配、静态分析与认知驱动的方法各有适用范围。规则和程序分析高效、稳定,适合做基础检测;大模型和智能体擅长理解业务语义、分析复杂链路、编排验证过程。这两类能力不是替代关系,把它们组织成一条完整的工作流,审计才有实际效果:以项目理解确定重点,以工具获取证据,以动态验证检验假设,以业务影响决定处置优先级。从规则扫描到认知螺旋,变化的核心是审计系统开始围绕项目持续建立认知,并让每一项风险判断接受证据检验。对安全团队来说,结果是审计结论更容易复核、风险更容易判断、修复建议更有针对性,用得越久,可复用的安全知识积累得越多。
VulnHunter 企业版提供线上试用账号,免费领取;开源社区版已同步上线 GitHub,欢迎体验和共建。
- 线上SaaS试用版
VulnHunter企业版线上环境试用账号免费领取
- 开源社区版:
GitHub地址:
https://github.com/Clouditera/VulnHunter
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论