工具捕捉开放源代码中的安全漏洞

考虑到它的流行,开放源代码实际上是不可能避免的,但是需要采取适当的步骤来解决它的漏洞

对于开放源代码和安全性来说,今年是最好的一年,也是最差的一年。

一方面,黑鸭软件公司和北桥风险投资公司的最新调查显示,72%的行业专业人士更喜欢开源软件,因为它比专有解决方案更安全。

(开源项目是提高安全性的途径吗?]

另一方面,“心脏出血”暴露了广泛使用的开源OpenSSL加密工具的一个安全漏洞,影响了50多万个网站。同样是在今年春天,TrueCrypt意外关闭,理由是其SourceForge页面上存在“未修复的安全问题”,而Linux中的一个关键bug GnuTLS在10多年未被发现后终于被暴露出来。

开源软件广泛应用于商业领域——运行Linux和Apache的web服务器、数据库、Android操作系统、企业开发人员使用的代码库以及嵌入到商业软件包中。

完全避免开源不是一种选择,但是盲目地相信开源社区可以解决所有的错误也是一个问题。

一种解决方案是使用自动代码扫描工具扫描已知漏洞和常见编程错误的代码。幸运的是,自动化工具每年都在进步。

信任,但验证

据英国《每日邮报》报道,在过去的几年中,在开放源代码中发现了超过5000个安全漏洞国家漏洞数据库

理想情况下,公司应该针对其使用的开放源码软件包,以及商业软件包中使用的开放源码软件,甚至针对自己的程序员从互联网上复制的代码片段,检查这些漏洞。

“现实情况是,开发人员每天都从开源项目中剪切粘贴代码,”Black Duck Software产品管理副总裁Dave Gruber说。

大型组织一直在向它们的环境中添加新的开源软件,这意味着漏洞检查必须是一个持续进行的过程。

格鲁伯说:“对于手工操作的组织来说,它很快就会变得非常不堪重负。

Black Duck Software除了每年进行一次关于公司如何使用开放源码的调查之外,还提供了软件扫描工具,帮助公司找到他们正在使用的所有开放源码软件、组件甚至是片段,然后根据已知的漏洞列表检查它们。

(科技巨头的投资只是确保关键开源项目的一个开始]

其1400多家客户包括《财富》100强中的27家、前10大投资银行中的6家以及前10大软件公司中的7家。Gruber说,该公司目前的数据库中有超过100万个开源项目。

“我们追踪世界上所有主要的开源伪造软件,”他说。

在新虫子咬你之前,先找到它们

发现和修补已知的漏洞是很重要的,也是保护开放源码软件的关键的第一步。

但是未知的漏洞呢?还有一些工具可以帮助你。

来自纽约CAST的Application Intelligence Platform就是这样一个工具,它可以扫描软件,找出漏洞和漏洞,并指出问题所在。

CAST高级副总裁Lev Lesokhin表示:“我们发现的平均应用程序有100到120个安全漏洞。”

常见的问题包括SQL注入,在这种情况下,试图闯入应用程序的黑客将输入一个数据库查询,而不是请求的数据。这项技术并不是什么新东西。

Lesokhin说:“但这仍然是罪犯进入监狱系统最常见的方式。”

根据Verizon 4月份发布的最新泄露报告,80%的针对Web应用程序的攻击使用了SQL注入。

他说:“开源软件的神话之一就是有数百万的眼球在看源代码并修复它。”但是只有很少的开源项目是这样的。剩下的部分——有人写了一些东西,并以开源的方式发布出来。”

它可能是由一个业余爱好者编写的,或者是某个已经转移到其他领域而不再维护软件的人编写的。

但它仍可能是有用的代码,可以为公司开发人员节省数小时、数天甚至数周的工作。

Lesokhin说:“任何你能想到的组件,都有一个你可以重用的开源例子。”

但有一家公司将其代码扫描技术直接应用于源代码——也就是开源项目本身。而且由于这些项目通常没有得到很好的资金支持,所以这项技术是免费的。

(Hadoop的成功促使人们努力使其更安全]

它被称为Coverity扫描,由总部位于旧金山的Coverity公司在云中提供。它扫描软件的所有常见安全问题类型,包括缓冲区溢出、跨站点脚本编写、不安全的数据处理、SQL注入、安全错误配置和非法访问内存。

它最初开始于2006年,是Coverity和美国国土安全部之间的一个公私合作研究项目,用于分析一些最重要的C和c++开源项目,包括Linux、Apache、PHP和PostgreSQL。去年,Coverity Scan也扩展到了Java。

该公司产品高级总监扎克·萨莫查(Zack Samocha)表示:“他们和我们的客户拥有同样的平台,但是在云端。”

他说,从安全的角度来看,过去几个月对开源项目来说是困难的。

“心脏出血问题非常严重,”他说。

然而,也有一线希望。这些引人注目的安全问题引起了人们对对开源软件进行更好的安全筛查的需要的关注。

“在意识到这个问题后,超过400个新项目签署了Coverity扫描,”他说。“开源社区正在走向成熟,并且理解这类工具取得成功的必要性。他们正在更加确保质量更好,安全性更好。”

Coverity现在扫描超过2200个不同的开源项目,他说。

4月,Coverity发布了一份报告,分析了700多个C和c++项目的代码,以及Java项目和匿名企业项目的示例代码——总计超过7.5亿行代码。分析显示,自该公司八年前开始运行扫描以来,开放源代码的质量首次超过了专有代码。

部分原因可能是由于开源项目本身越来越强调修复编码问题。例如,Linux使用Coverity扫描将修复新发现缺陷的平均时间从122天减少到6天

Coverity也被公司内部使用。客户包括SAP、法国航空(Air France)、康卡斯特(Comcast)、巴克莱(Barclays)等主要品牌,以及排名前十的9家软件公司和7家航空航天公司。

三菱电机Sanda Works的员工经理Yoshinori Tsujido在一份声明中表示:“源代码的数量在规模上迅速增长,但我们仍在保持质量的一致性。”“如果我们不使用Coverity,我不知道我们现在会在哪里。”

(专家说,黑客攻击运行Apache Struts应用程序的服务器]

根据IDC的预测,全球软件质量分析市场在2013年超过5亿美元,到2017年将增长到9.06亿美元,复合年增长率超过15%。

IDC分析师Melinda Ballou在一份声明中表示:“面对日益增多的高度公开的关键业务系统故障,进行软件质量分析的紧迫性从未如此明显。”“在这一领域,改善企业和开发商卫生状况的迫切需要是显而易见的。”

“工具捕捉开放源代码中的安全漏洞”这篇文章最初由方案

加入网络世界社区有个足球雷竞技app脸谱网LinkedIn对最重要的话题发表评论。

版权©2014Raybet2

工资调查:结果在