2022年9月,白宫发布了一项新的行政命令,要求美国联邦机构必须使用合规的软件供应商提供的软件,这些软件供应商必须提供自己的合规性证明——证明自己(或提供第三方证明)是如何遵守SSDF安全软件开发框架的,例如直接提交软件物料清单(SBOM)。主要目标是加强软件供应链的安全性,提升国家网络安全防御能力。
当前,软件已经成为支撑社会正常运转的最基本元素之一,但伴随网络攻击的不断左移,针对软件供应链的攻击事件频发,软件供应链已经成为网络空间攻防对抗的焦点,直接影响关键基础设施和重要信息系统安全,软件的安全性问题正在成为当今社会的根本性、基础性问题。
与此同时,云原生平台作为一种新型的软件开发方式,近年来受到了越来越多的关注和应用,尤其是在应对大规模数据和复杂业务场景方面。同时,随着技术的不断发展和完善,云原生技术也在不断创新和演进,形成了一个日益丰富的生态系统。但是,当前云原生系统普遍欠缺安全防护手段,攻击的得手率极高。因此,为加快数字化进程、筑牢安全防线,企业必须提高其软件供应链的安全性。
为什么SBOM是供应链安全的关键驱动因素?
过去,许多企业会使用内部开发应用程序,其好处在于开发人员能够根据企业实际情况进行定制开发使得业务流程更加顺畅,安全团队也能控制整个代码库,极大程度上实现源代码安全管理。然而,今天,对于需要频繁推出软件更新或改进的企业而言,这种方法已不再适合。
相比之下,开源软件的使用可以支持企业的快速开发和发布周期,为开发团队提供可以集成到应用程序堆栈中的现成组件。这不仅有助于加快软件开发的步伐,而且随着开源生态系统的发展和演变,更多更先进、更方便的组件将被纳入到企业日益苛刻的开发和发布计划中。
在这种情况下,SBOM能够帮助企业快速够识别和跟踪所有第三方组件,包括开源组件。从确保合规性,到跟踪关键更新和补丁的状态,可以说,SBOM不仅是有用的,而且是关键性的。
最佳SBOM实践
1、最小必需元素
美国NTIA在2021年7月发布了SBOM所包含的最小必需元素,包括数据字段(Data Fields)、自动化支持(Automation Support)、实践和流程(Practices and Processes)。SBOM最小必需元素描述了实践过程中需要的元素最小集,企业还需要扩展额外的信息,构成适合自身的标准SBOM清单。同时,随着应用程序组件的持续演进,企业有义务做到维护并更新。
2、确保数据的完整性
想要创建或更新SBOM,企业需要审计其包含的所有内容,例如版本号和许可证。同时,SBOM中的所有信息必须来自可信来源,并经由第三方验证。
3、确定可能影响用户的潜在风险
例如,SBOM清单应该清楚地显示应用程序的当前状态,以及应该采取哪些步骤实现保护;例如,正在使用的现有文件和组件,以及是否存在安全问题或是否需要关注或监控。还应包括其他详细信息,包括开源许可证、已知漏洞、错误软件组件等。
SBOM主要价值在于帮助企业提高软件透明性,并且形成在软件供应链环节中便于交换传递的接口标准,同时能够描绘软件资产信息,将SBOM作为软件资产管理能力基础,围绕SBOM建立较为完善的软件供应链治理体系。通过实施、创建、维护SBOM,企业可以在不断变化的数字市场打造企业竞争新优势。