原文标题:智能合约安全漏洞检测技术研究综述 Smart Contract Vulnerability Detection Technique: A Survey

原文作者:钱 鹏, 刘振广,何钦铭等

原文链接:DOI 10.13328/j.cnki.jos.006375

原文来源:软件学报 ISSN

0X01 论文摘要

  1. Solidity 代码层、EVM 执行层、区块链系统层这 3 个层面介绍了智能合约常见的漏洞类型和典型案例
  2. 形式化验证法、符号执行法、模糊测试法、中间表示法、深度学习法这 5 类方法综述了智能合约漏洞检测
  3. 对可检测漏洞类型、准确率、时间消耗等方面进行了详细的对比,提出了改进建议

0x02 主要漏洞和相关事件

我印象深刻的主要是可重入漏洞,拒绝服务和未知服务漏洞三个。

文章在讲分析工具的时候,好像没有仔细讲解基于EVM字节码,opcode以及solidity代码 三种检测的区别。

总结

  1. 很好地给出了漏洞类型分类以及对应的实际案例,用简单的例子说明了漏洞如何被利用;
  2. 比较好的是论文提到的内容和这几天看到的一些智能合约漏洞刚好契合,能比较简单的理解入门;
  3. 论文多次提到通过fallback函数实现攻击,不知道现在解决方案如何,值得考究;
  4. 还有就是权限漏洞那部分,require修饰器等,还得仔细看看,入门solidity看过但又忘记了;
  5. 启发点就是实际上就是代码审计的研究 如何把代码规范做好和如何实现自动化审计(深度学习)等方向。

总的来说,这篇综述是很好的,对于想入门的同学,可以仔细研究一下。
而且我们实验室目前好像只听说过有做入侵检测,攻击识别之类的,没听说有代码审计自动化这个方向。

欢迎关注我的个人公众号