最近,Linux操作系统(从手机到主要系统server,到处都在用的操作系统)惊现的200+个bug(恶意代码),让美国码农圈炸了。
开发和维护Linux操作系统的技术大神Greg Kroah-Hartman,不仅直接爆粗,甚至把美国明尼苏达大学拉进黑名单了,并放言:
“以后明尼苏达大学提交的代码,都!不!再!接!受!”
图片来源于lore.kernel,版权属于原作者
这还没完,为了表达自己态度坚决,Greg还一口气,将明尼苏达大学以前提交的代码全部作废,表示以后要挨个审查。
闹这么大,这到底是咋了啊?
这一切的一切,还得从明尼苏达大学的华人助理教授Kangjie Lu和他的博士生Qiushi Wu说起。
原来Lu教授和博士生Wu在这几年内,连续向Linux Kernel发送了 200 多个有bug的恶意代码。
背后的原因,竟是为了测试开源社区的审查能力,完成一篇探讨开源社区安全漏洞的论文。
图片来源于github,版权属于原作者
刚开始,Linux的维护人员对这波操作,没怎么注意。
然后,重点来了。
别人没发现,但他们自!爆!了!
在去年11月,Kangjie Lu 教授将他们这篇论文的摘要,发到了twitter上,一下引起多方的质疑。
摘要中,作者提及,论文的重点是研究在Linux内核为例的开源代码中植入“恶意或不安全的”代码导致的安全风险。
虽然整个过程都是以研究的目的,但要知道,这种"恶意"代码,对于Linux官方代码库来说,都是安全漏洞。
也就是说,这些代码完全没有价值的。
图片来自hothardware
这可把维护人员惹火了
“我们每天都得审查几百个代码,忙的团团转,他们却为了自己写论文,把我们当工具人,拿来做试验??太自私了,这白白浪费我们的时间”
眼看形势不对,随后Lu 教授就将这篇摘要删了。
然后对自己的研究,做了声明:
1.我们从来没有在提交的代码中合并 bug,这篇论文正在论证这类问题存在的可能性;
2.我们的做法是这样的:首先发现真正的 bug A,然后提交补丁 A 来修复 bug A,这也将引入 bug B;所以,我们还会在合并 bug B 之前提交补丁 B 来修复它。换句话说,我们通过两步来修复 bug A。
3.在提交前,这些发现已经提前报告给了 Linux维护人员;
4.我们没有对任何 Linux 用户造成伤害,实际上我们还修复了这些 bug;
5.本研究的目的是通过提高人们对补丁问题的认知来改进修补过程,从而激励人们开发自动补丁检测/验证工具。
可能担心这样的解释不够正式,12月Lu教授研究团队还发表了一份正式声明。
图片来源于www-users.cs.umn.edu,版权属于原作者
表示他们研究的目的是为了提高开源软件的安全性。
所有的补丁建议都是通过电子邮件交流提出来的,从来没有合并进任何代码分支和Linux内核中。
总之一句话,就是这项研究没有恶意。
目的只是为了改进Linux内核。
对于研究浪费了审查人员的时间,研究团队也是倍感抱歉。
态度诚恳,也表明了是研究目的。
虽然为了研究的试验,操作过程确实有点恶心Linux审查人员,但也不至于让整个明尼苏达大学,一起被拉黑啊!
其实,Lu 教授论文这事也就只是一个引子。
真正引爆整个Linux 社区的是,明尼苏达大学一名叫Aditya Pakki的在读博士生。
今年4月,Aditya Pakki向Linux内核提交了一个小补丁。
这个看似简单的补丁,却一下引起了众多大佬关注。
在经过谷歌首席软件工程师、Linux内核社区的贡献者之一Al Viro的审查后。
图片来源于twitter,版权属于原作者
这个代码有问题。
而在起底Aditya Pakki的背景后,Linux社区成员发现,这Aditya Pakki不就正是,之前“有前科”的Kangjie Lu教授小组成员嘛?
这难道是在历史重演?
根据之前的种种,Linux社区成员认定Aditya Pakki提交的补丁,具有恶意。
于是,将它们全部移除。
BUT对于Linux社区成员的指责,Aditya Pakki 可不认,直接表示“
”这些看法是先入为主,都是诽谤。”
“我发送补丁只是为了得到反馈,但是鉴于你们对新人以及非专家的恶劣态度,我以后不会在发送任何补丁。”
图片来源于bleepingcomputer,版权属于原作者
这样毫无歉意的回复,一下就惹毛了Linux内核管理员Greg。
那就别怪我不客气了。
一怒之下,Greg直接表示,禁止明尼苏达大学对Linux提交代码,之前他们的提交的代码全部作废,因为它们显然是恶意提交的。
图片来源于lore.kernel,版权属于原作者
我们有太多的工作要做,Linux内核开发人员不喜欢被试验。
一个小组惹的祸,竟让整个学校来背锅。
这样的结果,事件主角之一的Lu 教授也是没想到。
为了澄清事实,Lu 教授随后出来发了声。
上次关于“分析开源软件漏洞”的研究,已在2020年11月完成。Aditya这次在补丁中发现的bug,来自一个新项目,并非有意为之。
随后,明尼苏达大学计算机科学与工程系官方也出来,表示将调查此事。
我们非常重视这一情况,我们立即暂停了这项研究,将调查研究方法和审核过程,以采取适当的补救方法,以防止未来再出现问题。
而另一边,业内人士,对于Linux内核管理员Greg的重罚,意见也不一致。
一方面,大部分Linux社区的开发者和管理员,认为这种研究本身就是不道德的。
这已经不是简单的试验了,就像你自称“安全研究员”,然后去商店切断所有汽车的刹车线,然后看有多少人在离开时会发生车祸。
但也有人认为这“禁止”,是不是有点太苛刻。
开源安全公司总裁Brad Spengler就表示,去年包括自己在内的多人,就提醒过Linux内核维护者,这些代码可疑了。
现在才行动,是不是有点“过度反应“”了。
网友评论:
--他是国内杀毒公司毕业的吗
--好像是在做一个社会学实验,毁灭社会的互信。
--还好提交的是恶意代码,不是恶意病毒。
--这思路太古怪了,匪夷所思啊,自己造bug解bug发文章。
--这不就是去饭店投毒然后美其名曰帮你们测试你们的保安系统吗?!
--penetration test有自己业界的规则,不能像他这样胡搞
--为了测试刹车系统的安全,直接找人撞,你不能说在撞之前刹住了,没死人就皆大欢喜了。
--问城市管理部门我能不能向路边的公众饮水机投放巴豆。管理员说不行,你这是在胡闹,然后继续问。原因是这个人想在知乎写高赞答案“想公众饮水机投放巴豆,城市管理者会如何处置”。