npm与RubyGems依赖网络中安全漏洞的影响研究
软件工程
2022-03-29 v2
摘要
对开源软件日益增长的关注催生了大型特定语言的 reusable 软件库包分发平台,如npm和RubyGems。这些软件包可能存在漏洞,并通过显式声明的依赖关系将依赖包暴露于风险之中。本文利用Snyk的漏洞数据库,对影响npm和RubyGems包的漏洞进行实证研究。我们分析了这些漏洞如何以及何时被披露和修复,及其普遍程度随时间的变化。我们还分析了存在漏洞的包如何通过直接或间接依赖将其依赖者暴露于漏洞之中。我们区分两类依赖者:通过包管理器分发的包,以及依赖于npm包的外部GitHub项目。我们观察到npm中的漏洞数量正在增加,且披露速度快于RubyGems中的漏洞。对于两种包分发平台,披露漏洞所需的时间都在随时间增加。npm包中的漏洞影响中位数为30个包发布版本,而RubyGems包中为59个发布版本。很大比例的外部GitHub项目暴露于来自直接或间接依赖的漏洞中。项目和包所暴露的依赖漏洞中,分别有33%和40%在其所用依赖的同一主版本范围内较新发布版本中已有修复。我们的研究结果表明,需要更多努力来更好地保障开源包分发平台的安全。
引用
@article{arxiv.2106.06747,
title = {On the Impact of Security Vulnerabilities in the npm and RubyGems Dependency Networks},
author = {Ahmed Zerouali and Tom Mens and Alexandre Decan and Coen De Roover},
journal= {arXiv preprint arXiv:2106.06747},
year = {2022}
}