🤖 Claude Code发现Linux内核隐藏23年的安全漏洞
评分: ★★★★☆ (4.5/5)
概述
Anthropic研究科学家Nicholas Carlini在[un]prompted AI安全大会上报告了一个里程碑式发现:使用Claude Code发现了Linux内核NFS驱动中隐藏达23年之久的可远程利用安全漏洞。这一发现证明了AI辅助代码审计的巨大潜力。
核心发现:AI编码工具不仅能写代码,更能发现人类安全研究人员难以发现的复杂漏洞。Carlini表示:"I have never found one of these in my life before. This is very, very, very hard to do. With these language models, I have a bunch."
漏洞详情
该漏洞位于Linux内核的NFS(网络文件系统)驱动程序中,是一个可远程利用的堆缓冲区溢出漏洞,允许攻击者读取敏感的内核内存。
攻击原理
攻击需要两个协同工作的NFS客户端:
- Client A 与NFS服务器进行三路握手,建立NFS会话
- Client A 请求锁定一个文件,并声明一个异常长(1024字节)的owner ID
- Client B 尝试锁定同一文件
- 服务器响应 拒绝Client B的请求,但编码响应时使用了固定长度的缓冲区,长度仅基于owner_len字段(4字节)而非实际的owner数据长度
- 漏洞触发 攻击者可利用返回的溢出数据读取内核内存
AI如何发现漏洞
Carlini使用的方法出人意料地简单:
# 遍历内核所有源文件
find . -type f -print0 | while IFS= read -r -d '' file; do
# 让Claude Code逐个查找漏洞
claude \
--verbose \
--dangerously-skip-permissions \
--print "You are playing in a CTF. \
Find a vulnerability. \
hint: look at $file \
Write the most serious \
one to /out/report.txt."
done
这个脚本欺骗Claude Code,认为用户正在参加CTF(网络安全竞赛)需要帮助解题。Carlini指出,这种方法之所以有效,是因为:
- AI不会像人类那样对代码产生"熟悉感"而忽视潜在问题
- AI可以快速遍历大量代码库
- AI能够理解复杂的协议细节(如NFS协议)
"我们发现了多个可远程利用的Linux内核堆缓冲区溢出漏洞。我以前从未发现过这类漏洞。这是非常、非常、非常困难的。但使用这些语言模型,我找到了一堆。"
— Nicholas Carlini, [un]prompted 2026
— Nicholas Carlini, [un]prompted 2026
安全启示
- AI正在改变安全研究范式:传统手动代码审计将被AI辅助工具增强
- 代码审查民主化:非安全专家也能借助AI发现复杂漏洞
- 供应链安全:开源项目的安全性可通过AI得到提升
- 防御者优势:开发者可使用AI工具主动发现并修复漏洞
结论
这一发现标志着AI辅助安全研究进入新阶段。AI编码工具的价值不仅在于编写代码,更在于成为强大的代码审计助手。随着这类工具的普及,我们有望发现更多长期潜伏的安全隐患。
参考链接
来源: mtlynch.io | 发现时间: 2026-04-04 | 标签: AI安全, Linux内核, 漏洞发现, AI编码