构建安全软件供应链的12条建议

VSole2023-03-09 14:02:05

软件供应链攻击正成为一种常见的非法获取商业信息的犯罪形式。有研究数据显示,现代软件系统的底层代码中超过90%都是开源的,这意味着几乎所有软件的研发与应用都存在着一条供应链,包括各种组件的引用,以及在软件设计、开发、测试、部署和维护期间所涉及的各种环节,安全漏洞随时可能出现。

由于在企业软件供应链中可能导致安全风险的因素非常复杂,因此保障软件供应链安全并非纯粹的技术性问题,而是要综合考虑人、流程和知识的问题。企业组织在解决软件供应链安全问题时,需要基于软件应用的全生命周期来考虑,监控和保护其中的每个环节。

近日,《福布斯》杂志技术委员会的多位安全专家就现代企业组织如何构建安全软件供应链进行了研讨,并给出了12条加强软件应用安全的实用建议。

制定供应链安全计划,由CISO负责

保障软件供应链安全不只是某个部门的事,而是需要成为企业整体发展战略计划的一部分,并让左右人都能理解这样做的原因。为了确保软件供应链顺畅平稳运行,组织首先要做的一件事就是制定一项严密的安全防护计划,并聘请专职的首席安全官(CISO)来制定和落地这项计划,而不是只是将计划发布出来而已。

确保供应链的可观察性

很多企业长期以来只关注自身网络安全的防护,而忽略了供应商产品的安全状况,导致未经过严格安全认证与审核的访问进入企业,带来巨大风险。确保供应链的可观察性必不可少,软件供应链天然具有复杂性,只有通过持续的监控分析,企业才能保证它们的安全进化和发展,并确保长期可用性和安全性。

部署软件供应链管理系统

大多数企业对开发人员在研发时的开源代码引用和软件依赖关系缺乏足够了解。如果不能有效清点软件中的所有第三方组件,当严重的零日漏洞突然发生时,组织将无法了解自己是否会受到影响,哪些应用会受到影响,以及影响的严重性如何。如果组织部署了软件供应链管理系统,就能够准确判断威胁态势,并立即开始补救,避免安全事件发生

基于SBOM制定分类计划

软件材料清单(SBOM)最近备受行业关注,但应用SBOM只是基础,目的是可以了解软件产品的各个组成部分。更关键的是,企业应该基于已发现漏洞情报信息进行威胁分析,对识别出的各种威胁进行分类,并以此创建威胁处置流程。通过不断重复上述工作,企业还可以不断完善威胁处置流程。

运用零信任策略

企业组织在构建安全软件供应链时,积极运用零信任策略是一项非常实用的保障措施。在供应链合作中,通过遵循零信任原则,企业可以更好审核供应链服务的安全性,所有对于系统的访问都会建立在身份、端点、服务等一系列角色基础上,必须得到安全策略一致的验证和授权之后才能进行。

将安全检查融入开发流程

企业应重视开发安全运营(DevSecOps)。一种方法是将安全检查工作列为开发人员必须完成的任务之一。无论是软件设计过程中的威胁建模、错误修复,还是封堵代码中的安全漏洞,应用安全问题都需要被开发人员优先考虑,并成为其日常开发工作的一部分。如果这部分工作要求没有完成,就意味着其整个开发工作不能结项。

及时进行补丁更新

及时进行安全补丁和软件版本更新是构建安全软件供应链的重要步骤。为了保证第三方软件及开发者值得信赖,在部署安全补丁和版本升级之前,还需要有适当的措施来对其进行安全审查和监控。

贯彻安全编程和测试实践

企业在构建安全软件供应链时应该贯彻安全编程和测试实践,因为它有助于在开发过程的早期阶段识别和缓解安全漏洞,保护整个软件系统免受攻击。这一点很重要,因为软件供应链往往涉及多个第三方合作伙伴,所有开发团队及人员均应该保持一直的安全编程要求。

定期进行离线代码备份

科学的备份机制是防止数据窃取和勒索攻击的最后一条防线。如果企业大量应用了云计算技术,定期进行离线代码备份工作将非常重要。企业应该定期审查软件服务提供商,尤其是提供关键应用组件、销售系统、财务系统的提供商。一旦发现存在风险,就应该及时手动执行离线的数据备份或数据恢复。

制作一份检查清单

企业了解软件供应链是否安全的最好方法就是制作一份检查清单,并以此进行安全状态检查。检查清单可以让每个人都成为安全把关员,从而打造一条安全的软件供应链。不同类型企业对供应链安全检查的要求会有差异,但清单通常应包括以下8个检查点:访问控制、安全存储、加密、安全传输、漏洞管理、定期更新、跟踪系统和纠正措施。

应用安全协作平台

软件系统的安全性取决于其生命周期中的最薄弱环节。随着现代软件供应链的全球化趋势发展,跨不同平台和多个数据集进行协作开发的需求急剧加大。虽然许多企业组织已采用了基于云的协作开发平台,但目前软件供应链上协同沟通的最常见方式还通过邮件、电子表格和社交工具。企业应该购置统一的安全开发协作平台来降低隐患。

加强工程师的安全教育

保障数字化业务的安全开展已经得到业界普遍认同,企业组织也正在投入很多资源打造安全的软件供应链,并取得了一定的进展,但人依然是整个软件供应链中最薄弱的因素。因此,企业需要加强内、外部软件工程师的安全意识教育,帮助他们提高对新工具、新技术和新威胁的认识。

软件供应链系统
本作品采用《CC 协议》,转载必须注明作者和本文链接
信息通信技术(ICT)供应链包括硬件供应链软件供应链,通常涵盖采购、开发、外包、集成等环节。其最终的安全很大程度上取决于这些中间环节,涉及到采购方、系统集成方、网络提供方以 及软硬件供应商等【1】。ICT 供应链是所有其他供应链的基础,是“供应链供应链”【2】。
分析技术如今已经成为企业管理业务的基础,分析带来的一些好处实际上是相互叠加的。 越来越多的企业正在使用分析来增强其安全性。他们还使用数据分析工具来帮助简化物流流程,并确保供应链更有效地运作。这些企业意识到,分析对于帮助提高供应链系统的安全性是无价的。 到2026年,全球安全分析市场规模将超过250亿美元。人们需要了解分析在供应链安全中的更多好处。
鉴于国家关键基础设施和重要资源(Critical Infrastructure and Key Resources, CIKR)对ICT技术的依赖,通过国家安全审查识别和控制ICT供应链风险成为保障国家安全的重要手段。国外的做法通常是利用与外国投资相关的国家安全审查手段,我国则是利用网络安全审查的方式,这在我国的《国家安全法》中有所提及,网络安全审查是国家安全审查在关键信息基础设施保护方面的延伸。
新推出的开放框架寻求为公司和安全团队提供全面且可行的方式深入了解软件供应链攻击行为及技术。这项名为开放软件供应链攻击参考(OSC&R)的计划由以色列软件物料安全管理公司OX Security主导,评估软件供应链安全威胁,覆盖一系列攻击途径,比如第三方库和组件漏洞、构建及开发系统供应链攻击,以及被黑或恶意软件更新包。
凭借在软件供应链安全的丰富实践和技术积累,奇安信申报的“基于DevOps的供应链安全实践”和“开源软件安全治理体系”获2022安全守卫者计划优秀案例。中国信通院还公布了“业务安全推进计划”成员单位,奇安信集团入选为首批成员单位。
近日,OX Security发布了业界首个软件供应链攻击框架——OSC&R(开放软件供应链攻击参考框架),可帮助企业评估软件供应链安全威胁。
不幸的是,“软件供应链安全指南”再次强化了这种谬误。该指南要求集中化管理的安全团队对软件工程活动施加重大限制,从而实现“将安全作为重中之重”。为了安全起见,速度甚至可靠性都被视为合理的“伤亡代价”。对于政府情报部门而言,国家安全是主要使命,因此他们认为安全摩擦和障碍是值得的。该指南明确表示不鼓励开源软件。事实上,为了推销厂商的安全产品,指南甚至给出了诸如手动发布流程之类的危险建议。
随着软件产业的快速发展,现代软件大多数是被“组装”出来的,不是被“开发”出来的。各类信息系统的软件供应链也越发复杂多元,复杂的软件供应链会引入一系列的安全问题,导致信息系统的整体安全防护难度越来越大。如今软件供应链已经成为国内外对抗的焦点,直接影响关键基础设施和重要信息系统安全。
VSole
网络安全专家