首页
学习
活动
专区
工具
TVP
发布

最新报告:开源漏洞2019年增长近50%,C语言项目漏洞最多

近日,安全公司WhiteSource发布了一份“开源安全年度报告”。报告表明,2019年,公开披露的开源安全漏洞数量再创新高,总数为6100个。与2018年相比,开源安全漏洞的数量增长近50%。同时,报告还表明代码漏洞最多的开源项目是用C语言编写的。并且,报告发现,2019年最常见的安全漏洞类型是跨站脚本攻击、输入验证安全漏洞、缓冲区错误和越界读取以及信息泄露。

数据表明,2009年,公开披露的开源安全漏洞不足1000个。

但是,随着企业对开源软件的使用增多和人们对开源安全漏洞的关注,公开披露的开源安全漏洞数量将不断增加。在这份名为《The State of Open Source Security Vulnerabilities》的研究报告中,WhiteSource写道,“当今,开源组件已经成为现代软件应用的一部分。随着开源软件的使用不断增长,人们开始更多地关注开源软件安全研究。”

“一路飙升”的开源安全漏洞

在2014年,开源安全出现转折点。这一年,Codenomicon和谷歌安全部门的研究人员披露OpenSSL漏洞,该漏洞可以让攻击者获得服务器上64K内存中的数据内容。该漏洞被国内称为“OpenSSL心脏出血漏洞”,因其破坏性之大和影响范围之广,堪称网络安全里程碑事件。

这件事不仅给科技行业敲响了警钟,而且让科技公司开始采取行动,比如为修复类似的重大漏洞,业内十二家顶级科技企业加入Linux基金会基础架构联盟(CII),包括亚马逊、谷歌、IBM、Intel、微软和思科等。

据WhiteSource的报告显示,2015年和2016年,每年开源安全漏洞的数量不超过2000,但是在2017年和2018年,开源安全漏洞的数量一路飙升,超过4000。

2019年,开源安全的漏洞超过6000个,突破历史记录。

不过,好消息是超过85%的开源安全漏洞在披露时已经有修复程序。

“过去几年,科技巨头在开源上加大投资,从而能更好地管理开源项目和提升安全性。同时,社区也在不断致力于安全研究,及时发布针对开源安全漏洞的修复版本。”WhiteSource表示。

然而,有些用户并不知道这些修复程序,因为已知的开源漏洞只有84%提交到NVD(美国国家漏洞数据库)。

报告还指出:遗憾的是,开源软件的漏洞并没有集中在一处发布,而是分散在数百种资源中。有时,索引的编制并不正确,导致搜索特定数据成为一项艰巨挑战

据悉,一部分新发现的安全漏洞来自谷歌开源模糊测试工具,比如OSS-Fuzz,它在2年时间找到9000个漏洞。仅在2020年1月,它又在250个开源项目中发现16000个漏洞。

去年,WhiteSource和GitHub合作,将其漏洞数据库带到GitHub,为其安全警报提供服务。针对那些由PHP、Java、Python、.NET、JavaScript和Ruby编写的开源项目,GitHub会扫描开源项目来发现潜在的安全漏洞。目前,它已经帮助开发者找到和修复了数百万漏洞

另外,GitHub在2019年成立安全实验室(Security Lab),汇聚安全研究人员查找并修复开源项目中的安全漏洞。并且,GitHub成为授权CVE编号发布机构,项目维护者可以和安全专家一起研究安全修复程序,并直接从GitHub上申请CVE编号,并披露有关漏洞的详细信息。

尽管GitHub不断提升安全性,但是WhiteSource指出,开发者可能被发现的大量安全漏洞所“淹没”,应接不暇。

最不安全的编程语言

WhiteSource还从编程语言角度对存在安全漏洞的开源项目进行了分析。研究发现,安全漏洞最多的开源项目是用C语言编写的,占比30%。

这家公司解释,C语言占比之高是因为有太多的开源项目是用它编写。

第二是PHP。尽管PHP在开发者心中的受欢迎度大不如前,但用PHP编写的代码占开源安全漏洞的27%,与10年前的15%相比,进一步上升。

相比而言,用Python编写的代码占开源安全漏洞的5%,这与10年前的6%相比有所下降。

此外,报告还表明,2019年,最常见的安全漏洞类型是CSS(跨站脚本攻击)、输入验证安全漏洞、缓冲区错误、越界读取和信息泄露。其中,跨站脚本攻击是Java、JavaScript、PHP、Python和Ruby中最常见的漏洞类型。

  • 发表于:
  • 本文为 InfoQ 中文站特供稿件
  • 首发地址https://www.infoq.cn/article/WdxvFhgpi8HekojPOcyY
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券