开源安全如何落地?OpenSSF发布多份生命周期安全指南

8月底至9月上旬,OpenSSF接连发布了4项有关开源软件安全的指南,包括《评估开源软件的简明指南》、《开发更安全软件的简明指南》、《安全研究人员与开源软件项目协同漏洞披露(CVD)指南》、《NPM最佳实践指南》,给出了开源软件使用、开发、漏洞报告、包管理等方面的安全最佳实践 。
本文介绍了这些指南的主要核心内容 。
使用环节:
《评估开源软件的简明指南》
软件开发人员在使用开源软件依赖项或工具之前,基于安全性和可持续性的考虑,应该对其潜在的依赖关系进行评估,以确定候选,该指南即提供此方面的指导 。
指南共包括9个方面:(1) 是否尽量减少依赖的数量(使用现有的依赖关系,不再增加);(2) 是否确保版本来源安全(非个人发布或攻击者控制的版本);(3) 是否有持续的维护;(4) 是否有其开发者增强安全性的证明;(5) 是否易于进行安全配置;(6) 是否有关于如何报告漏洞的说明;(7) 是否有重要用途;(8) 是否考虑了许可证的影响;(9) 对其代码的评价 。
没有维护的开源软件是一种风险 。对于开源软件持续维护的评估,指南列出了近期重大活动、最后一次发布时间、维护者的数量等5方面指标 。奇安信代码安全实验室于2021和2022年发布的两份《中国软件供应链安全分析报告》也关注到了这一领域,通过对开源生态中一年未更新版本、一年更新超100次的开源软件数量,以及关键基础开源软件的维护状况进行统计,发现开源软件维护方面的现状不容乐观 。
开发者增强安全性的证明方面,指南列出了11项评估指标,包括是否具备OpenSSF最佳实践徽章、是否检查了开源软件的OpenSSF记分卡值和已知漏洞、依赖项是否是最新的、是否及时修复了bug特别是安全bug、是否使用SAFECode《软件保障评价指导原则》、对于OpenChain《安全保障参考指南》的符合性如何等 。
对开源软件代码的评价方面信息安全软件,指南列举的指标包括开发人员使用安全的开发方法、静态分析工具发现的首要问题等6项 。
开源安全如何落地?OpenSSF发布多份生命周期安全指南
【开源安全如何落地?OpenSSF发布多份生命周期安全指南】开发环节:
《开发更安全软件的简明指南》
该指南是针对所有软件开发人员在软件开发、构建和发布时的简明指南,共25条建议,主要覆盖4个方面的内容 。
依赖项安全性方面,建议:在选择软件作为直接依赖项之前对其进行评估(基于《评估开源软件的简明指南》),只在需要时添加它,并再次检查它的名称,以防止误植域名攻击;使用包管理器自动管理依赖项并支持快速更新;使用软件组成分析(SCA)工具等持续监测软件直接和间接依赖项中的已知漏洞,快速更新易受攻击的依赖项;更新依赖项至最新 。
漏洞分析和报告方面,建议:在CI管道中使用多种工具的组合来检测漏洞;实现自动化测试;实施第三方安全代码审查/审计;重点记录如何报告漏洞并为其做好准备(参考《安全研究人员与开源软件项目协同漏洞披露(CVD)的指南》);将项目中的漏洞通知社区 。
增强完整性、透明性和维护水平方面,建议:使用标准工具和签名格式为项目的重要发行版本签名;提高SLSA级别,以加强构建和分发过程的完整性从而抵御攻击;发布并使用软件物料清单(SBOM),以帮助用户验证资产、识别已知的漏洞和潜在的法律问题;有清晰的管理,并努力增加积极的、值得信赖的维护者;确保特权开发人员使用多因子身份验证 。


以上关于本文的内容,仅作参考!温馨提示:如遇专业性较强的问题(如:疾病、健康、理财等),还请咨询专业人士给予相关指导!

「辽宁龙网」www.liaoninglong.com小编还为您精选了以下内容,希望对您有所帮助: