Static Application Security Testing (SAST) Tools for Smart Contracts: How Far Are We?
Kaixuan Li, Yue Xue, Sen Chen, Han Liu, Kairan Sun, Ming Hu, Haijun, Wang, Yang Liu, Yixiang Chen

TL;DR
This study evaluates the effectiveness of existing SAST tools for smart contracts using a comprehensive, updated vulnerability taxonomy and benchmark, revealing significant detection gaps and guiding future improvements.
Contribution
The paper introduces a detailed vulnerability taxonomy and a large benchmark for evaluating SAST tools, providing a more accurate assessment of their capabilities.
Findings
Existing tools detect about 50% of vulnerabilities.
False positive rate remains high with precision below 10%.
Combining tools reduces false negatives but increases false positives.
Abstract
In recent years, the importance of smart contract security has been heightened by the increasing number of attacks against them. To address this issue, a multitude of static application security testing (SAST) tools have been proposed for detecting vulnerabilities in smart contracts. However, objectively comparing these tools to determine their effectiveness remains challenging. Existing studies often fall short due to the taxonomies and benchmarks only covering a coarse and potentially outdated set of vulnerability types, which leads to evaluations that are not entirely comprehensive and may display bias. In this paper, we fill this gap by proposing an up-to-date and fine-grained taxonomy that includes 45 unique vulnerability types for smart contracts. Taking it as a baseline, we develop an extensive benchmark that covers 40 distinct types and includes a diverse range of code…
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.
