上周,由中国网络安全产业联盟(CCIA)主办,默安科技承办的“新形势下的软件供应链安全探索与实践”线上技术沙龙成功举办,反响热烈。默安科技特此推出软件供应链安全方案专题,欢迎业内人士交流。 沙龙PPT获取方式
“默安科技”公众号对话框回复“供应链安全”获取下载链接。
从近年的重大安全事件、实战攻防演练中可以看出,软件供应链攻击已成为突破业务防线的新路径之一,所利用的风险很多在软件供应链源头已经被引入。软件供应链安全的专项治理是当下安全工作重点之一,主要原因梳理如下:
开源软件之间依赖关系复杂,开源软件漏洞随着GitHub等托管平台大量传播,漏洞治理困难;另外还存在开源许可证冲突风险、知识产权风险。
软件复杂化导致供应链过长,引入风险环节多,增加安全检测和维护的难度,软件供应链使风险得以自上而下扩散。购买商业软件或外包开发往往疏于对安全的验收,设计缺陷、深层次漏洞难以发现。
现有软件供应链解决方案覆盖不全、自动化程度低、脱离实际业务,无法有效在敏捷开发和DevOps开发模式下发挥作用。
目前很多已发布的法律规范中已经出现不少与软件供应链安全相关的要求。例如《网络安全法》、《关键信息基础设施安全保护条例》、《网络安全审查办法(修订草案征求意见稿)》、《信息安全技术 网络安全等级保护基本要求》等。
默安科技建议首先明确治理的边界,使团队将治理的重点聚焦到关键业务和风险点上。其次,不论是自行研发、驻场开发、委托开发还是直采模式,都涉及了大量部门和人员,需参照一套科学的方法,拉通软件供应链各环节的协作。同时,遵循原有的业务规范和习惯,以寻找最符合本单位实际情况的落地路径。
合格的目标既是一个单位现状和痛点的抽象概括,也是后续治理方向的重要指导。默安的治理团队会在这一阶段充分调研目标单位的综合情况,包括业务需求、合规监管、内部事件、外部攻击、安全储备等因素,帮助制定短、中、长期目标。
在具体治理过程中,首先需构建可度量的技术平台,通过量化数据与度量标准综合判断安全风险。该平台应具备两项关键能力:一是善于发现软件供应链的各类风险;二是对风险从发现到解决的闭环跟踪。
01 要准确发现软件供应链的风险,通常从开发环境和工具、第三方组件、交付代码、运行环境等几个方面来考量。
· 在自主研发和驻场开发情况下 ,一些单位会自建组件库,维护组件库安全性应考虑整治私库开源组件与自研组件漏洞、持续监控私库安全风险、设置哨卡来确保入库组件的安全性等方面。同时对开发工具及环境做到定期安全检测与修复。默安雳鉴SCA、IAST和巡哨·智能资产风险监控系统可实现这一目标。· 在委托开发及直采情况下,单位应将检测重点放在验收环节,检测软件的代码漏洞、第三方组件漏洞、合规风险等问题,通过默安的雳鉴SCA、IAST和SAST产品组合加以解决。
· 对于运行环境风险,需同时考虑内外部风险,同时一些使用Docker环境的业务还应重点关注容器安全问题。默安巡哨、剑幕·主机安全检测系统和尚付·容器安全管理系统的大资产组合能够解决此类风险。
02可度量的技术平台如何跟踪和闭环软件供应链的各类风险?
默安科技根据大量客户的实际需求,目前已建设三同步流程管理平台,并通过治理团队帮助客户达到以下效果:- 收集和整合核心环节的风险数据
- 打通对风险处置结果的反馈
- 建立流程与卡口,控制上线标准和残余风险
- 在平台运营过程中不断反馈和优化上线标准基线和平台流程,最终达到基本平衡
有了治理平台后,下一步需制定合理的软件供应链安全基线与卡口位置。默安治理团队善于设计流程与控制标准,输出与卡口位置呼应的安全基线,确保卡口之前的环节没有重大的软件供应链安全风险残留。
每个应用的软件供应链风险来源不同,安全要求也多有差异。默安治理团队为应用打上标签,合理分配有限的软件供应链安全检测资源和安全人员精力,达到应用系统“等级保护定级”的效果。
在项目初期同步规划软件供应链安全需求非常有必要,也就是说,对软件质量要求的内容尽早告知开发团队或供应商,同时需求前置也能避免供应链风险滚雪球式的爆发。默安科技提供安全需求分析与威胁建模服务,利用雳鉴STAC威胁建模系统快速输出安全需求与设计报告,并提供对应的测试用例,便于验证。
与软件供应商的关系靠契约维系,所以默安治理团队首先会建议在单位制度中明确对软件供应商的基本安全要求,并以文字形式落实到双方文件条款中,覆盖合作全周期。在具体项目中单位也可以提出对方需具备的基本安全能力(如对代码的漏洞检测、开源组件管控等),间接敦促和提升软件供应商的安全开发能力。
默安科技重视运营,软件供应链安全治理的落地离不开经验丰富的运营治理团队细细打磨,而不是简单的产品迭代就可以解决的。
配套服务体系示意图
广义的软件供应链涉及面很广,本文仅在狭义的软件供应链范围中分享治理经验。软件供应链安全治理很难一步到位,建议先小范围试点、后分阶段实施。