中文

安全测试中的内存错误检测

软件工程 2021-04-12 v1

摘要

我们研究了 10 个一直在使用静态分析安全测试工具的 C/C++ 项目。我们分析了该工具生成的历史扫描报告,并研究了内存相关告警出现的频率。我们还研究了开发人员对这些告警的后续处理动作。我们也查看了在研究时间线内为这些项目发布的 CVE,并调查其中有多少与内存相关。此外,对于其中一个项目 Linux,我们调查了 CVE 中涉及的缺陷在代码中被首次引入时,是否已被所研究的安全工具识别。我们发现内存相关告警在静态分析安全测试期间被频繁检测到。然而,基于项目开发人员监控工具告警的积极程度,这些错误可能需要数年才能被修复。对于所研究的十个项目,我们发现内存告警在被修复前的中位存活期为 77 天。我们还发现所研究 C/C++ 项目已发布 CVE 中约 40% 与内存相关。这些内存 CVE 比非内存 CVE 具有更高的 CVSS 严重等级和公开利用脚本的可能性。我们还发现仅有 2.5% 的 Linux CVE 可能在静态分析安全测试期间被检测到。

关键词

引用

@article{arxiv.2104.04385,
  title  = {Memory Error Detection in Security Testing},
  author = {Nasif Imtiaz and Laurie Williams},
  journal= {arXiv preprint arXiv:2104.04385},
  year   = {2021}
}