中文

四大公共软件包注册中心的签名现状:数量、质量及其影响因素

密码学与安全 2024-04-16 v2 软件工程

摘要

许多软件应用集成了由公共包注册中心分发的开源第三方包。保障这一供应链上的作者身份是一项挑战。包维护者可以通过软件签名来保证包的作者身份。然而,目前尚不清楚这种做法的普遍程度,以及生成的签名是否被正确创建。先前的工作提供了关于注册中心签名实践的原始数据,但仅测量了单一平台,未考虑质量、时间维度,也未评估可能影响签名的因素。我们既缺乏关于签名实践的最新测量数据,也不了解现有签名的质量。此外,我们对影响签名采用的因素也缺乏全面的理解。本研究填补了这一空白。我们提供了跨三类包注册中心的测量结果:传统软件(Maven、PyPI)、容器镜像(DockerHub)和机器学习模型(Hugging Face)。对于每个注册中心,我们描述了已签名工件的性质以及当前签名的数量和质量。然后,我们考察了签名实践的纵向趋势。最后,我们使用准实验来估计各种因素对软件签名实践的影响。总结我们的发现:(1) 强制要求采用签名能提高签名数量;(2) 提供专用工具能提升签名质量;(3) 万事开头难——一旦维护者开始签名,他们往往会持续下去;(4) 尽管许多供应链攻击可通过签名缓解,但签名的采用主要受注册中心政策影响,而非公众对攻击的认知、新工程标准等。这些发现凸显了软件包注册中心管理者和签名基础设施的重要性。

关键词

引用

@article{arxiv.2401.14635,
  title  = {Signing in Four Public Software Package Registries: Quantity, Quality, and Influencing Factors},
  author = {Taylor R Schorlemmer and Kelechi G Kalu and Luke Chigges and Kyung Myung Ko and Eman Abu Isghair and Saurabh Baghi and Santiago Torres-Arias and James C Davis},
  journal= {arXiv preprint arXiv:2401.14635},
  year   = {2024}
}

备注

Accepted at IEEE Security & Privacy 2024 (S&P'24)