Skip to main content
QUICK REVIEW

[论文解读] A Systematic Literature Review on Smart Contracts Security

Harry Virani, Manthan Kyada|arXiv (Cornell University)|Dec 9, 2022
Blockchain Technology Applications and Security被引用 4
一句话总结

本篇系统性文献回顾识别了以太坊智能合约中的关键安全漏洞,分析其根本原因,并评估现有检测技术。该研究综合了221项研究的发现,绘制出常见缺陷(如重入攻击和整数溢出)的图谱,并评估静态分析、形式化验证和机器学习工具在缓解这些漏洞方面的有效性与局限性。

ABSTRACT

Smart contracts are blockchain-based algorithms that execute when specific criteria are satisfied. They are often used to automate the implementation of an agreement so that all parties may be confident of the conclusion right away, without the need for an intermediary or additional delay. They can also automate a process so that the following action is executed when circumstances are satisfied. This study seeks to pinpoint the most significant weaknesses in smart contracts from the viewpoints of their internal workings and software security flaws. These are then addressed using various techniques and tools used across the industry. Additionally, we looked into the limitations of the tools or analytical techniques about the found security flaws in the smart contracts.

研究动机与目标

  • 从内部逻辑和软件实现两个角度,识别并分类智能合约中最常见的安全漏洞。
  • 评估现有用于检测智能合约漏洞的工具与技术的有效性及其局限性。
  • 对当前智能合约安全研究进行全面综合,以指导未来工具开发与安全编码实践。
  • 突出当前检测方法在处理复杂或新型攻击向量方面的不足。
  • 通过基于证据的工具选择与部署建议,支持开发人员和研究人员提升智能合约的可靠性。

提出的方法

  • 依据PRISMA指南开展系统性文献回顾,从主要学术数据库和引用网络中识别相关研究。
  • 基于预设的纳入与排除标准筛选221项研究,重点关注智能合约安全的实证研究。
  • 将漏洞分类为逻辑缺陷(如重入攻击、时间戳依赖)和实现缺陷(如整数溢出、访问控制问题)。
  • 将检测技术与漏洞类型进行映射,包括静态分析、动态分析、形式化验证以及基于机器学习的方法。
  • 根据其覆盖范围、精确率和误报率,评估Mythril、Slither和SmartEmbed等工具。
  • 综合各项研究的发现,识别出工具链中的重复性局限,如可扩展性问题和对复杂控制流处理能力差。

实验结果

研究问题

  • RQ1以太坊智能合约中最常见且关键的安全漏洞是什么?
  • RQ2哪些检测技术与工具在识别这些漏洞方面最有效,其局限性是什么?
  • RQ3在准确性、可扩展性和可用性方面,静态分析、形式化验证与基于机器学习的工具如何比较?
  • RQ4当前研究与工具在智能合约安全方面存在哪些空白,特别是在处理新型或复杂攻击向量方面?
  • RQ5开发人员与研究人员如何利用现有研究成果改进智能合约开发实践与工具?

主要发现

  • 重入攻击、整数溢出/下溢以及访问控制缺陷是以太坊智能合约中最常报告的安全漏洞。
  • 静态分析工具如Slither和Mythril在检测常见漏洞方面表现出高精确率,但在处理复杂控制流和间接调用时表现不佳。
  • 尽管形式化验证技术具有高度准确性,但由于对资源和专业知识要求过高,其在大规模合约中应用不切实际。
  • 基于机器学习的工具如SmartEmbed在识别代码克隆和已知漏洞方面实现了高召回率,在超过22,000个Solidity合约中观察到90%的克隆率。
  • 尽管技术不断进步,但尚无单一工具能全面检测所有类型的漏洞,凸显了混合分析方法的必要性。
  • 本研究揭示了在检测逻辑层攻击(如前端攻击和预言机操纵)方面存在显著工具缺口,这些攻击在当前研究与工具中仍被严重忽视。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。