通过成熟模型内建安全BSIMM改进软件

日期: 2010-03-03 作者:Michael Cobb翻译:李博雯 来源:TechTarget中国 英文

所有公司都想要构建功能强大而又安全的软件,然而它们面临的共通问题是不知道创建强壮的软件所需的各个准则的最佳实践是怎样的。确实,有很多有用的安全倡议、组织和监管规范,但是把它们采纳到精良高效的应用中可能会是一项困难的工作。这部分是由于很多建议都是基于理论化理想化的情况。   想要寻找基于在现实世界中已经实现的框架的人应该去看看BSIMM(Building Security in Maturity Model 成熟模型内建安全)   BSIMM被认为是智慧和现行实践的汇集,它是三个软件安全专家的心血的结晶——Gary McGraw,Brian Chess和Sammy Migues——他们分析了来自……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

所有公司都想要构建功能强大而又安全的软件,然而它们面临的共通问题是不知道创建强壮的软件所需的各个准则的最佳实践是怎样的。确实,有很多有用的安全倡议、组织和监管规范,但是把它们采纳到精良高效的应用中可能会是一项困难的工作。这部分是由于很多建议都是基于理论化理想化的情况。

  想要寻找基于在现实世界中已经实现的框架的人应该去看看BSIMM(Building Security in Maturity Model 成熟模型内建安全)

  BSIMM被认为是智慧和现行实践的汇集,它是三个软件安全专家的心血的结晶——Gary McGraw,Brian Chess和Sammy Migues——他们分析了来自软件厂商、技术公司和金融服务业界的9个顶尖软件安全项目。这个模型使用了软件安全框架(software security framework——SSF)来组织软件安全任务。这能帮助公司找准自身的安全实践和其他竞争对手的差距,并使企业考虑如何努力在将来缩短这一差距。

  这一软件安全框架包括如下12类实践中的110种行为:

  • 策略和度量 —— 期望的透明度和结果问责制
  • 攻击模型 —— 建立和公司相关的个性化的攻击知识库,建立数据分类方法并识别可能的攻击者。
  • 架构分析 —— 发现并纠正安全漏洞,分类风险并进行设计复审。
  • 入侵检测 —— 发现并纠正安全漏洞,提供完整性检查以及内部/外部测试。
  • 遵从与策略 ——提供对所有利益相关者以及软件开发生命周期活动的说明性的指导方针。
  • 安全功能与设计 —— 创建对安全功能、架构和模式的个性化的、主动的指导方针和知识。
  • 代码复审 —— 检测并纠正安全漏洞,执行编码规范并同时使用自动和手动的复审。
  • 软件环境 —— 通过使用软件行为监测和诊断等流程来进行授权的改变并发现未经授权的改变和行为的能力。
  • 培训 —— 建立知识型团队来发现流程中的错误。
  • 标准和要求 —— 创建给股东的说明性的指导方针和软件安全决策的文档。
  • 安全测试 —— 通过使用类似模糊测试的方法来检测并纠正安全漏洞,确保符合标准并复用经批准的安全功能。
  • 配置管理和漏洞管理 —— 跟踪对软件的经授权的改变,并发现未经授权的改变,着重于对事件的响应。

  每种实践又被分为三个成熟度等级,以明确何种行为应该被首先处理,而哪些需要优先。尽管这不是一本完整的软件安全操作指南,它还是提供了很多的观点和基本原则。每个行为都有一个声明的目标,一个描述和一个简单的例子来说明至少一个公司是如何实现它的;有些非常的简单,但很有效。例如,在培训实践中有一个行为是要求软件安全团队(SSG)有一个公开的实验室阶段——这段时间里开发人员可以参与进来并讨论安全开发或者特定的编码问题——来为其它部门提供非正式的资源。

  你可能会问,什么是SSG?是这样的,所有参与研究的9家公司都一致认为他们项目的成功归功于他们有一个专注于软件安全的内部小组(软件安全团队)。它包括高级管理层、系统架构师、开发人员和管理员。

  由于BSIMM是基于各个公司的具体实践,它可以被看作是一种事实的标准。毫无疑问,它提供了判别某做法是否是通常被采纳的实践做法的真实而有说服力的依据。而且,不像很多官方的标准,它认同并非所有的公司都需要达到相同的安全性目标。没有一个公司会需要执行所有的110个行为,而正如BSIMM图表数据所示,这9个公司的平均成熟度差别极大。不过,这个模型确实提供了一个潜在的度量所有公司的基准,并演示了其流程。这可能极具吸引力。

  在过去的几年里,大家已经达成了共识,认为软件不能光靠周边或者其它的防御手段;它需要内置的安全性。微软通过采纳并分享SDL(Secure Development Lifecycle安全开发周期)——一个重视整个软件开发周期内的安全和隐私的流程——而贡献颇多。从某方面来讲,BSIMM是有效的措施以及最佳实践的汇集。为此,BSIMM是免费的,并依Creative Commons Attribution-Share Alike 3.0 授权发布。

  在开始阶段你需要建立你自己的SSG,吸收各个方面以及具有相关技能的人。第一个SSG会议要评估BSIMM并去掉那些明显与正在进行的项目无关的行为。成熟模型可以被用来给余下的行为区分优先级。显然,预算限制会影响判断某行为是“必须做”还是“最好做”,而且肯定会引起很多激烈的争论。这可能要反复多次才能使每个人都满意,但是你肯定会看到你的安全软件开发流程产生明显的进步。

相关推荐

  • 软件安全十诫(四)

    不要陷入“神奇加密神话”的陷阱。加密当然是有用的,一些系统仍将需要加密功能,但安全是一个系统级属性。

  • 软件安全十诫(三)

    软件安全不仅仅是充斥着各种漏洞以及攻击者威胁的技术问题。当然你需要做大量适当的技术操作,但永远不要忘记将这些操作直接联系到业务影响和风险管理。

  • 软件安全十诫(二)

    BSIMM没有提供直接的建议来指导你的公司如何处理软件安全问题。,它从事实出发,详细描述软件安全状态,本篇继续上文具体介绍了基于BSIMM的软件安全十诫。

  • BSIMM对30家公司的软件安全模型数据进行了研究

    McGraw发布了《在成熟模型中构建安全》(BSIMM)的第二个版本,去年发布的最初BSIMM版本只分析了九个公司,而第二个版本把分析的公司数量扩展到30个公司。