Semgrep*: Improving the Limited Performance of Static Application Security Testing (SAST) Tools

被引:0
|
作者
Bennett, Gareth [1 ]
Hall, Tracy [1 ]
Winter, Emily [1 ]
Counsell, Steve [2 ]
机构
[1] Univ Lancaster, Sch Comp & Commun, Lancaster, England
[2] Brunel Univ, Dept Comp Sci, London, England
关键词
VULNERABILITIES;
D O I
10.1145/3661167.3661262
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Vulnerabilities in code should be detected and patched quickly to reduce the time in which they can be exploited. There are many automated approaches to assist developers in detecting vulnerabilities, most notably Static Application Security Testing (SAST) tools. However, no single tool detects all vulnerabilities and so relying on any one tool may leave vulnerabilities dormant in code. In this study, we use a manually curated dataset to evaluate four SAST tools on production code with known vulnerabilities. Our results show that the vulnerability detection rates of individual tools range from 11.2% to 26.5%, but combining these four tools can detect 38.8% of vulnerabilities. We investigate why SAST tools are unable to detect 61.2% of vulnerabilities and identify missing vulnerable code patterns from tool rule sets. Based on our findings, we create new rules for Semgrep, a popular configurable SAST tool. Our newly configured Semgrep tool detects 44.7% of vulnerabilities, more than using a combination of tools, and a 181% improvement in Semgrep's detection rate.
引用
收藏
页码:614 / 623
页数:10
相关论文
共 31 条
  • [1] Comparison and Evaluation on Static Application Security Testing (SAST) Tools for Java']Java
    Li, Kaixuan
    Chen, Sen
    Fan, Lingling
    Feng, Ruitao
    Liu, Han
    Liu, Chengwei
    Liu, Yang
    Chen, Yixiang
    [J]. PROCEEDINGS OF THE 31ST ACM JOINT MEETING EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, ESEC/FSE 2023, 2023, : 921 - 933
  • [3] An Extensive Comparison of Static Application Security Testing Tools
    Esposito, Matteo
    Falaschi, Valentina
    Falessi, Davide
    [J]. PROCEEDINGS OF 2024 28TH INTERNATION CONFERENCE ON EVALUATION AND ASSESSMENT IN SOFTWARE ENGINEERING, EASE 2024, 2024, : 69 - 78
  • [4] An Extensive Comparison of Static Application Security Testing Tools
    Esposito, Matteo
    Falaschi, Valentina
    Falessi, Davide
    [J]. arXiv, 2024,
  • [5] An empirical study of security warnings from static application security testing tools
    Aloraini, Bushra
    Nagappan, Meiyappan
    German, Daniel M.
    Hayashi, Shinpei
    Higo, Yoshiki
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2019, 158
  • [6] Constructing Benchmarks for Supporting Explainable Evaluations of Static Application Security Testing Tools
    Hao, Gaojian
    Li, Feng
    Huo, Wei
    Sun, Qing
    Wang, Wei
    Li, Xinhua
    Zou, Wei
    [J]. 2019 13TH INTERNATIONAL SYMPOSIUM ON THEORETICAL ASPECTS OF SOFTWARE ENGINEERING (TASE 2019), 2019, : 65 - 72
  • [7] Multi-cluster visualization and live reporting of Static Analysis Security Testing (SAST) warnings
    Pathak, Abhishek
    Sivakumar, Kaarthik
    Haque, Mazhar
    Ganesan, Prasanna
    [J]. 2019 IEEE SECURE DEVELOPMENT (SECDEV 2019), 2019, : 145 - 145
  • [8] Myths and Facts About Static Application Security Testing Tools: An Action Research at Telenor Digital
    Oyetoyan, Tosin Daniel
    Milosheska, Bisera
    Grini, Mari
    Cruzes, Daniela Soares
    [J]. AGILE PROCESSES IN SOFTWARE ENGINEERING AND EXTREME PROGRAMMING, XP 2018, 2018, 314 : 86 - 103
  • [9] Integrating Application Security Testing Tools into ALM Tools in the Automotive Industry
    Oka, Dennis Kengo
    Makila, Tommi
    Kuipers, Rikke
    [J]. 2019 COMPANION OF THE 19TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY AND SECURITY (QRS-C 2019), 2019, : 42 - 45
  • [10] Why Is Static Application Security Testing Hard to Learn?
    Krishnan, Padmanabhan
    Cifuentes, Cristina
    Li, Li
    Bissyande, Tegawende F.
    Klein, Jacques
    [J]. IEEE SECURITY & PRIVACY, 2023, 21 (05) : 68 - 72