An Empirical Study of Static Analysis Tools for Secure Code Review
Wachiraphan Charoenwet, Patanamon Thongtanunam, Van-Thuan Pham,, Christoph Treude

TL;DR
This study evaluates the practical effectiveness of static analysis tools in real-world secure code review by analyzing their ability to detect vulnerabilities in actual code changes, revealing benefits and limitations.
Contribution
It provides empirical insights into SAST tools' performance on real vulnerabilities and explores how prioritizing warnings can improve secure code review accuracy.
Findings
SAST warnings appear in 52% of vulnerable functions.
Prioritizing warned functions improves precision by 12%.
At least 76% of warnings are irrelevant to vulnerabilities.
Abstract
Early identification of security issues in software development is vital to minimize their unanticipated impacts. Code review is a widely used manual analysis method that aims to uncover security issues along with other coding issues in software projects. While some studies suggest that automated static application security testing tools (SASTs) could enhance security issue identification, there is limited understanding of SAST's practical effectiveness in supporting secure code review. Moreover, most SAST studies rely on synthetic or fully vulnerable versions of the subject program, which may not accurately represent real-world code changes in the code review process. To address this gap, we study C/C++ SASTs using a dataset of actual code changes that contributed to exploitable vulnerabilities. Beyond SAST's effectiveness, we quantify potential benefits when changed functions are…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsInformation and Cyber Security · Advanced Malware Detection Techniques · Software Testing and Debugging Techniques
