以下是衡量安全左移实施效果的一些方法:
对比安全左移实施前后软件项目在不同阶段(如开发、测试、上线后)发现的安全漏洞数量。如果在安全左移后,早期阶段发现的漏洞数量增多,而上线后发现的漏洞数量显著减少,这是一个积极的信号。例如,在没有实施安全左移时,上线后可能发现大量安全漏洞需要紧急修复;而实施后,上线前就能解决大部分漏洞,上线后的漏洞数量大幅降低。
评估漏洞的严重程度分布。安全左移有效的话,严重漏洞(如可能导致数据泄露、系统瘫痪的高危漏洞)应该在早期被识别和修复,使得上线后严重漏洞的比例明显降低。可以使用通用漏洞评分系统(CVSS)等标准来衡量漏洞的严重程度。
计算安全修复成本,包括人力成本、时间成本等。安全左移将安全工作提前到开发流程的早期阶段,此时修复安全问题的成本相对较低。统计在安全左移实施前后,用于安全漏洞修复的总成本变化情况。如果在安全左移后,安全修复成本占总项目成本的比例降低,说明安全左移起到了积极作用。
估算由于避免了安全事故(如数据泄露造成的声誉损失、业务中断带来的经济损失等)而产生的价值。安全左移通过提前预防安全问题,减少了安全事故发生的可能性,从而避免了潜在的巨大损失。
衡量安全活动在开发流程各个阶段的参与度。例如,在需求分析阶段是否有明确的安全需求定义,在代码审查阶段是否有专门的安全审查环节等。可以通过制定安全流程检查表,定期检查各个开发阶段安全活动的执行情况,计算安全活动执行的完整性和准确性。
观察安全左移对开发周期的影响。虽然安全左移增加了一些前期的安全工作,但如果能够有效避免后期因安全问题导致的大规模返工,总体上开发周期可能不会延长,甚至可能缩短。对比安全左移实施前后项目的平均开发周期以及按时交付率等指标。
对团队成员进行安全知识和技能的培训是安全左移的重要部分。通过考试、实际操作评估等方式来衡量团队成员在安全知识、安全编码技能等方面的提升情况。例如,在培训前后对开发人员进行安全编码测试,比较他们的得分和代码质量的变化。
通过调查团队成员对安全的重视程度、在日常工作中主动考虑安全问题的频率等方面来评估团队安全文化氛围的改善情况。例如,可以在团队内部进行安全文化问卷调查,统计成员对安全工作的态度转变等数据。