开源CC++静态软件缺陷检测工具实证研究
作者:
作者单位:

作者简介:

李广威(1991-),男,博士生,CCF学生会员,主要研究领域为程序分析;李炼(1977-),男,博士,研究员,博士生导师,CCF专业会员,主要研究领域为程序分析,软件安全;袁挺(1994-),男,博士生,主要研究领域为程序分析

通讯作者:

李炼,E-mail:lianli@ict.ac.cn

中图分类号:

TP311

基金项目:

国家自然科学基金(61802368,62090024)


Study of State-of-the-art Open-source C/C++ Static Analysis Tools
Author:
Affiliation:

Fund Project:

  • 摘要
  • |
  • 图/表
  • |
  • 访问统计
  • |
  • 参考文献
  • |
  • 相似文献
  • |
  • 引证文献
  • |
  • 资源附件
  • |
  • 文章评论
    摘要:

    软件静态缺陷检测是软件安全领域中的一个研究热点.随着使用C/C++语言编写的软件规模和复杂度的逐渐提高,软件迭代速度的逐渐加快,由于静态软件缺陷检测不需要运行目标代码即可发现其中潜藏的缺陷,因而在工业界和学术界受到了更为广泛的关注.近年来涌现出大量使用软件静态分析技术的检测工具,并在不同领域的软件项目中发挥了不可忽视的作用,但是开发者仍然对静态缺陷检测工具缺乏信心.高误报率是C/C++静态缺陷检测工具难以普及的首要原因.因此,选择现有的较为完善的开源C/C++静态缺陷检测工具,在Juliet基准测试集和37个良好维护的开源软件项目上对特定类型缺陷的检测效果进行了深入研究,结合检测工具的具体实现,归纳了导致静态缺陷检测工具产生误报的关键原因.同时,通过研究静态缺陷检测工具的版本迁移轨迹,总结出了当下静态分析工具的发展方向和未来趋势,有助于未来静态分析技术的优化和发展,从而实现静态缺陷检测工具的普及应用.

    Abstract:

    Static software defect detection is an active research topic in the domain of software engineering and software security. Along with the increase of software complexity and size, static software defect detection has been applied in both industry and academy to take the benefit of finding defects in C/C++ programs without execution. A large amount of static analysis tools (SATs) for C/C++ have been developed in recent years, and have played an important role in automatically finding defects in various kinds of C/C++ software projects. In spite of this, developers are still having less confidence on SATs mainly due to the high false positive rate that has been an unsolved problem for a long time. This research dives deep into state-of-the-art static analysis tools for C/C++ and figures out why false positives are raised through the approach of running them on Juliet Test Suite and 37 open-source real-world software projects. With insight of the design and implementation details of the selected open-source SATs, the exact reasons of which result in the high false positive rateare found. Moreover, the effort is also made to trace the tendency of development and the future of state-of-the-art open-source C/C++ SATs.

    参考文献
    相似文献
    引证文献
引用本文

李广威,袁挺,李炼.开源CC++静态软件缺陷检测工具实证研究.软件学报,2022,33(6):2061-2081

复制
分享
文章指标
  • 点击次数:
  • 下载次数:
  • HTML阅读次数:
  • 引用次数:
历史
  • 收稿日期:2021-09-05
  • 最后修改日期:2021-10-15
  • 录用日期:
  • 在线发布日期: 2022-01-28
  • 出版日期: 2022-06-06
您是第位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号