前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >开源基金会必须合作以防止下一次Log4Shell混乱

开源基金会必须合作以防止下一次Log4Shell混乱

作者头像
开源社
发布2022-02-25 16:19:21
2520
发布2022-02-25 16:19:21
举报
文章被收录于专栏:开源社开源社

| 作者:Brian Behlendorf

| 编辑:金心悦

| 设计:朱亿钦

|责编:王玥敏

作为一个将整个职业生涯都花在开源软件(OSS)上的人,Log4Shell 的混乱(整个行业范围内的四级警报,以解决 Apache Log4j 包中的一个严重漏洞)是一个谦卑的提醒,我们还有很长的路要走。OSS 现在是现代社会运作的中心,就像公路桥、银行支付平台和手机网络一样重要,是时候 OSS 基金会开始像现代社会运作的中心一样行动了。 像 Apache 软件基金会、Linux 基金会、Python 基金会等组织,为他们的 OSS 开发人员社区提供法律、基础设施、营销和其他服务。在许多情况下,这些组织的安全工作资源不足,并且由于害怕吓跑新的贡献者,在设置标准和需求以减少重大漏洞的机会方面受到限制。太多的组织没有申请筹集到的资金,也没有设置过程标准来改进他们的安全实践,并且不明智地偏向于代码的数量而不是质量。 “像现代社会运作的中心一样行动”是什么样子的?以下是一些开源软件基金会可以做的事情来降低安全风险:

1. 建立一个全组织范围的安全团队来接收和分类漏洞报告,并协调对其他受影响的项目和组织的响应和披露。

2. 通过 CI 工具进行频繁的安全扫描,以检测软件中的未知漏洞,并识别依赖项中的已知漏洞。

3. 对关键代码进行偶尔的外部安全审计,特别是在新的主要版本发布之前。

4. 要求项目使用测试框架,并确保高代码覆盖率,因此不鼓励没有测试的特性,并主动淘汰未充分使用的特性。

5. 要求项目移除已弃用或易受攻击的依赖项。(一些 Apache 项目不容易受到 Log4j v2 CVE 的攻击,因为它们仍然与 Log4j v1 一起发布,而 Log4j v1 已经有了已知的弱点,而且自 2015 年以来就没有收到过更新!)

6. 鼓励并最终要求使用 SPDX 等 SBOM 格式,以帮助每个人更容易、更快地跟踪依赖关系,从而更容易发现和修复漏洞。

7. 鼓励(然后最终要求)维护人员演示熟悉安全软件开发实践的基础知识。

其中许多都被纳入了CII 最佳实践徽章[1],这是第一次尝试将它们编纂成一个客观的可比度量,现在已经转移到 OpenSSF。OpenSSF 还为开发人员发布了一个关于如何开发安全软件的免费课程[2],而SPDX 最近也作为 ISO 标准发布了[3]。 上述做法都不是为了向开发者支付更多报酬,或者将资金直接从软件用户转移到开发者身上。不要误会我的意思,一般来说,开源开发者和支持他们的人应该得到更多的报酬和更多的赞赏。然而,如果你只是把更多的钱塞进他们的口袋,他们就会编写更安全的代码,这对大多数维护者来说是一种侮辱。与此同时,当每个下游用户都认为这些做法已经到位,由其他人完成并支付费用时,可以说普遍的悲剧发生了。 应用这些安全实践并提供解决这些问题所需的资源,是越来越多的基金会为他们的社区所做的事情。基金会应该开始为其托管的和成熟的项目建立安全相关的需求。他们应该从利益相关者那里筹集所需的资源,对他们最重要的项目进行定期付费审计,扫描工具和所有项目的 CI,并在跨项目安全团队中至少有一些付费的工作人员,这样关键的时间响应就不会留给单个志愿者。从长远来看,基金会应该考虑提供资源,将关键项目或代码段转移到内存安全的语言中[4],或者为更多的测试提供奖励。 Apache 软件基金会似乎在这方面做得很好,让我们清楚一点。尽管在感恩节之前收到了通知,但他们的志愿安全团队与 Log4j 维护者一起工作,并迅速做出了反应。Log4j 在其 CI 流水线中也有近 8000 个通过的测试,但即使所有这些测试都没有发现这个漏洞可能被利用的方式。一般来说,Apache 项目根本不需要测试覆盖,更不用说运行这种 SAST 安全扫描或进行第三方审计(可能可以捕获了这种情况)了。 许多其他的基金会,包括那些托管在 Linux 基金会的基金会,也在努力做到这一切——这是不容易通过自由放任的哲学,许多基金会有关于代码质量,第三方代码审计和测试是不便宜的。但为了可持续发展,减少对更广泛的社区的影响,使其更有弹性,我们必须做得更好。我们必须共同努力,因为对开业软件的信任危机影响着我们所有人。 这就是 OpenSSF 出现的原因,也是我最初选择这个项目的原因。在新的一年里,你将看到我们宣布一系列新的倡议,这些倡议建立在我们为开源社区的安全“提高基础”所做的工作上。我们有效做到这一点的唯一方法是开发工具、指导和标准,这些工具、指导和标准能够鼓励开源社区采用,并且是实用的,而不是繁琐的或官僚的。我们将与其他开源项目和基金会合作,并为他们提供资助,以帮助他们改善他们的安全工作。如果你想了解我们正在做的事情,请在Twitter[5]上关注我们或以其他方式参与进来[6]。要了解我们到目前为止的进展,请阅读我们在 Linux 基金会年度报告[7]中的内容,或观看我们最近的市政厅[8]。 希望一个少四级警报的 2022 年,

Brian

Brian Behlendorf 是 Linux 基金会的开源安全基金会(OpenSSF)的总经理。他是 Apache Group(后来成为 Apache 软件基金会)的创始成员之一,并担任基金会总裁三年。

参考资料: [1]CII 最佳实践徽章:

https://bestpractices.coreinfrastructure.org/zh-CN

[2]如何开发安全软件的免费课程: https://openssf.org/training/courses/

[3]SPDX 最近也作为 ISO 标准发布了: https://spdx.dev/spdx-specification-is-now-an-iso-standard/

[4]将关键项目或代码段转移到内存安全的语言中: https://www.memorysafety.org/

[5]Twitter: http://twitter.com/theopenssf

[6]其他方式参与进来: https://openssf.org/getinvolved/

[7]Linux 基金会年度报告: https://www.linuxfoundation.org/wp-content/uploads/2021_LF_Annual_Report_120721c.pdf

[8]市政厅: https://openssf.org/townhalls/

开源社简介

开源社成立于 2014 年,是由志愿贡献于开源事业的个人成员,依 “贡献、共识、共治” 原则所组成,始终维持厂商中立、公益、非营利的特点,是最早以 “开源治理、国际接轨、社区发展、开源项目” 为使命的开源社区联合体。开源社积极与支持开源的社区、企业以及政府相关单位紧密合作,以 “立足中国、贡献全球” 为愿景,旨在共创健康可持续发展的开源生态,推动中国开源社区成为全球开源体系的积极参与及贡献者。

2017 年,开源社转型为完全由个人成员组成,参照 ASF 等国际顶级开源基金会的治理模式运作。近七年来,链接了数万名开源人,集聚了上千名社区成员及志愿者、海内外数百位讲师,合作了近百家赞助、媒体、社区伙伴。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-02-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 开源社 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
代码审计
代码审计(Code Audit,CA)提供通过自动化分析工具和人工审查的组合审计方式,对程序源代码逐条进行检查、分析,发现其中的错误信息、安全隐患和规范性缺陷问题,以及由这些问题引发的安全漏洞,提供代码修订措施和建议。支持脚本类语言源码以及有内存控制类源码。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档