随着当今网络攻击的增加,企业如何提高开源供应链的安全性?开源是一种了不起的资源,它不仅可以促进社区发展,而且推动创新是构建现代应用程序的必要条件。然而,开源软件也有其自身的安全威胁和挑战。Tidelift首席执行官DonaldFischer解释并分析了为什么以及如何加强开源供应链的安全性和弹性。今天,根据研究公司Forrester发布的数据,超过50%的财富500强公司在其开发项目中使用开源软件。到目前为止,开源的价值已为大多数企业所熟知:它加速了应用程序的开发,使企业能够基于免费代码更快地创建和改进应用程序。然而,开源是免费的,最初获取成本为零,但随着时间的推移,保持其安全和良好维护的成本往往是巨大的。更重要的是,不有效管理开源供应链的影响可能很严重。例如,一家美国政府部门机构最近报告说,它投入了33,000小时来修复最近的Log4Shell漏洞,仅该机构的工程时间就至少有400万美元。在Equifax未能更新易受攻击的ApacheStruts软件包版本后,该软件包暴露了数百万消费者数据记录,他们支付了7亿美元来解决FTC、消费者金融保护局和所有50个州的诉讼。难怪当今天的商业领袖看到这样的例子时,拥有强大的开源供应链管理战略的重要性变得显而易见。IDCDevOps和DevSecOps解决方案副总裁JimMercer建议企业主动制定管理开源的计划,以便在保持安全的同时最大限度地发挥开源的优势:“由于不断变化的威胁环境,企业需要一个计划来管理他们的OSS供应链的健康和安全。必须在技术和业务利益相关者之间对战略进行社会化以获得支持,并且应该包括关于OSS消费、OSS社区参与和安全尽职调查标准的企业指南。”有效的开源供应链管理计划必须解决内部安全和维护挑战以及外部软件供应链弹性挑战。解决内部开源安全和维护挑战许多企业已经认识到保持他们使用的开源组件安全和更新的挑战.为了解决这些问题,企业应该制定一个计划来全面回答以下问题,然后在整个企业范围内广泛传播答案。其中许多问题对于单个开发人员自己来说是极其困难的。企业如何决定谁负责保持开源组件的安全和最新,以及谁负责修复它?企业是否有一个系统来确定哪些组件被批准使用,开发人员如何找到这些答案?如果开发者想引入一个没有被批准使用的组件,他们是如何做的,需要哪些人参与?谁来评估引入组件的安全和维护实践以确保它们符合企业自己的标准?企业中谁制定和维护这些标准?值得庆幸的是,现在出现了解决此类问题的行业最佳实践的新兴解决方案。企业创建了一个经过审查和批准的组件目录,这些组件可用并由整个企业的开发人员集中管理。随着时间的推移,随着越来越多的组件被批准,该目录的大小会继续增长,从而使开发人员能够访问越来越多的组件,而无需自己研究它们。这可以提高开发人员的工作效率并降低业务风险。解决供应链弹性挑战虽然管理开源的内部安全和维护挑战有据可查,但开源的一个不太明显但更有害的问题是对上游开源组件本身的健康和安全的影响。威胁越来越大。Log4Shell是一个很好的例子,在美国政府网络安全审查委员会(CSRB)的一份报告中得到强调,该报告指出,开源社区目前还不够强大,无法确保代码符合企业标准和政府指导方针。但实际上,当志愿者维护大多数开源组件时,企业应该问一个关键问题:谁来承担验证开源包是否符合这些标准的工作?显而易见的答案是,维护人员将是从事这项工作的人,但是期望他们“真诚地”承担额外的责任并且没有流程和工具的支持是不应该假设的,这对任何企业都是危险的。主动应对安全和维护以及供应链弹性挑战主动与他们大规模使用的开源项目的维护者合作,并向他们提供直接的经济激励,这应该是任何企业开源治理计划的关键部分。开源维护者拥有保护其项目的知识和权力。确保从其工作中受益的企业获得公平报酬符合其最大利益。与此同时,应用程序开发领导者应该确定可以帮助他们理解开源软件供应链安全新兴行业标准的工具,并根据这些标准主动评估开源包,同时随着时间的推移建立一个不断增长的预先审查和目录列表批准的开源组件。大多数企业对开源的使用将不可避免地继续增加,像Log4Shell这样的软件供应链攻击将变得更加频繁。在此背景下,所有使用开源的企业都应评估他们是否拥有完善的开源软件供应链管理策略,以应对开源使用带来的安全、维护和弹性挑战。
