谷歌表示,多年来一直在Linux基金会中赞助两名全职Linux开发人员,以提高安全性,并希望其他公司能够效仿

2021-02-25 02:16:53

面试担心Linux和开源代码的安全性,Google赞助了一对全职开发人员从事Linux安全性工作,并从其自己的存储库中构建代码,而不是下载二进制文件,但是正在向其中添加代码Linux意味着它无法跟上。

开源安全团队负责人Dan Lorenc在The Register上谈到了其方法以及为何尽管方便但仍不使用预构建的二进制文件。

这两个人分别是Gustavo Silva(其工作包括消除某些类型的缓冲区溢出风险和内核自我保护)以及Nathan Chancellor(其修复了Clang / LLVM编译器中的错误并改善了编译器警告)。

两者都已经在Linux基金会工作了,所以有什么新功能?古斯塔沃(Gustavo)在Linux基金会从事Linux内核的工作已经有好几年了,洛伦茨告诉我们。实际上,我们已经在基金会中赞助了很多年了。主要的变化是我们正在尝试更多地谈论它,以鼓励其他公司参与。这是一个行之有效的模型,我们正在尝试对其进行扩展,找到希望将其转变为专职人员的贡献者,并为其提供资金以实现这一目标。

Google的资助具有开放源代码的性质,它使其他Linux用户受益,也符合公司的利益。 Linux对Google有多重要?这是绝对关键的。 Google开始使用Linux。我们到处都使用它,"洛伦茨说。

既然如此,为什么Google只能管理" Gold"是Linux基金会的会员(每年100,000美元),而包括Microsoft,Intel,Facebook和Red Hat在内的其他人是" Platinum&#34 ;,每年捐款50万美元?我不确定那件事。我们也是许多子基金会的成员,"他补充说。 Google领先于AWS,后者仅是" Silver"会员(每年$ 20,000)。

Lorenc解释了Google为确保其内部使用的开源代码(包括Linux)的安全性而采取的一些步骤。 "我们尝试为我们使用的任何开源做的事情之一,并且我们建议任何人使用的事情之一就是能够自己构建它。虽然构建起来并不总是那么容易或琐碎,但是知道您可以做到的只有一半,以防万一。

"我们要求我们使用的所有开放源代码都是由我们从内部存储库中构建的,以证明我们(如果需要制作补丁程序)可以,并且我们有更好的出处,知道它在哪里来自(哪里。从技术上讲,它们是分叉的,但只是我们保持最新的[public]回购的副本。我们很少在我们从事的任何项目中长期携带补丁,这只是维护方面的噩梦,但是如果需要的话,我们可以这样做。

在大多数情况下,我们构建自己的Linux内核,但这就是Linux模型。对于Linux来说,这样做是不奇怪的,在我们做它的许多其他项目中也很奇怪。

结果是Google失去了大多数Linux用户所享受的便利,他们下载了Linux发行版的二进制映像,并通过软件包管理器安装了所需的软件包。

确保Linux安全的挑战是什么?这比许多项目要好得多,洛伦茨说。 "他们有一个记录良好的流程,其中包含多层审阅者。面临的挑战是Linux内核庞大,软件众多,并且所有软件都有错误,软件越多,错误就越多。另一件事是,我们非常擅长发现错误,静态分析已经走了很长一段路,模糊测试也随之而来,并且我们发现错误的速度比修复它们快得多。下一个挑战是寻找解决方法。

我们不想停止发现它们,但是如果您发现没有人有时间看的bug,那么您并不能真正解决整个问题。"

然后,这是获得更多键盘操作原理的一部分,但是,赞助两个已经从事此工作的开发人员并不是一个解决方案。

洛伦茨说,这仍然值得,因为这样的人并不多。 "我们上周围绕Python解释器发布了一个公告。明年我们增加了一个专职于CPython的人员。最好的估计是,全职使用Python解释器的人数增加了50%。他说,全职开发人员致力于Linux安全的情况可能与此类似。

使用Linux Torvalds定期评论内核版本中的大量新代码,如何解决这一问题? "我们将要有创意," Lorenc告诉reg。 "我们在谷歌和行业的其余部分的规模上的安全性的基本方法是尝试工程到整个课程的问题。我们要解决我们发现的错误,但同时考虑方法来修复整个票据的错误。"

示例是缓冲溢出问题,其具有以System语言编写的长期受过软件,如C,用于Linux内核。切换语言? "我们知道我们现在有一整套新的编程语言,如Rust和Go和Swift,以全新的方式运行,而#34;他说。 "通过使用这些语言' Ve endered整个课程的内存安全错误。"

微软对Windows进行了类似的想法,但变化并不容易。谷歌在谷歌上使用ruct for内核代码,或重写锈蚀代码吗? "我们'重新考虑它," Lorenc揭示了。 "最后一次更新是在Linux水管工'会议上,有一个会议所采取的会议。由谷歌工程师从Android团队中运行......它'它不足以知道它是否会上班"

鉴于挑战的规模和新的内核代码的大流量,是赢得的安全方面吗? Lorenc说:"我不认为我们'重新失败。我们'重新取得了很大的进展。每个版本都变得更大但是我们'每个版本都越来越好。"

注册 - 对科技界的独立新闻和意见。部分情况出版