中文

开放还是隐蔽?快速还是缓慢?轻量还是繁重?:开源包安全发布研究

密码学与安全 2021-12-14 v1 软件工程

摘要

开源包中的漏洞对将这些包作为依赖使用的客户项目构成安全风险。当在包中发现新漏洞时,该包应迅速在新版本中发布修复,本研究称之为安全发布。安全发布应有完备文档且需要最小的迁移工作量,以促进客户项目快速采用。然而,开源包在多大程度上遵循这些建议尚属未知。本研究的目的是通过对安全发布的实证研究,帮助软件从业者和研究者理解开源包发布安全修复的当前实践并识别改进空间。具体而言,本文研究(1)修复与发布之间的时间滞后;(2)安全修复如何在发布说明中被记录;(3)发布的代码变更特征(规模和语义版本化);(4)在涵盖七个包生态系统4,377条安全公告的数据集上,发布与在Snyk或NVD(两个流行漏洞数据库)上公告发布之间的时间滞后。我们发现中位安全发布在对应修复后4天内可用,并包含134行代码(LOC)变更。此外,我们发现61.5%的安全发布附带记录相应安全修复的发布说明。然而,Snyk和NVD从这些安全发布起可能需中位25天才能发布公告,可能导致对客户项目的通知延迟。基于我们的发现,我们对包维护者和生态系统管理者提出四条建议,例如使用私有分支进行安全修复以及标准化安全发布通告实践。

关键词

引用

@article{arxiv.2112.06804,
  title  = {Open or Sneaky? Fast or Slow? Light or Heavy?: Investigating Security Releases of Open Source Packages},
  author = {Nasif Imtiaz and Aniqa Khanom and Laurie Williams},
  journal= {arXiv preprint arXiv:2112.06804},
  year   = {2021}
}

备注

Pre-print, currently under peer-review process