Industry practitioners are increasingly concerned with software that contains vulnerable versions of third-party dependencies that are included both directly and transitively. To address this problem, projects are encouraged to both (a)~quickly update to non-vulnerable versions of dependencies and (b)~be mindful of the update practices of the dependencies they choose to use. To this end, researchers have proposed metrics to measure the responsiveness of the development teams of the packages in keeping their dependencies updated: Mean-Time-To-Update (MTTU) and Mean-Time-To-Remediate (MTTR). While MTTU covers all dependencies, MTTR quantifies the time needed for a package to update its vulnerable dependencies. However, existing metrics fail to capture important nuances, such as considering floating versions and prioritizing recent updates, leading to inaccurate reflections of a development team's update practices. \textit{The goal of this study is to aid practitioners in understanding how quickly packages update their dependencies.} We propose two novel metrics, Mean-Time-To-Update for dependencies (MTTU) and Mean-Time-To-Remediate for vulnerable dependencies (MTTR), that overcome the limitations of existing metrics. We conduct an empirical study using $163,207$ packages in npm ($117,129$), PyPI ($42,777$), and Cargo ($3,301$) and characterize how the ecosystems differ in MTTU and MTTR, as well as what package characteristics influence MTTU and MTTR. We found that most packages have a relatively fast dependency update practice. We further study whether MTTU can be used as a proxy for MTTR when sufficient vulnerability data is not available. As we did not find enough statistical evidence for a strong proxy, our findings suggest that MTTU could only be partially used (may be used but with caution) as a proxy for MTTR when vulnerability data is not available.


翻译:行业从业者日益关注包含易受攻击版本的第三方依赖项(包括直接和传递依赖项)的软件。为解决此问题,项目被鼓励:(a) 快速更新至非易受攻击版本的依赖项,(b) 关注所选用依赖项的更新实践。为此,研究人员提出了衡量包开发团队在保持依赖项更新方面的响应性指标:平均更新耗时(MTTU)和平均修复耗时(MTTR)。MTTU涵盖所有依赖项,而MTTR量化包更新其易受攻击依赖项所需时间。然而,现有指标未能捕捉重要细节,例如考虑浮动版本和优先处理近期更新,导致对开发团队更新实践的不准确反映。\textit{本研究的目的是帮助从业者理解包更新其依赖项的速度。} 我们提出两种新指标——依赖项平均更新耗时(MTTU)和易受攻击依赖项平均修复耗时(MTTR),以克服现有指标的局限性。我们基于npm(117,129个)、PyPI(42,777个)和Cargo(3,301个)中的163,207个包进行实证研究,刻画各生态系统在MTTU和MTTR上的差异,以及影响MTTU和MTTR的包特征。我们发现大多数包具有相对较快的依赖项更新实践。我们进一步研究了当缺乏足够漏洞数据时,MTTU能否作为MTTR的代理指标。由于未找到足够统计学证据支持强代理关系,我们的研究结果表明,在缺乏漏洞数据时,MTTU仅能部分用作MTTR的代理(可谨慎使用)。

0
下载
关闭预览

相关内容

《美国防部当前和计划中的软件现代化工作》最新报告
专知会员服务
62+阅读 · 2024年6月30日
【WWW2021】对众包系统的数据中毒攻击和防御
专知会员服务
21+阅读 · 2021年2月22日
亿级订单数据的访问与储存,怎么实现与优化
ImportNew
11+阅读 · 2019年4月22日
亿级订单数据的访问与存储,怎么实现与优化?
码农翻身
16+阅读 · 2019年4月17日
iOS如何区分App和SDK内部crash
CocoaChina
11+阅读 · 2019年4月17日
React Native 分包哪家强?看这文就够了!
程序人生
13+阅读 · 2019年1月16日
国家自然科学基金
1+阅读 · 2017年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
VIP会员
最新内容
《无人机对海面作战影响评估》
专知会员服务
1+阅读 · 55分钟前
印度精确打击与指挥架构的断层
专知会员服务
4+阅读 · 7月20日
美空军AI完成F-16战斗机自主空战历史性试飞
专知会员服务
6+阅读 · 7月20日
深入Project Maven:为何人工智能在战场上依然失灵
锻造未来士兵:外骨骼、基因工程与赛博格
专知会员服务
7+阅读 · 7月19日
相关VIP内容
《美国防部当前和计划中的软件现代化工作》最新报告
专知会员服务
62+阅读 · 2024年6月30日
【WWW2021】对众包系统的数据中毒攻击和防御
专知会员服务
21+阅读 · 2021年2月22日
相关基金
国家自然科学基金
1+阅读 · 2017年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
Top
微信扫码咨询专知VIP会员