Published on

The Great Wave, and the End of a Craft

Authors
  • Name
    c4a4d65b
    Twitter

这一小块木头,经过全新的方式推动之后,促成了一系列的创新,这些发明缓慢但永久地改变了棉纺织业。 -- 斯文·贝克特《棉花帝国:一部资本主义全球史》

The Great Wave, and the End of a Craft

0. 写在前面

这不是一套新的 AI 审计方法论。它不打算告诉别人怎么写更好的 prompt,也无意提出一个更强的 audit agent 架构,更没有声称找到了 AI 审计失败的根因。

我是一个长期从事漏洞研究的普通研究员。在把 AI 当作审计工具使用的将近一年里,我被一些奇怪的失败现象反复困扰,也被它们吸引。我逐渐意识到,这些现象背后可能不是简单的工具问题,而是语言、语义、认知与推理层面的问题——而我对漏洞研究本身的理解,也因此被悄悄改变了。

我无意、也没有资格宣布 AI 已经终结了漏洞研究。这只是我与自己人生某个阶段的一次告别。


1. 当 AI 遇到 漏洞研究

最开始使用 AI 时,我并没有抱多高的期待。我的目标很朴素:搞清楚 AI 在安全研究领域的能力边界——它能做什么,不能做什么——然后据此重新调整我的工作流程,把可以交给 AI 的部分交出去,把必须由我亲自完成的部分留下。

陆陆续续地,我发现了 AI 的一些奇怪行为。下面这几条,是我挑出来的、即便不做安全研究也能理解的例子:

  1. AI 会误报:它很难判断一个 finding 是真实漏洞,还是只在局部成立的业务逻辑。
  2. AI 不会深挖:它总是找一个能交差的 finding,而不是一个真正有价值的 finding。
  3. AI 没有主见:它无法坚持自己的结论,在被反复追问时会不断推翻自己。

这不光是使用 AI 做漏洞研究会遇到的问题,而是使用 AI 做任何事情都会遇到的问题。并且很多人会就此得到结论:"AI 无法替代人类,因为他无法使用 AI 稳定地完成他自己的工作。"然后关上自己的大脑,像把头埋进沙里的鸵鸟一样,假装 AI 带来的变化并不存在,继续躲在自以为坚固的护城河里,嘴里不停地念叨着:"AI 无法替代人类,AI 根本不能完成我需要的工作。"

这套逻辑本身极其荒诞,我们不妨拆解一下:

  1. AI 无法稳定地完成用户的工作,究竟是 AI 的能力有限,还是用户对 AI 的认知有限?AI 真正带来的好处,从来不是一键式地替用户完成任务,而是重新定义工作流程,让用户得以更专注于创造性工作,而非重复性劳动。
  2. AI 的能力与 AI 的工程化能力,是两个完全不同的概念。难道在铁器时代,青铜刀剑就不再具备战斗力了吗?

当然,在最新的模型中,配合更好的 harness 和更复杂的 prompt,这些问题大多可以被缓解。但这不是我想讨论的内容。

真正让我困惑、甚至感到一丝恐惧的,是另外两个更深的问题:

  1. AI 为什么会有这样的行为?
  2. AI 终结传统漏洞研究了么?

我想倒着回答这两个问题——就当作是与栈(Stack)这位老伙计的一次正式告别。


2. 我为什么从事漏洞研究

回到最初的起点。漏洞研究在我看来是一件充满挑战的事——我想凭自己的努力,发现别人没发现的问题,解决别人没解决的问题。它最吸引我的地方,是那种从 0 到 1 的快感。

而我整个研究生涯里最大的困惑之一,其实是个挺奇葩的问题——为什么有些简单的 bug,居然能活到产品发布?

实际上这些问题并不都源自复杂的机制——很多时候,只是几处简单的错误,躲在复杂机制的阴影里。而意识到这一点的,并不只有研究员。

以 iOS / macOS 的安全为例,苹果之所以投入这么多资源去做 PAC、SPTM/TXM 这类 mitigation,本质上正是承认了一件事:再严格的内部审查,也无法把简单错误完全消除——那就用机制把它们的可利用性抬高,把利用成本推到一个攻击者负担不起的位置。

落到研究员这一侧,这套防御哲学意味着:漏洞依然存在,但已经不能被简单利用了。漏洞研究再也不是"发现一个漏洞就万事大吉",你还得在重重 mitigation 中寻找程序员实现 mitigation 时留下的缝隙——这本质上已经变成一场成本对抗的游戏。

而这只是苹果这种愿意投入的厂商。绝大多数开源、闭源项目并没有这样的资源去构筑层层防御——它们的简单漏洞,甚至连这种成本对抗的舞台都没搭起来。

AI 的到来,同时打破了这两边的平衡。当 AI 的工程化能力稳定到足以发现 mitigation 缝隙、又能扫遍那些没有防御纵深的项目时,漏洞研究将变得前所未有地简单。

在我看来,今天的漏洞,已经不再是五年前的漏洞,甚至也不是十二个月前的漏洞。在某一次大语言模型更新之后,它只不过是把代码丢给 AI 之后的一次冒烟测试输出。

当然,这些漏洞仍然会带来安全问题,仍然需要厂商认真面对、保护用户。但对一个安全研究员来说——还值得我继续投入时间去寻找它们吗?还值得为 AI 发现的一个高危漏洞而兴奋吗?

AI 终结传统漏洞研究了么?

我的答案是:是的——于我而言,AI 终结了传统漏洞研究。它再也不值得我全身心投入。当这件事退化为延展、退化为把工程做得更好,它就不再是从 0 到 1。而我最初被吸引、愿意全身心投入的那个东西,恰恰就是从 0 到 1——不是看谁能把铲子抡出花来。


3. 新的领域

为了搞清楚 AI 为什么会有这些奇怪的行为,我开始把目光投向自己原本不熟悉的领域,去寻找另一种解释。

我开始类比人类——当信息有限、又必须做判断时,人是怎么尽量不出错的?沿着这条线索,我撞见了一个有趣的策略——满意法则(Satisficing):人在信息不全时,倾向于选一个"够用"的答案,而不是一个最优的答案。

更让我兴奋的,是关于满意法则的几条已知缺陷:

  1. 关注单一假设,造成选择性认知;
  2. 难以同时提出一系列竞争性假设;
  3. 侧重证实,而非证伪。

这三条,几乎一一对应到我在 AI 身上观察到的那些"奇怪行为"。

这反而带来了更多的困惑:为什么 AI 会天然落入这种模式?是训练语料的偏置,还是策略选择的结果?我又该如何去验证这些猜想?

我并不是说这些思考有多么高深、多么先锋——它在 AI 研究领域里大概早已不是新问题。只是,正是这样一个我自己回答不了的问题,让我重新找回了当年选择漏洞研究方向时的那种感觉。

AI 为什么会有这样的行为?我现在还回答不了。但我知道,我得去把这个答案找出来。


4. 拥抱新的世界

神奈川冲浪里 — 葛饰北斋

葛饰北斋(Katsushika Hokusai)的艺术生涯以"十年换一次画风"著称。他一生改名 30 多次、搬家 90 余次——每一次更名,往往就意味着他完成了一次画风上的自我重塑。

而我的漏洞研究生涯,也刚刚走过第十个年头。我想,是时候换一次画风了。