安全研究员使用o3模型发现了一个Linux内核SMB中的“零日漏洞”

前沿资讯 1748083854更新

0

安全研究员seanhn2在其技术博客中披露,他使用OpenAI的o3模型发现了一个Linux内核SMB实现中的远程零日漏洞,编号CVE-2025-37899。

seanhn2表示,当时他在检查Linux的ksmbd模块,这个模块负责用SMB协议共享文件,本来他想放下手头的AI工具开发工作休息一下,突然他想到:“不如用o3模型试试找ksmbd的漏洞吧!”于是他先用一个已知漏洞(CVE-2025-37778)测试o3的能力。这个漏洞是在用户认证的时候,系统错误地提前释放了内存,导致后续程序还在使用已经被删掉的数据,属于“使用后释放”漏洞。

他给o3喂了大约3300行代码,包括处理网络请求、认证逻辑等部分,然后让模型找这类漏洞。测试发现,o3在100次尝试里成功找到这个漏洞8次,而且o3的报告像人类写的一样,直接指出了问题在哪,作为对比,Claude Sonnet 3.7在100次尝试里成功找到这个漏洞3次,Sonnet  3.5直接挂0,而且报告只是零散地记录思考过程。

接着,他想试试o3的“极限操作”:给它更大的代码量,看看能不能发现未知漏洞。这次他扔给o3大约12000行代码,包含所有文件共享相关的功能模块。结果,虽然o3找已知漏洞的成功率变低,100次里只成功1次,但它居然在其他结果里,挖出了一个全新的漏洞!

这个新漏洞藏在“注销会话”的功能里。简单来说:当两台电脑同时连接到同一个文件共享会话时,如果其中一台电脑发送“注销”请求,系统会提前删除用户信息,但另一台电脑可能还在使用这些信息。因为系统没做好“同步”,导致已经被删除的内存数据还在被使用,这可能会让黑客控制你的电脑或者让系统崩溃。o3不仅找到了这个漏洞,还详细描述了攻击路径,比如怎么让两个连接同时操作同一个会话,怎么触发删除和使用的时间差等等。

以前找漏洞,全靠人工一行行看代码,或者用复杂的测试工具,现在AI能帮忙“看懂”代码逻辑,甚至发现人类容易忽略的细节。不过现在AI还不是完美的。比如这次测试里,o3有28次报了“假漏洞”,还有66次没找到已知漏洞。

o3的此次发现标志着人工智能从“代码理解工具”向“漏洞发现引擎”的跨越。正如安全研究员seanhn2所强调的:“现在是时候将AI视为漏洞研究的合作伙伴,o3并不会替代人类专家,而是提升效率的强大工具。对于1万行代码以内的问题,o3已具备独立分析或辅助解题的能力,建议安全从业者尽快将大模型纳入工作流,尤其是在代码审计初期的漏洞定位、复杂逻辑梳理等环节。”

参考资料:https://sean.heelan.io/2025/05/22/how-i-used-o3-to-find-cve-2025-37899-a-remote-zeroday-vulnerability-in-the-linux-kernels-smb-implementation/