正在刊行长文 · Essay
2026-06-16所有内容
随机比特 · Random Bits

AI 先把 curl 的安全报告淹成垃圾场,又亲手把它清干净了

2026-06-16AI Engineering / Systemsrbits.uk
AI 先把 curl 的安全报告淹成垃圾场,又亲手把它清干净了

那个函数根本不存在

一份漏洞报告躺在 curl 的 HackerOne 收件箱里,讲的是 HTTP/3 的一个 stream dependency cycle 漏洞。

附了完整的 GDB 会话、寄存器 dump、调用栈,每一行都排得整整齐齐,术语滴水不漏。看上去,是训练有素的安全研究者才写得出的东西。

唯一的问题是:它反复引用的那个函数,curl 的代码里从头到尾都不存在。

这类东西,业内有个词叫 slop——又长、又自信、又彻底编造。它读起来像真的,因为它本来就是照着"真的样子"生成出来的。

而维护者,得逐行读完、对着代码核一遍,才能确认自己刚刚浪费了一个上午。

这事是怎么开始的。 curl 的赏金不算低:严重漏洞最高一万美元,低危也有五百。

过去这道门有天然门槛——你得真懂 HTTP、真懂内存、真能调出一个崩溃,才敢提交。

可一旦"让大模型找个漏洞写份报告"变成一句话的事,门槛就塌了。不会调试的、不懂协议的、纯想碰运气换钱的,都能让 LLM 吐一份像模像样的东西摁下提交。

2025 年,水开始漫上来。 AI 辅助生成的提交占到全部报告的两成左右;而其中真正算得上漏洞的,掉到只剩 5%。

curl 的安全报告本就不海量,每周也就两份。可现在,这两份真货,得从一大堆假货里捞。

麻烦的从来不是数量,是每一份假货都伪装得够好,好到你不敢直接关掉。安全这行的铁律是:漏一个真的,代价远大于读十个假的。于是只能每一份都当真。

到了那年年底,比例彻底倒了过来:每二三十份里,才捞得出一份真的。

curl 的安全小组只有七个人,他们把这种 triage 叫"恐怖任务"。

你打开一份报告,它带着 GDB、带着寄存器、带着一切让你不敢轻视的细节;你认认真真查下去,查到最后是空的——然后下一份,还是这样。

降低门槛没招来更多贡献者,只招来更多需要人工去证伪的幻觉。

今年 1 月底,他们第一次因为这事按下了停止键。 一位维护者发文、提了个 PR,宣布 2 月 1 日起暂停整个赏金计划。

门槛降到零之后涌进来的噪音,第一次把一个核心开源项目的安全流程直接逼停。

如果停在这里,结论会很顺——AI 把开源安全搞砸了,门槛归零的代价,全由维护者用工时来偿还。

可一个月后,curl 又回来了,而且原因出人意料。 三月,赏金计划重新上线。让它回来的,恰恰是把它逼停的那个东西——AI。

模型又强了一截,那种又长又空、引用不存在函数的 slop,基本退潮了;涌进来的,变成了高产量、技术上真正站得住的报告。

把它逼停的是 AI,把它救回来的也是 AI,中间只隔了几个月的模型能力提升。同一项技术,半年前是病,半年后成了药。

决定 AI 是噪音还是产能的,往往不是它"是什么",而是它"现在走到哪了"。

同一种能力,跨过质量门槛之前是噪音放大器——让不合格的产出变得廉价、批量、还伪装精良;跨过那道门槛之后,同样的廉价和批量,就成了产能放大器。

curl 这一年多,把这条曲线从下往上完整走了一遍:先被淹,再被抬。祸与福之间,有时只差一个时间点。

能力曲线穿过质量门槛

所以判断一件事被 AI 冲击成什么样,关键看一个时间点:它的能力曲线,现在是穿过质量门槛之前,还是之后。

同一条"AI 把某事搞砸了"的新闻,答案落在门槛两侧,意味完全相反。在半路上拍板,唱衰也好、吹捧也好,多半会被几个月后的模型版本打脸。

curl 这边还没消停。今年 6 月,他们又宣布 7 月停收一个月漏洞报告——但这次是让七个人喘口气的主动休息,跟被假货逼到墙角的那次停摆,已经是两回事。

压力还在,只是性质变了。工具一直在变强,我们对它的判断也就没有一锤定音的时候:它走到哪,判断就得跟着重新校一次。

随机比特公众号二维码
公众号 · 随机比特
从 AI 工具热闹里拆工程真相

写边界、控制面、上下文、成本与安全。