中文

通过静态分析狩猎以太坊智能合约中的重入攻击

密码学与安全 2020-09-15 v1

摘要

以太坊智能合约是在由点对点网络管理的基于共识的区块链中部署和执行的程序。近年来,已发现多起重入攻击,旨在窃取存储在已部署智能合约中的以太币(以太坊中使用的加密货币)。针对此类攻击的一种对策是基于动态分析,即执行智能合约本身,但这需要消耗以太币并预先了解攻击模式以进行分析。在本文中,我们提出了一种名为 \textit{RA(重入分析器)} 的静态分析工具,它结合了符号执行和通过可满足性模理论求解器进行的等价性检查,以分析智能合约对重入攻击的漏洞。与现有工具相比,RA 仅使用目标智能合约的以太坊虚拟机字节码,即无需预先了解攻击模式且无需消耗以太币,即可支持分析合约间行为。此外,RA 可以在不执行智能合约的情况下验证是否存在重入攻击漏洞,并且不会产生假阳性和假阴性。我们还展示了 RA 的一个实现,以评估其在分析已部署智能合约对重入攻击的漏洞方面的性能,并表明 RA 可以精确确定哪些智能合约是易受攻击的。

关键词

引用

@article{arxiv.2007.01029,
  title  = {Hunting for Re-Entrancy Attacks in Ethereum Smart Contracts via Static Analysis},
  author = {Yuichiro Chinen and Naoto Yanai and Jason Paul Cruz and Shingo Okamura},
  journal= {arXiv preprint arXiv:2007.01029},
  year   = {2020}
}