Cryptography 您采用哪些安全的软件开发实践?

Cryptography 您采用哪些安全的软件开发实践?,cryptography,static-analysis,security,Cryptography,Static Analysis,Security,我在Microsoft()从事一个名为安全开发生命周期(SDL)项目的项目,简言之,这是一组产品组在发布产品以帮助提高安全性之前必须使用的实践 在过去的几年中,我们已经发布了大量的SDL文档,因为客户需要更多关于我们正在做什么的信息 但我想知道的是: 您在组织内做什么来帮助提高产品的安全性 什么有效?什么不起作用 你是如何让管理层同意这项工作的 谢谢。我们在编码之前先考虑一下。奇怪的是,它避免了许多bug,包括那些可被敌对方利用的bug,因此被称为“安全漏洞” 其中一个诀窍是,除非任何人有丰富的

我在Microsoft()从事一个名为安全开发生命周期(SDL)项目的项目,简言之,这是一组产品组在发布产品以帮助提高安全性之前必须使用的实践

在过去的几年中,我们已经发布了大量的SDL文档,因为客户需要更多关于我们正在做什么的信息

但我想知道的是:

  • 您在组织内做什么来帮助提高产品的安全性
  • 什么有效?什么不起作用
  • 你是如何让管理层同意这项工作的

  • 谢谢。

    我们在编码之前先考虑一下。奇怪的是,它避免了许多bug,包括那些可被敌对方利用的bug,因此被称为“安全漏洞”

    其中一个诀窍是,除非任何人有丰富的经验和专业知识,否则不要让他靠近键盘。

    老实说,阅读是一个好的开始。:-)

    回答您的问题:

  • 加密是我的一个爱好,我有时会在博客上写它(例如,在和上)。在编写了自己的AES实现之后,我学到了足够多的知识,毫无疑问地知道,我永远不应该使用自己的实现,而应该使用CryptoAPI和OpenSSL编写的实现

    • 其中,擅长安全问题的人员被标记为所需
    • 与实验室一起在现场上课,以提高对书中提到的问题以及讨论新问题的内部邮件列表的认识
    • 有几个人听了这篇文章,了解哪些问题存在,哪些问题受到攻击。这间接地影响了设计
  • 除了现场课程和购买代码审查工具外,所有这些都不需要管理层批准


  • 我是一名独立mac开发人员,也是一名平台安全布道者:我是Wrox出版的Pro Cocoa应用程序安全的作者。在那本书中,我支持我自己使用的安全开发技术:它基于Swiderski和Snyder威胁建模,但有两个变化。我通过考虑哪些入口点访问哪些资产而不使用DFD,使其重量更轻。我还将更多的注意力放在识别用户和误用用户上,我认为这使它更适用于收缩包装软件

    就工具支持而言,我使用了Xcode静态分析器(基于clang),但发现它没有检测到一些常见的漏洞。但我确实有文件错误:-)。我也总是使用gcc _FORTIFY_SOURCE宏。没有好的Mac风险分析工具,但我正在研究…;-)

    我已经在会议和播客中向Mac开发人员谈到了安全问题,并获得了大量反馈。如果您想让我澄清我说过的任何话,或者对社区反馈感兴趣,请在评论中询问。欢迎提出私人问题(尽管我更愿意留在论坛上):我在securemacprogramming
    com.

    更多的经验并不总是更好。例如,悬空指针攻击还不到5年,但它们被用来利用Windows7下的IE。一个非常了解缓冲区溢出的高级程序员可能会错过新的攻击技术。这就是为什么防御非常重要的原因——随着新的攻击技术的不断产生,你永远不会100%地获得100%的代码。我认为这是一个好人提出的好问题。Microsoft的软件部署到大量用户,并且在安全性方面有更好的发展趋势(例如,比较IIS 4和IIS 7)。我认为最近针对Adobe Reader的攻击在某种程度上是对攻击微软产品越来越难的承认。微软绝非十全十美,但他们已经吸取了一些教训,而且正在变得更好。@Jeff Moser那么,在pwn2own的Windows 7上,新的IE8 0-day如何?当微软的软件不断被破坏时,他们所说的毫无意义。我所看到的只是一次又一次的攻击,完全没有任何改变。@TheRook:只要你的产品被数亿用户使用,你就会成为目标。安全性很难,需要很多纵深防御策略。这是一场非常不对称的战斗,你必须防御一切,而攻击者只需要找到一个弱点。此外,对于如此广泛的用户社区,您必须进行大量回归测试以验证修复。这很难,我赞扬像迈克尔这样诚实努力的人。让我们抛开火焰战争的倾向,通过指出良好的实践和帮助社区来公平地解决这个问题。@Rook-Linux也有它自己的问题!这不像“多眼球”的咒语真的有效@车-实际上已经改变了很多:微软软件中VULN的数量随着时间的推移已经下降,它永远不会是零VULN。但同样重要的是,我们正在增加防御,使零日更难利用。再说一次,这不是不可能的——但如果防御使攻击变得不可能,那么我称之为胜利。你现在对安全有什么看法?我发现他们用了“更好的安全性”这个词,这足以让我觉得吉布森关注的是绝对主义,而不是风险管理。我希望它能更深入,但在上下班路上很容易听到。史蒂夫比我有点偏执,但我想没关系。