Linux 内核是目前最大的软件项目之一,拥有 2800 万行代码。世界各地的贡献者每天向 Linux 内核管理员提交大量 patch,经过 review 之后被合并入官方 Linux 内核树。这些 patch 可以帮助修复 Linux 内核中的 bug 或问题,或者引入新的特性。
今年 2 月,来自美国明尼苏达大学的研究者 Qiushi Wu 和 Kangjie Lu 发布了一篇研究论文《On the Feasibility of Stealthily Introducing Vulnerabilities in Open-Source Software via Hypocrite Commits》,旨在分析开源项目的安全性。为了做研究,他们向一些开源项目提交了一些有 bug 的代码,其中 Linux 内核正是他们的主要实验「场地」。
根据最新消息,Linux 内核管理员 Greg Kroah-Hartman 宣布撤销该团队的代码提交,并禁止明尼苏达大学未来所有的贡献。
我们来看这件事情的来龙去脉。
这项研究在去年进行,当时提交的代码似乎并未引起安全漏洞,有一些甚至被成功合并入 Linux 内核树。
2 月份相关研究论文发布后,明尼苏达大学研究者想继续提交由「新型静态分析器」创建的 patch。
4 月 21 日,Linux 内核管理员 Greg Kroah-Hartman 在与明尼苏达人员沟通的邮件中表示:
您和您的团队此前提交了有 bug 的代码,以观察 Linux 内核社区的反应,并据此发表了一篇论文。现在,您想提交新的一批有问题代码,这些代码显然并非静态分析工具创建而成。
Greg 表示:「Linux 社区欢迎有意愿帮助 Linux 的开发者,但不希望成为试验场,接受无益代码或有 bug 代码的『测试』。…… 因此,我必须禁止明尼苏达大学未来所有的贡献,并将您之前的贡献全部撤销。」
随后,Greg 在一封电子邮件中表示:来自 @umn.edu 邮件地址的代码提交被认为是「恶意提交」。因此,这一团队向 Linux 内核树提交的所有代码将被恢复原状,并进行重新 review,以确定得到有效修复。
一篇论文引发震荡,学校计算机系出面调查
这件事情的导火索——Qiushi Wu 和 Kangjie Lu 的论文《On the Feasibility of Stealthily Introducing Vulnerabilities in Open-Source Software via Hypocrite Commits》已经发布,并被第 42 届 IEEE Symposium on Security and Privacy 接收。
在 Kangjie Lu 的个人主页上,我们可以看到这样一条信息:
这一实验并未向开源软件(OSS)引入任何 bug 或导致 bug 的提交。该研究旨在以一种安全的方式调查 patching 流程的缺陷。该实验并未影响任何用户,且得到 IRB 豁免(IRB Exempt)。此外,该实验还修复了 3 个真实的 bug。
其实,早在去年 12 月发布的澄清声明中,二位研究者就介绍了实验流程,表示实验不会引入 bug 或漏洞。但在回答「该项目是否浪费管理员精力」的问题时,他们表示「会」。但为了减少浪费,他们尽可能提交小型 patch,并修复了 3 个真实 bug。
不过,目前事情的发展态势似乎已经超出了预期。明尼苏达大学计算机科学与工程系表示将对此事展开调查:
叫停这项研究。我们将对该研究方法,及批准该研究方法的流程展开调查,确定恰当的补救措施。如有必要,我们将尽快向社区报告调查结果。
参考链接:
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。