为写论文,明尼苏达大学钻研者向Linux提交多条「恶意代码」,结果整个大学都被Linux封了

为了写论文,明尼苏达大学的钻研者竟然向 Linux 内核发送了多个有漏洞的代码,结果惹怒了 Linux 社区,不仅禁止整所大学向 Linux 提交代码,还将该校提交的代码还原。

近日,国外学术圈出现了一件「新鲜事」,明尼苏达大学的两位华人钻研者在写论文时测验考试将坏补钉(bad patch)放入 Linux 内核中作为「测试」,用于钻研开源社区的漏洞。但当他们继续贡献「带 bug 代码」的时候,却发现 Linux 内核管理员 Greg Kroah-Hartman 终结了他们的行为,并将整个明尼苏达大学拉入了 Linux 黑名单。

图片

事务究竟是怎样的呢?

此前,明尼苏达大学计算机科学与工程系博士生 Qiushi Wu 及其导师助理老师 Kangjie Lu 合作写了一篇《On the Feasibility of Stealthily Introducing Vulnerabilities in Open-Source Software via Hypocrite Commits》论文,测验考试将 UAF(Use-After-Free)漏洞放入 Linux 内核。通常来说,这类 Red Team 安全检测很常见,并且该论文已被 2021 IEEE 安全与隐私研讨会接收。

但当他们再次测验考试提交代码时,却发现 Linux 内核管理员 Greg Kroah-Hartman 已将整个明尼苏达大学「拉黑」了。

图片

论文地址:https://github.com/QiushiWu/QiushiWu.github.io/blob/main/papers/OpenSourceInsecurity.pdf

Greg Kroah-Hartman 是备受尊敬的 Linux 内核开发者之一,他在推特回复称:「Linux 内核开发者不喜欢『被实验』,我们要做的事务本来就够多了。」

图片

在 Linux 内核邮件列表(LKML)中,当钻研者再次测验考试提交虚假补钉时,Kroah-Hartman 更清楚地表达了他的态度,「请停止提交已知无效的补钉,不要想着为了完成论文而在审核过程中捣鬼,这类做法是不对的,浪费我们的时间。我们将不得不再次向贵校知会这件事务。」

Linux 内核高级开发人员 Leon Romanovsky 也解释道:「他们是有心将 bug 引入内核,这在任何开源社区都是大禁忌。在 Linux 内核社区中,开发者之间的信任是开发过程中至关重要的一部分。」

这两位钻研者是不是有心为之呢?又会不会对 Linux 造成损害呢?Kangjie Lu 老师之前已对自己的钻研做出了以下声明:

一,我们从来没有在提交的代码中合并 bug,论文证明了这类问题存在的可能性;

二,我们的做法是这样的:首先发现真正的 bug A,然后提交补钉 A 来建设 bug A,这也将引入 bug B;所以,我们也会在合并 bug B 之前提交补钉 B 来建设它。换句话说,我们通过两步来建设 bug A。

三,这些发现在提交前已报告给了 Linux 管理员;

四,我们不会对任何 Linux 用户造成伤害,并建设了这些 bug;

五,这项钻研旨在通过提高人们对这类问题的认知来改进修补过程,激励人们开发自动补钉检测和验证对象。

图片

双方各执一词。不过,明尼苏达大学计算机科学与工程系官方在获知这件事务之后,表示「两位钻研者的钻研引发了 Linux 内核社区的广泛关注,并导致 Linux 拉黑了整所大学。我们非常严肃地处理整件事务,并已立即终止了这项钻研。我们还将追查两位钻研者采用的钻研方法以及该方法的批准流程,确定适当的补救措施,并为将来出现的其他问题做好准备。

图片

或许是校方的「不作为」导致自己被拉黑

Kangjie Lu 老师的另一位博士生(Aditya Pakki)提交了一个一共只修改 / 增加了两行的小补钉:

图片

由于这个补钉很简单,而且似乎改善了代码的质量,它最初得到了一些成员的支持,但后来受到质疑。而在 4 月 19 日,资深的内核贡献者 Al Viro 斥责该贡献者提交了一个「没有建设任何东西的补钉。」

Aditya Pakki 提交的另外一个补钉:

图片

Linux 内核开发者之一 Greg Kroah-Hartman 警告称,不要浪费内核维护者的时间提交这类补钉。显然,这不是唯一引起争议的补钉请求。还有 3 个这样的补钉来自同一个钻研人员,并认为这些补钉增加了安全漏洞。

面对这些公开抨击,Aditya Pakki 认为自己是受害者,指责内核维护者的态度,「我恭敬地请你停止和停止作出近乎诽谤的野蛮指控。」他还声称「这些补钉是作为我写的一个新的静态分析器的一部分发送的,它的灵敏度显然不是很高。我发送补钉的目的是希望得到反馈。我们不是 Linux 内核方面的专家,反复发表这些言论让人听了很反感。」Pakki 说:「我不会再发补钉了,因为这类态度不仅不受欢迎,而且会让新手和非专业人士感到害怕。」

这激怒了 Kroah-Hartman 并回复道:

你和你的团队公开承认发送了已知的错误补钉,以查看内核社区对它们的反应,并发表了一篇基于这项工作的论文。现在你又提交了一系列明显错误的补钉,我该怎么看待这类事务?[这些新的补钉] 显然不是由一个有智慧的静态分析对象创造的,因为它们都是完全不同的模式的结果,而且所有这些补钉显然根本没有建设任何东西。那么,除了你和你的团队继续通过发送这类无稽之谈的补钉来对内核社区的开发者进行试验之外,我还能想到什么呢?

当提交由对象创建的补钉时,每个这样做的人都会提交类似「found by tool XXX, we are not sure if this is correct or not, please advise」的语句。为什么在这里你们就没执行这样的操作。你不是在寻求帮助,你声称这些是合法的建设,但你知道这是错误的。任何对 C 语言有一定了解的人都可以看到你提交的补钉根本没有任何作用,所以认为一个对象创造了它们,然后你认为它们是一个有效的 「建设」,这完全是你的疏忽,不是我们的。你才是有错的人,我们的工作不是成为你创造的对象的测试对象。我们的社区欢迎那些帮助和增强 Linux 的开发者,但并不是你们测验考试做的事务,所以请不要试图用这类方式来破坏它。我们的社区不欢迎被试验,也不欢迎通过提交已知的补钉被测试,这些补钉要么是有心不做什么,要么是有心引入 bug。如果你想做这样的工作,我建议你找一个不同的社区来做你的实验,你在这里是不受欢迎的。

这些开发者不会再回来了。而且,因为明尼苏达大学在受到警告后没有阻止他们,Kroah-Hartman 表示现在不得不禁止明尼苏达大学今后提交任何代码,并将以往提交的代码还原。

大多数 Linux 内核开发人员和其他程序员都同意 Kroah-Hartman 的观点。Linux 内核高级开发人员、谷歌工程师 Ted T’so 指出,尽管负责这个项目的助理老师 Kangjie Lu 过去做过一些有用的安全工作:

问题在于,Lu 老师和他的团队在关于什么是道德的以及内核开发社区可接受的行为方面有一些非常偏颇的想法。并且,明尼苏达大学机构审查委员会(IRB) 认为 Lu 老师所做的钻研不在正常实验范围内,这意味着明尼苏达大学没有任何机构对这类行为进行控制——这大概就是 Linux 禁掉整所大学的原因所在。

此外,两位钻研者在他们的论文中声称,他们的补钉没有一个真正进入任何 Linux 代码库,它们只是出现在电子邮件中,而不是成为任何 Linux 内核分支的 Git 提交。然而事实并非如此。

另一位 Linux 内核高级开发人员 Romanovsky 对此表示,他已查看了 Pakki 提供的四个已被接受的补钉,其中三个添加了各种严重性的安全漏洞。Linux 内核驱动程序和 Debian 开发人员 Sudip Mukherjee 也表示,很多补钉已到达 stable tree。

所以,这些钻研人员不仅浪费了 Linux 提交者的时间,而且他们实际上把坏代码引入了 Linux 内核。

参考链接:

https://www.neowin.net/news/linux-bans-university-of-minnesota-for-sending-buggy-patches-in-the-name-of-research/

https://www.zdnet.com/article/greg-kroah-hartman-bans-university-of-minnesota-from-linux-development-for-deliberately-buggy-patches/

https://linux.cn/article-13320-1.html

原创文章,作者:机器之心,如若转载,请注明出处:https://www.iaiol.com/news/wei-xie-lun-wen-ming-ni-su-da-da-xue-zuan-yan-zhe-xiang/

(0)
上一篇 2021年 4月 22日 下午2:37
下一篇 2021年 4月 22日 下午4:39

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注