近日,Synopsys 公司的黑鸭软件(Black Duck Software)发布了开源安全与风险分析(OSSRA)年度报告,报告对 2018 年以来 1200 多个商业代码库的匿名数据进行了分析和研究。
对当今的企业来说,开源软件、库和组件往往起着重要的作用。开源代码采用率高有许多原因,其中包括开源社区的许多程序员愿意为项目贡献时间、项目代码的透明性、以及比开发内部系统更少的实现时间等。
在黑鸭审查的所有代码库中,有 96% 包含了开源组件,而大多数没有开源代码的代码库其实包含不到 1000 个文件。在超过 1000 个文件的代码库中,开源代码的采用率高达 99%。
开源代码有着它的安全优势,但也存在着安全漏洞未修补的隐患,开发人员可能没意识到项目正在被安全漏洞影响。在报告审查的代码库中,至少包含一个漏洞的代码库占 60% ,这个数字比 2017 年统计的结果 78% 有所下降。
黑鸭认为,发现的漏洞有 40% 都是关键级的。“事实上,开源并不总是更安全。”报告指出,无论项目源码是专有的还是开源的,都可能因为漏洞的存在,安全性变得薄弱。项目人员应该及时加以识别和修补这些漏洞。
报告中发现漏洞的平均“年龄”为 6.6 岁。其中,最老的 CVE-2000-0388 是 FreeBSD libmytinfo 库中的缓冲区溢出漏洞,在 28 年前被披露。报告结果显示,有 43% 的代码库包含一个超过 10 年的 bug。这表明不少企业可能没意识到开源的用处,也没有对组件目录进行系统管理,这些软件没有打新的补丁,更容易被攻击。
“一般只有少数开源漏洞,比如那些影响 ApacheStruts 或 OpenSSL 的漏洞,有可能被广泛利用。”研究人员表示,项目组织应该把他们的开源漏洞管理和缓解工作的重点放在 cvss 评分和漏洞的可用性上,在关注 “0day” 的同时,也应该关注开源组件的生命周期。
转自 https://www.oschina.net/news/106366/60-percent-of-codebases-contain-open-source-vulnerabilities