微软在那里简化了 SDL:
“安全开发生命周期 (SDL) 是一个专注于软件开发的安全保证流程。”
“本文概述的流程设定了SDL 合规性的最低门槛。也就是说,组织并不统一 - 开发团队应以适合可用人才和资源的方式应用 SDL,但不损害组织安全目标。”
对于有兴趣采用安全 SDL 但没有部署安全 SDL 或害怕它所包含的内容的商店,您认为最简单的安全 SDL 是什么?
微软在那里简化了 SDL:
“安全开发生命周期 (SDL) 是一个专注于软件开发的安全保证流程。”
“本文概述的流程设定了SDL 合规性的最低门槛。也就是说,组织并不统一 - 开发团队应以适合可用人才和资源的方式应用 SDL,但不损害组织安全目标。”
对于有兴趣采用安全 SDL 但没有部署安全 SDL 或害怕它所包含的内容的商店,您认为最简单的安全 SDL 是什么?
好问题。
首先,您引用的“最低”是指微软的最低要求政策,不一定是“行业最佳实践”最低。并不是说我说错了,但 MS-SDL 本身确实继续说他们的 SDL 不一定适合微软以外的任何组织......事实上,像 Michael Howard 这样的 MS-SDL 架构师经常——引述说:
不要做我们所做的,做我们所做的。
也就是说,与其说是文件中具体出现的规定要求(尽管它们可能大多非常好),而是他们反复进行研究,包括基于风险的分析、历史指标比较、趋势分析、根原因分析,在不同团队中进行试验以查看“需要”什么等。
没有定义明确、简单的 SDL,您只需下载安装即可确保安全。MS 的这一点是正确的——您确实需要根据您的特定组织、您的团队、他们的熟练程度、他们正在构建的产品类型、当前的开发过程、风险状况等来定制您的 SDL。并且这确实是“尝试”的最佳解决方案......
此外,SDL 不是一次性的事情,甚至不是定义和实施正确策略的问题。构建 SDL 本身就是一个持续的过程,诚然可能需要几年时间才能完全实施。微软进行了多次迭代,直到他们的 SDL 达到了堪称典范的水平……而且又花了几年时间才真正在他们的(大多数)开发人员中根深蒂固。您不能真正“试用” SDL,因为收益通常不会在一两个月内显现出来 - 这确实是一项长期投资。
因此,对于刚开始并希望定义其 SDL 的组织 - 我建议慢慢来,让有经验的人在此过程中指导他们:
现在,真正的问题是上面的列表,看起来很多。
但它确实不是,因为大多数子弹都是“元活动”。其中一些可能应该由经验丰富的安全人员/gal/顾问来完成,他们在与您类似的环境中实施 SDL 方面有经验。诚然,仍然不是那么简单,但是当我这样做时,我将重点放在最小的干扰和持续的投资上。它可以做到轻量级。
我曾经写过一篇非常好的文章,称为持续预防安全生命周期(CPSL),并进行了后续回顾。我认为它们现在有些过时了,但它们正是您所要求的。