AI 安全 开源

Claude Code发现Linux内核隐藏23年的安全漏洞

来源: Lobsters · 作者: mtlynch.io · 发布时间: 2026-04-03

核心发现

Anthropic研究科学家Nicholas Carlini使用Claude Code在Linux内核中发现了一个隐藏23年的远程可利用堆缓冲区溢出漏洞。该漏洞位于NFS驱动中,CVSS评分极高。这一发现证明了AI辅助代码审计的突破性潜力。

背景

Nicholas Carlini在[un]prompted AI安全大会上分享了他的发现:他使用极其简单的脚本让Claude Code遍历整个Linux内核源代码树,寻找安全漏洞。

关键在于,Claude Code几乎不需要人工监督——只需要指向代码库并问"哪里有安全漏洞?"

发现的漏洞

漏洞位于Linux的NFS (Network File Share) 驱动中,攻击者可以通过网络读取敏感的内核内存。

攻击方式:两个NFS客户端协同攻击Linux NFS服务器:

  1. 客户端A与NFS服务器完成三次握手
  2. 客户端A请求锁定文件,声明一个异常长的1024字节owner ID
  3. 客户端B尝试锁定同一文件,被拒绝
  4. 漏洞:服务器生成拒绝响应时,使用仅112字节的缓冲区,但写入1056字节(包含1024字节owner ID),导致堆缓冲区溢出

攻击者可以控制溢出数据,从而覆盖内核内存,实现远程代码执行。

23年的盲点

这个bug于2003年9月被引入Linux内核,早于git版本控制系统(git于2005年发布)。Carlini在演讲中展示这个bug时评论道:"一个我在生活中从未找到的东西。这些真的,真的,真的很难发现。"

更大规模的影响

Carlini的发现只是冰山一角:

  • 数百个潜在漏洞:他已经发现了数百个Linux内核中的潜在漏洞
  • 验证瓶颈:人工验证这些发现成为瓶颈——他无法及时向内核维护者报告所有问题
  • 不仅仅是NFS:他还发现了io_uring等多个子系统中的漏洞

AI辅助代码审计的新时代

这一发现标志着AI在安全研究领域的突破:

  • 传统方法无法发现:静态分析工具和人工审查都错过了这个bug
  • 需要协议理解:发现漏洞需要深入理解NFS协议的工作原理
  • 自动化潜力:Carlini使用简单脚本自动化了整个发现过程

意义

这不只是一个个案——它展示了AI coding agent作为安全审计工具的强大潜力。关键洞察:

  1. 从生成到审计:LLM的能力不仅限于代码生成,安全审计是其天然延伸
  2. 规模化发现:AI可以系统性遍历大型代码库,发现人类审查者容易遗漏的问题
  3. 瓶颈转移:从"发现"转向"验证"——需要新方法来优先处理AI发现的漏洞

正如Goldratt的Theory of Constraints所揭示的:优化系统中的非瓶颈环节会让整体更差。AI辅助安全的瓶颈不再是发现,而是验证和分类。

相关资源