好像很久没写文章了。忙倒不算忙,更多是一种边玩、边构思、边工作的状态。
不过确实越来越不爱公开发东西了,可能每个人的想法不同,也可能是这个时代的内容太容易被复制了吧。
最近看到太多关于AI做代码审计的文章,比如用Skills做审计,又或者用Agent做审计。相关的新闻也是铺天盖地。

这引发了不少人的恐慌,但真的有必要这么焦虑吗?
先聊聊AI做代码审计的原理
首先,我们来谈谈AI做代码审计,以及Skills和Agent的基本原理和各自的优缺点。
前两年的AI模型代码审计
为什么前两年AI模型做代码审计没现在这么火呢?
AI模型的本质
模型的本质,是利用海量数据集,按照确定的架构进行监督和强化训练,最终获得推理和解决问题的能力。
正因为如此,它受到两个主要限制:
限制1:架构选择问题
例如 Transformer 架构、CodeBERT架构等。架构选择本身就会限制对硬件资源的需求,这也是为什么有些科技公司宣称采用不同架构能使用更少资源的原因。
限制2:数据集限制问题
AI模型本质上是对已有数据集进行标注、监督和强化训练。理论上,如果数据集足够大,甚至能“开发”出整个Linux或Windows系统。
同理,数据集越大,所需的硬件资源就越多,推理成本也会无限增高。
从这两个限制可以看出,AI的发展本质上受制于数据集、确定的架构以及硬件资源。
这两年AI突破了什么?
- 硬件资源/资金的涌入:无论是英伟达的显卡,还是服务器内存的无限堆叠,都带来了突破。
- 架构的突破:厂商们不断优化架构,提高了数据传播效率,降低了成本。
- 数据集的无限累加:随着更多厂商加入,用于训练的数据集呈指数级增长,从而实现了能力突破。
这个突破打破了模型对输入文本长度(Token)的限制。那么,仅凭这个突破,AI就能实现代码审计行业的完全自动化吗?
答案可能是“可以”,也可能是“不可以”。
- “可以” 是因为对于少量代码,直接用顶级的原生AI模型(其硬件资源足、数据样本大)就可能达到不错的审计效果。
- “不可以” 则是因为一旦代码量巨大,让AI漫无目的地去审计,必然会看到什么就审什么,导致产生大量误报。钱花了,产生的价值却有限。
因此,Agent和Skills的概念火了
- 对于Agent(智能体):可以理解为给AI“大脑”装上了一双手,让它有能力调用本地工具、拆解复杂问题。它像一个总指挥,比如通过MCP协议将本地工具连接上AI。
- 对于Skills(技能):可以理解为将单一能力(如“识别SQL注入点”)按照固定流程封装好,实现单点能力的突破。
两者结合,就能让AI调用Agent来拆解复杂任务,再调用具体的Skills去执行单一分析,最后汇总结果。
当然,现在网上很多关于代码审计的文章是让AI直接调用Skills,这种方式效果如何,还得打个问号。
讲完基本概念,我们回到AI做代码审计本身,它为什么现在这么火?
现在的AI模型代码审计
要讲明白这个,首先得知道常规的代码审计流程。
对于代码审计人员来说,拿到一套代码后的大致流程如下(大同小异,取决于个人审计思路):
确定开发语言 --> 分析系统架构 --> 反编译/梳理源码 --> 分析权限鉴定情况 --> 分析可控的入口点 --> 分析可能的污染点 --> 分析逻辑是否可到达 --> 形成PoC进行漏洞验证 --> 最后报告入库
AI模型做代码审计,本质上就是在模拟这个过程。
无论是定义Skills,还是调用Agent,都是在“类化”这个流程。与常规审计相比,它只是将流程固化了,所以看起来像是AI扫描完就直接出结果。
一句话总结:用Skills和Agent是将工作流程进行了固定和限制,最后返回结果。
因此,理论上,如果你的模型足够强大,自定义的流程、Agent和Skills足够多且定义得足够好,理论上能挖掘出所有漏洞。
那么问题来了:这是否意味着AI进行代码审计就完美无缺了呢?
我个人认为,并非如此。
缺点1:AI成本与安全隐私问题
前文提到,大模型需要巨大的硬件成本。像Anthropic这样的商业AI模型,其成本之高,是个人或普通公司能轻易部署的吗?对于安全行业而言,甲方公司的核心代码真的敢上传到云端,交给各大AI模型厂商去分析吗?这个问题留给大家评判。
缺点2:特定领域及复合型安全问题
- 对于小众语言或框架开发的代码,AI审出的漏洞你敢全信吗?
- 有些安全问题真的仅由代码层面导致吗?确定代码分析完就不会出现其他非代码层面的问题了(如配置错误、业务逻辑缺陷)?这点也需要打个问号。
至于优点,在我看来,AI代码审计最大的优势在于降低了技术门槛和提升了时间效率。
最后的思考
总结来看,我认为对于安全研究人员:
AI模型对代码安全领域的影响是必然的,但也不必过于悲观。如果你依然按部就班地用传统思路做审计,那么被波及是必然的。
但是,如果你将你的代码审计经验与AI能力、以及多领域知识相结合呢?你可挖掘的漏洞范围是否会变得更大?
再往深一层想,随着AI时代的到来,那些能够从0到1为公司落地AI代码审计模型和方案的人,价值是否会凸显?以前用原生正则、AST方案难以解决的复杂逻辑漏洞,在AI的加持下,是否也有了新的解决思路?
这些都是值得思考的方向。只能说,悲观者永远正确,乐观者永远向前。路怎么走,取决于你自己。
(排版随意,大家将就看吧)
