功夫:2022-04-08 作者:ca88登陆平台
本文3409字阅读约需10分钟
从SolarWinds攻击到Log4j缝隙,,,,,,,再到近期以反战名义对开源软件供给链投毒事务,,,,,,,软件供给链安全问题愈演愈烈,,,,,,,因其带来的巨大风险引发全球关注。。。。。。追求有效、可落地的保险步骤成为软件供给链有关各方的共同指标。。。。。。
安全开发框架作为软件开产性命周期中各阶段安全实际、活动和措施的集中,,,,,,,可能领导使用者提高软件出产和产品的安全性,,,,,,,并且它们越来越多的将供给链成分思考在内,,,,,,,形成一个不休美满的保险系统。。。。。。
本文通过对六种主流安全开发框架的最新版本进行分析,,,,,,,总结了共性和差距,,,,,,,综合了供给链安全保险的重要环节,,,,,,,提出了操作指南细化的初步思路。。。。。。
六种框架蕴含安全软件开发框架(NISTSSDF)V1.1、软件联盟安全软件框架(BSAFSS)V1.1、SAFECode安全软件开发根基实际V3、软件保险成熟度模型(OWASPSAMM)V2.0、安全内建成熟度模型(BSIMM)V12和微软安全开产性命周期(MSSDL)2022。。。。。。
一、六种主流安全开发框架的异同点
六种主流安全开发框架面向开发组织,,,,,,,以软件的风险管控和缝隙防控为指标,,,,,,,以软件开产性命周期为主线。。。。。。浚浚浚?蚣芫∪《嗉斗掷嗟拇缶郑杭词紫然治罄啵,,,,,,而后逐级细化,,,,,,,名称分歧,,,,,,,但最终都细化为具体的安全要求或措施,,,,,,,以领导使用者。。。。。。
六种框架的最新版均较多涉及软件供给链安全方面的内容,,,,,,,如第三方组件/开源组件的安全管控、对供给商的安全要求、开发工具和环境的安全防备、构建部署环境的安全防护、第三方组件缝隙响应等;;;;;;;;SSDFV1.1作为应美行政令要求而出台的高层级实际框架,,,,,,,参考了其他5个框架的内容。。。。。。
各框架之间也存在着较大的差距,,,,,,,重要差距如表1所示。。。。。。

二、软件供给链安全保险的重要环节
通过对各框架具体内容的分析能够发现,,,,,,,除了自主研发软件代码和产品的安全措施表,,,,,,,软件供给链安全保险实际重要涉及4个环节。。。。。。
1、第三方组件的安全管控
作为最终软件产品的沉要组成部门,,,,,,,贸易、开源和其他第三方起源组件等“表来原料”的安全性是软件供给链安全保险首先要思考的问题,,,,,,,六种安全开发框架也都将针对第三方/开源组件的;;;;;;;;ぷ魑恋。。。。。。
SAFECode安全软件开发根基实际将第三方组件安全风险治理(TPC)作为单独一部门进行系统描述。。。。。。TPC治理共有4个步骤:TPC列表守护、评估来自TPC的安全风险、缓解或接受风险、监控变动,,,,,,,每个步骤又蕴含若干具体措施,,,,,,,如图1所示。。。。。。

其他几种框架关于第三方组件的安全要求也切合图1模型中的步骤,,,,,,,只是对某些方面的措施进行了细化,,,,,,,例如:
第三方组件列表守护方面
框架思考了起源信息和依赖关系的纪录与分析(SSDFPW.4.1、BSAFSSSM.2-2/SM.2-3、SAMMSB1/SB2/SB3、BSIMMSR2.4/SE3.6),,,,,,,以及第三方组件的获取、核准、切合性、保留和守护(SSDFPW.4.1/PW.4.4、SAMMSA3、MSSDL开源软件风险治理实际1)等要求;;;;;;;;
风险评估方面
框架思考了第三方组件的安全缝隙检测及发现(SSDFPW4.4/PW.7.1/PW.8.1/RV.1.1、BSAFSSVM.1-3、SAMMST1、BSIMMCR1.2、MSSDL开源软件风险治理实际2)、安全性评估(BSIMMSFD2.1)、使用复杂性评估(SAMMSA2)等实际;;;;;;;;
风险缓解方面
框架思考了第三方组件缝隙的公开和建复(SSDFRV.1.3、BSAFSSVM.1-3/VM.3)、打补丁(BSAFSSVN.1、SAMMEM1)、节造开源风险(BSIMMSR3.1、MSSDL开源软件风险治理实际3和4)等措施;;;;;;;;
在性命周期监管方面
框架思考了监控第三方组件的性命终止(BSAFSSEL.1-3)、定期代替已终止的第三方利用及依赖关系(SAMMOM2)等内容。。。。。。
幼结:所有框架对第三方/开源组件的守护、风险评估缓和解(出格是安全缝隙的检测和建复)都有具体的措施;;;;;;;;除SSDF和BSIMM表也都提到了对组件性命周期变动的监控。。。。。。它们都把第三方/开源组件的风险管控放在沉要地位,,,,,,,并且已具备系统性的管控措施。。。。。。
2、针对供给商的安全要求
若是说第三方组件是供给链中沉要的原资料,,,,,,,软件供给商无疑就是其中最重要的主观成分。。。。。。提高供给商的安全意识、能力,,,,,,,对其进行必要的安全要求,,,,,,,也是供给链安全中不成或缺的一环。。。。。。
安全开发框架中对供给商的安全要求重要蕴含对供给商进行评估并签署安全和谈、要求供给商使用一致的安全步骤并对其进行培训、明确供给商的安全事务响应责任等5个方面,,,,,,,具体如表2所示。。。。。。

幼结:多个框架都要求对供给商进行评估和签署安全和谈;;;;;;;;BSIMM对供给商的要求最为全面,,,,,,,涉及所有5个方面;;;;;;;;上述这些对供给商的要求贯通于软件开产性命周期的全过程,,,,,,,在安全层面将供给商与组织绑缚在一路。。。。。。
3、软件基础设施的安全性
软件产品的基础设施蕴含开发、构建、部署、运维等过程中所使用的工具和环境等,,,,,,,这些设施通常由第三方提供,,,,,,,近年来产生的供给链攻击事务也多与其有关,,,,,,,如Codecov供给链攻击事务,,,,,,,因而它们的安全性也成为目前关注的焦点。。。。。。6种安全开发框架对各阶段基础设施的安全性也有较为具体的要求:
开发工具和环境的安全性方面
框架思考了开发环境的隔离、开发终端的加固(SSDFPO.5.1/PO.5.2);;;;;;;;内部代码库和加密服务密钥;;;;;;;;ぁ⒆钚掳婵⒐ぞ叩氖褂谩⒖⒖蚣艿陌踩渲谩⒖⒒肪辰蛹那可矸萑现(BSAFSSDE.1-2/DE.1-3/DE.2-1/DE.2-2/IA.1-1);;;;;;;;开发环境安全质量评估、SDK之类的库和组件及系统的安全性评估(SAMMSA1/AA1)等措施。。。。。。
安全构建方面
框架思考了使用最新版本和核准的编译器等构建工具(SSDFPW.6.1/PW.6.2、SAFECode实际、MSSDL实际8)、对构建工具进行查抄验证及强造执行安全基线(SSDFPW.6.1、SAMMSB1/SB3)、选择适当的编译个性并进行安全配置(SSDFPW.6.2、BSAFSSDE.2-3/DE.2-4/DE.2-5)、构建过程的自动化(SAMMSB2)等措施。。。。。。
部署和运维环境的安全性方面
框架思考了容器和虚构化环境的使用编排及部署自动化(BSAFSSDE.2-6、SAMMSD2、BSIMMSE2.7)、部署的安全查抄和安全配置(BSAFSSDE.2-6、SAMMSD2、BSIMMAA1.1/SE2.2)、确保装置在正确硬件和授权用户的机造(BSAFSSSM.6-1)、可部署工件风险数据的颁布(BSIMMCMVM3.6)、主机网络及云安全能力保险(BSIMMSE1.2/SE2.6)、基础运维设施安全的验证(BSIMMCMVM3.5)等措施。。。。。。
幼结:BSAFSS和SAMM在3个方面均有涉及;;;;;;;;SSDF更关注开发和编译环境的安全;;;;;;;;BSIMM在部署和运维环境安全方面的实际更多一些,,,,,,,出格是运维;;;;;;;;SAFECode和MSSDL重要对安全构建进行了要求。。。。。。固然各有侧沉,,,,,,,但所有框架都有对基础设施安全;;;;;;;;さ囊螅,,,,,,并且相信后续版本中此类措施会越来越多。。。。。。
4、软件自身安全性的;;;;;;;;
软件(蕴含补。。。。。。┑奈痹旌痛鄹耐枪└垂セ鞯闹匾苛┲。。。。。。软件齐全性;;;;;;;;ぞ褪峭ü橹と砑起源、授权、齐全性等信息的一致性来预防此类问题的机造,,,,,,,代码署名和起源信息验证是其中最为重要的步骤;;;;;;;;此表,,,,,,,补丁的安全性也是软件自身;;;;;;;;さ某烈棵。。。。。。浚浚浚?蚣艿挠泄卮胧┰毯
软件齐全性;;;;;;;;し矫
措施蕴含成立代码署名和第三方工件署名之类的软件齐全性保险机造(SSDFPS.2.1/PS.3.1、BSAFSSSM.4-1、SAMMSD3、BSIMMSE2.4/SE3.2)、软件起源数据的网络守护及验证(SSDFPS.3.1/PS.3.2、BSAFSSSM.4-2、BSIMMSE2.4)、每个交付产品特定软件版本的唯一标识(BSAFSSSM.4-3)等。。。。。。
补丁安全性防护方面
措施蕴含对补丁进行职能和安全测试(BSAFSSVN.1-3)、通过可信和自动化渠路交付补丁(SSDFRV2.2、BSAFSSVN.2-1)、对补丁进行署名以确保其齐全性(BSAFSSVN.2-2)、追踪打补丁流程对SLA的合规情况(SAMMEM3)等。。。。。。
幼结:无数框架对软件齐全性;;;;;;;;そ辛艘螅,,,,,,并遵循主流的防篡改步骤;;;;;;;;在补丁安全性防护方面,,,,,,,BSAFSS从测试、传输、防篡改等角度进行了要求,,,,,,,最为全面。。。。。。
三、安全开发框架重要领导作用思虑
安全开发框架以软件开产性命周期为主线,,,,,,,基于组织和企业的实际和操作经验,,,,,,,并将供给链有关的安全措施纳入,,,,,,,目前各类安全开发框架的内容也较为丰硕,,,,,,,对软件供给链安全保险工作拥有肯定的领导作用,,,,,,,重要体此刻以下两点:
一是在直接使用方面,,,,,,,鉴于框架分歧的假造布景,,,,,,,软件供给链安全决策和战术造订等有关人员可更多的参考了局导向框架的内容,,,,,,,关瞩指标和成效,,,,,,,并结合自身的现实情况,,,,,,,从中拔取适当的实际作为战术造订和执行的基。。。。。;;;;;;;;具体安全执行等人员可较多的参考过程导向的框架,,,,,,,关注实现的技术和步骤,,,,,,,并结合自身情况选择性执行。。。。。。
二是在进一步细化后使用方面,,,,,,,由于各框架的很多内容之间存在着对应关系,,,,,,,因而将来可思考将了局导向和过程导向的两类框架结合起来,,,,,,,拔取便于落地的实际,,,,,,,并进一步细化每项实际对应的具体操作、技术、机造和工具等内容,,,,,,,形成覆盖“保险了局->过程步骤->具体操作->辅助工具”的软件供给链安全保险字典式具体执行规划,,,,,,,满足有关各方人员的需要。。。。。。
关于作者
董国伟,,,,,,,虎符智库专家,,,,,,,ca88登陆平台代码安全尝试室高级专家,,,,,,,博士,,,,,,,从事网络安全、软件安全、代码审计和缝隙分析有关工作近20年。。。。。。
旗下网站
关于ca88登陆平台
95015服务热线
微信公家号
立即拨打