opendir是安全重入函数吗_ReGuard:智能合约中可重入漏洞检测

75f7baafc1a1fba99a6a6b5d97a9edd6.png

论文:Chao Liu, Han Liu, Zhao Cao, Zhong Chen, Bangdao Chen, and Bill Roscoe. 2018.

ReGuard: Finding Reentrancy Bugs in Smart Contracts. In Proceedings of the 40th

International Conference on Software Engineering Companion. IEEE Press.

论文摘要:

智能合约为在区块链上执行加密货币交易提供了一种新途径。尽管这种新技术引入了无冲突机制和透明机制,但智能合约本身是脆弱的。智能合约作为一种特殊的计算机程序,它仍然无法避免产生BUG。更糟糕的是,可利用的安全漏洞可能导致灾难性的后果。例如,损失加密货币。在这篇演示文章中,我们主要关注智能合约中最常见的安全漏洞类型——可重入漏洞。可重入漏洞曾经导致了著名的DAO攻击,致使被攻击者损失高达六千万美元。我们提出了一种基于Fuzzing来分析智能合约中可重入漏洞的工具,Reguard。具体来说,ReGuard通过迭代生成随机且不同的交易事务,对智能合约执行模糊测试。基于运行时追踪,ReGuard将动态识别可重入漏洞。在初步评估中,我们分析了现有的5个Ethereum合同,ReGuard自动标记了7个以前未报告的可重入漏洞。

技术介绍:

文中采用了自己编写的例子介绍了智能合约中可重入漏洞是什么,并且如何被利用:

59518ea13c24188edc79d3c4d1bcf147.png

图1:可被DAO攻击的简单示例

示例代码是用solidity (Ethereum智能合约的一种编程语言)编写的,有两个受害者合约和

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值