中文

众包代码示例中 C++ 漏洞的实证研究

软件工程 2021-01-21 v2

摘要

软件开发者在 Stack Overflow 等问答站点分享编程解决方案。众包代码片段的重用可助力快速原型开发。然而,近期研究表明共享代码片段可能质量低下甚至包含漏洞。本文旨在理解众包代码示例中安全漏洞的性质与普遍程度。为实现此目标,我们调查了 10 年间 Stack Overflow 上分享的 C++ 代码片段中的安全漏洞。在多名人类编码者协作的过程中,我们依据 CWE(Common Weakness Enumeration,常见弱点枚举)指南手动评估每个代码片段的安全漏洞。在至少被一个 GitHub 托管项目使用的 72,483 个审阅代码片段中,我们共发现 69 个漏洞代码片段,归为 29 类。许多被调查的代码片段在 Stack Overflow 上仍未被修正。在 Stack Overflow 中发现的 69 个漏洞代码片段被重用于总计 2859 个 GitHub 项目。为帮助提升 Stack Overflow 上共享代码片段的质量,我们开发了一个浏览器扩展,使 Stack Overflow 用户在平台上传代码片段时可检查其中漏洞。

关键词

引用

@article{arxiv.1910.01321,
  title  = {An Empirical Study of C++ Vulnerabilities in Crowd-Sourced Code Examples},
  author = {Morteza Verdi and Ashkan Sami and Jafar Akhondali and Foutse Khomh and Gias Uddin and Alireza Karami Motlagh},
  journal= {arXiv preprint arXiv:1910.01321},
  year   = {2021}
}

备注

14 pages