中文

开发者如何应对 Log4JShell 漏洞:全盘放弃还是拾起?

软件工程 2024-07-08 v1

摘要

尽管在当代软件开发中广泛使用第三方库,但开发者往往难以及时更新其依赖项。既有研究认识到,由于迁移工作量、优先级问题等因素,导致迁移过程存在滞后。普遍假设是开发者应放弃所有其他活动,优先修复漏洞。我们的目标是理解开发者在面对代码中高风险漏洞时的行为方式。我们探讨了 Log4JShell 这一起极具代表性的案例——该漏洞曾获得过人类史上最高危险等级,引发了广泛媒体关注。我们采用混合方法,对 219 个 GitHub 拉取请求 (PR) 和 534 个 issue(归属于 53 个 Maven 项目)进行分析。我们的研究确认开发者在响应速度上表现出快速反应,通常需要 5 到 6 天。然而,与常规假设不同,开发者活动反而在所有待处理 issue 和 PR 上得到增加。开发者讨论中要么提供信息 (29.3%),要么寻求信息 (20.6%),而现有支持工具中缺乏这些功能。借助这一罕见事件,洞见为新的研究线索开辟了道路,促使我们重新思考最佳实践,以及开发者在高效修复漏洞方面需要什么。

关键词

引用

@article{arxiv.2407.04263,
  title  = {Drop it All or Pick it Up? How Developers Responded to the Log4JShell Vulnerability},
  author = {Vittunyuta Maeprasart and Ali Ouni and Raula Gaikovina Kula},
  journal= {arXiv preprint arXiv:2407.04263},
  year   = {2024}
}

备注

Accepted to SERA24. arXiv admin note: text overlap with arXiv:2406.11362