- 简介近年来,智能合约安全的重要性因攻击数量的增加而增强。为了解决这个问题,已经提出了许多静态应用程序安全测试(SAST)工具来检测智能合约中的漏洞。然而,客观比较这些工具以确定它们的有效性仍然具有挑战性。现有的研究通常由于分类和基准只涵盖一组粗略且可能过时的漏洞类型而不够全面,这导致评估不完全全面并可能显示偏见。 在本文中,我们通过提出一个最新的、细粒度的分类法,其中包括智能合约的45种独特漏洞类型,来填补这一空白。以此为基础,我们开发了一个广泛的基准,涵盖了40种不同类型,并包括各种代码特征、漏洞模式和应用场景。基于此,我们使用这个基准评估了8个SAST工具,其中包括788个智能合约文件和10,394个漏洞。我们的结果显示,现有的SAST工具无法检测到基准中约50%的漏洞,并且存在高假阳性,精度不超过10%。我们还发现,通过组合多个工具的结果,可以有效地减少假阴性率,但代价是标记更多的函数,达到36.77个百分点。尽管如此,许多漏洞,特别是超出访问控制和重入漏洞的漏洞,仍然未被检测到。最后,我们强调了本研究的有价值的见解,希望为开发人员、研究人员和实践者提供工具开发、增强、评估和选择的指导。
-
- 图表
- 解决问题本论文旨在解决智能合约安全性问题,提出了一个细致的漏洞分类法,并开发了一个广泛的基准测试,以评估8种SAST工具的有效性。
- 关键思路本论文的关键思路是提出了一个包括45种独特漏洞类型的分类法,并开发了一个基准测试,覆盖了40种不同的漏洞类型,评估了8种SAST工具的漏洞检测效果。
- 其它亮点本论文的实验设计覆盖了大量的代码特征、漏洞模式和应用场景,使用了一个包含788个智能合约文件和10,394个漏洞的基准测试。结果显示,现有的SAST工具在漏洞检测方面存在较高的误报率和漏报率,而通过多种工具的结果组合,可以有效地降低漏报率。然而,许多漏洞仍然无法被检测出来。
- 近年来,智能合约安全性方面的研究日益增多。相关的研究包括:《Smart Contract Security: Attacks and Countermeasures》、《A Survey of Attacks and Defense Mechanisms in Ethereum Smart Contracts》等。
NEW
提问交流
提交问题,平台邀请作者,轻松获得权威解答~
向作者提问

提问交流