开源软件迫切需要安全帮助

  由社区资助对TrueCrypt加密工具进行透明的安全审计工作,我们从这一项目得出的清晰要点是……恩,老实说,大家尚不完全清楚发生了什么事:审计工作分为两个阶段,在第一阶段没有发现什么重大问题。接着,TrueCrypt的匿名创始人出人意料地宣布该工具并不安全,且他们的开源项目已经终止。

  TrueCrypt项目的审计及终止提出了关键性的开源软件安全问题,无论软件自身是否适于使用—对此我一无所知,但我现在对此持怀疑态度。约翰霍普金斯的Matthew Green以及其他人,都认为我们需要一个持续发展的小组,来负责重要开源产品的安全审计工作。开放密码审计项目(OCAP)由此而来。该项目致力于审计开源密码库及工具,以期至少解决安全问题的冰山一角。但这会使得开放源码的其他部分(几乎所有的)缺失一组安全审计记录;也许直到我们至少可以信任密码的安全性时,情况才会改观。

  社区驱动的OCAP项目明确引入了一些互联网的重量级人物。OCAP背后的项目成员当即就看出必须让一些人士参与进来,这些人在开源及全球安全两类社区都被广泛认可和信赖。OCAP技术顾问委员会包括业界资深人士Bruce Schneier、来自Matasano安全的Thomas Ptacek、计算机安全研究员Moxie Marlinspike,以及其他在密码领域有重要威望的人。而指导委员会其中包括Marcia Hoffman。如果美国司法部找上我时,他将是我会致电的那位律师。

  这个由社区驱动的倡议正是应该会发生的事情。我非常鼓励你去访问opencryptoaudit.org,并提供帮助。作为起步,你可以帮助他们使得”捐赠”页面运转。根据他们的”新闻”链接进行判断,他们也会需要公关部门的帮助。我认为我们需要这么做且值得这么做。

  然而再回到那座冰山,关系到所有开源代码的安全性,而非一个密码库。某些开源软件差不多是被击打成形的(如Firefox浏览器),因为它一直遭受到如此广泛、不断的攻击。而所有那些随意使用的程序库呢?商业服务至少可以帮助你对应用进行归类管理并确定已知漏洞。但谁会负责审计开源软件的实际代码呢?

  如果我们诚实回答的话,答案几乎可以肯定是没有人在做这件事。甚至没有真正采用能解决问题的正确方法。如果我们想要安全的代码(无论商业或开放源码),最佳办法是从一开始就安全地开发它。我们已经看到,这样做要求的是一种安全承诺,而这往往是大多数软件开发公司很少会尽力去做的。

  但是,开源项目往往是一群程序员围绕一到两个核心开发者、共同努力的成果。他们中有的聪明、有的则会犯低级错误。我认为,通过影响每个开源项目中那一小组核心程序员、从而创建一种安全代码开发的文化,也许是可行的。事实上,某种程度来说,在开源项目中去推行这种作法甚至会更容易一些,因为它们多数情况下不会面临商业世界里武断的最后期限压力。

  所以,也许对于类似OCAP的某种安全开源组织尚存有需求空间。在此我并非意指开放Web应用程序安全项目(OWASP)这类致力于安全开发的组织,而是另一类,它将帮助项目负责人交流其工作的安全要求,也许还提供一定的资源用于体系审计—足以确保良好、安全地设计初始架构。当然这不是一件易事,但在那之前,我们难道不是仅或多或少在猜测开源代码的安全性吗?

 

上一篇:智能无惧挑战 山石网科轰动RSA2015

下一篇:安全容器如何提高移动数据保护