随着软件供应链攻击日益普遍,Gartner 将其列为2022 年的第二大威胁。Gartner 预测,到 2025 年,全球 45% 的组织将遭受一次或多次软件供应链攻击,是2021年的3倍。这些攻击一旦成功,将给企业带来毁灭性打击,因此如何做好软件供应链管理成为企业关注的重要课题。

影响开源软件供应链的风险因素

目前国内软件供应链发展迅速,开源占比逐年增多,但问题也随之而来,在开发过程中使用开源代码可能会面临众多风险威胁。

1、安全漏洞

开源供应链安全与漏洞风险密不可分,开源软件因具有源代码公开、组件依赖关系错综复杂等特点,一旦出现漏洞,可能会危及数据的机密性、完整性或可用性。

2、开源许可证

开源软件一般都有对应的开源许可证,它对软件的使用、复制、修改、传播方式等进行了约束,如果使用者未按照相应的开源许可协议使用开源软件,则面临违规风险。

3、第三方供应商

软件供应商、合作伙伴和服务提供商都在现代软件生态系统中发挥着重要作用。由于上下游供应依赖关系,供应商为需求方提供的服务与产品都可能将风险引入至需求方。

企业应如何做好软件供应链安全管理?_开源代码

4、软件维护

软件的持续维护能力是影响软件供应链的关键因素,很多开源软件由于缺乏持续维护的资源和能力,从而导致开源软件供应链风险难以处置,并导致风险的积累和传播,进一步增加了开源软件供应链风险。

5、公共存储库

开源软件的源代码基本都存储在公共存储库中,并面向互联网所有人公开。这种开放性增加了开源代码的透明度,使得开发者可以通过互联网进行协作,但是,也使得黑客也能从开源代码中找到容易被利用的攻击点。

如何做好软件供应链安全管理

1. 完善管理措施

软件开发过程中涉及多个环节和组织之间的合作,因此需要通过整个软件生命周期的控制方法来确保供应链的安全。企业可以通过建立健全内部安全管理制度和标准规范,将软件供应链安全融入已有的安全管理、安全组织和安全技术体系中,例如:治理原则、人员组织、风险审查、技术合规审查、软件管理、评估体系等,做到有标准可依,有制度可管。

2. 定期进行安全测试和漏洞评估

漏洞是保持供应链安全的关键原因之一,及时发现漏洞风险并进行处置是保障供应链安全的重要措施。企业可以通过建立合理有效的工具和流程,定期对软件开发过程中的不同阶段进行测试与评估,及时发现供应链风险,从源头上做到供应链安全的联防联控。

企业应如何做好软件供应链安全管理?_安全管理_02

3. 第三方审计和认证

为了确保供应链的可靠性和安全性,完成开源治理工作后,可以通过第三方审计和评估来进行软件相关能力的认证。

4. 实施最小权限原则

对访问需要审计与安全管控资源的人员,制定严密的访问控制策略。尽量做到在整个供应链中实现最小权限原则,以确保每个组件和人员仅拥有软件正常运行所需的必要访问权限。

5.对相关人员进行定期培训

积极组织相关人员开展开源知识培训,增强开源意识,提高开源技术专业知识水平。

软件供应链安全治理是较为复杂的系统性工程,需要长期持续的建设,需要企业将安全理念植入企业文化,并根据市场发展不断优化产品,在探索中逐步实现软件供应链安全。