开源安全的危机在于太相信 GitHub?——专访Apache之父amp;OpenSSF基金会总经理Brain Behlendorf( 三 )


正因如此,供应链现在也是被主要攻击的对象 。十年前我们肯定想不到,可能会有人在我们的包数据库里偷偷安插了一个坏包,更想不到某个 Java 模块的作者可能会把账户卖给某个黑客,而这个黑客可能会在我们的网站上设置后门……我们的事业是在一个彼此之间高度信任的时代建立起来的,当时我们不必担心这些类型的攻击 。现在我们已经意识到了,要帮助开源开发者做出更加安全的决定 。
《新程序员》:你认为开源软件的安全性目前面临的最大挑战是什么?
Brian:现在的开发者经常忽视一个问题,那就是平台的选择 。比如,当我需要添加一个功能时,一般会在现有库的基础上进行构建,构建的过程中就需要平台的帮助,但我们从来都是默认了一个平台并且依赖它,没有去思考深层的安全性问题 。你可以认为这是因为大部分程序员都很“高效”,但其实也是一种“懒惰” 。所有人在开发过程中都给予 GitHub 这样的中心组织很大的信任,甚至从未质疑它们 。
当然,我希望 GitHub 永远不会被黑客入侵,一旦 GitHub 被入侵了,很多人都会遭殃 。到目前为止,GitHub 做得很好,但我们真的应该把所有的信任都交给一个组织吗?
我也不清楚这个问题的答案 。我们在 OpenSSF 中有一个名为 Sigstore 的项目,它使用了非常轻量的 Let’s Encrypt 方式来用密钥对研发流程中的制品进行签名,以便将其嵌入到每个人用来进行构建和发布的工具中 。这就像我们生活中随处可见的配料表:如果你拿起一瓶番茄酱,那么制造商必须告诉你瓶子里装的是什么,以免有的人过敏 。总之,开发者现在还需要更好的软件工具来促进开源安全 。
开源开发也需要这样的“配料表”,需要透明公开的协作流程 。很多企业通常不知道他们运行的是什么软件,Log4j 也是因此出现了问题 。开发者们在部署软件时需要理解目标对象的构建,需要了解整套工作的运行流程 。我们要尽量避免那些只有一个开发人员看过的软件、来源不可信的软件或者那些你不能保证构建服务器是否被入侵的软件 。
跨越语言障碍,OpenSSF 助推中国开源安全建设
《 新程序员 》:很多问题到了中国可能又会有所不同,从而衍生新的问题 。你对中国开源的现状有哪些看法吗?
Brian:开源安全是每个国家都存在的问题 。在这一点上,大家的利益其实是一致的,毕竟 Log4j 的漏洞就是由阿里巴巴(阿里云)的研究人员发现的 。我们需要一起努力,而这也是我参与本次访谈的原因之一,我真的希望看到中国社区、企业、开发商、甚至政策制定者在这方面真正统一起来 。
当然,我也很清楚中国开发者现在面临的一些问题,最主要的肯定是语言的问题 。如果你的母语不是英语,可能与中国以外的开发人员合作会是一个挑战,由于不知道如何提出正确的问题而阻碍合作和发展 。Linux 正在与 OpenSSF 合作,我们试图创建一个中文子社区,专注于服务和帮助中国开发者采用这些先进技术,同时也让中国开发者帮助我们改进技术,最终在中国开设我先前提到的Sigstore 项目 。这些都应该本地化到中国,让中国社区能够更广泛地学习和使用 。
《新程序员》:要想降低开源软件的安全风险,安全意识也很重要,OpenSSF 是如何帮助开源使用者有效提升安全意识的?
Brian:我们在 OpenSSF 上发布了相当多的内容,不仅能帮助开发者学习如何使用工具,还能帮助他们编写更安全的代码 。事实上,我们已经在培训网站上发布了一门关于 Linux 安全基础培训的课程,现在正在将其翻译成中文,叫做安全软件开发基础课程 。课程时长大约有 20 小时,虽然不是很长,但它可以教你如何避免一些问题,比如不要解析不受信任的用户,还有怎么提交正确的输入格式字符串——这个问题曾导致了 Log4j 的 bug。我们相信,如果有更多的开发人员参加这个课程并进行认证,就能大大降低代码进入软件供应链时产生的风险 。


以上关于本文的内容,仅作参考!温馨提示:如遇专业性较强的问题(如:疾病、健康、理财等),还请咨询专业人士给予相关指导!

「辽宁龙网」www.liaoninglong.com小编还为您精选了以下内容,希望对您有所帮助: