在区块链短短的历史上发生过跟智能合约相关的攻击事件中,重入攻击无疑是最广为人知的一种类型,在以太坊新创时期,2016 年 7 月的 TheDAO 事件甚至直接造成了以太坊硬分叉为以太经典 ETC 及现在大部分人熟知的以太坊 ETH。这次将由 Amber Group 区块链安全团队负责人 Chiachih Wu 博士,步步深入三种重入攻击的基本概念、背后细节与手法。前情提要:干货 Amber 安全专家吴博士:剖析 BSC 的闪电贷攻击手法,如何再引发 3 个分叉项目连环爆?
本文为数位资产投资集团 Amber Group 的投稿,作者为该集团区块链安全专家吴家志博士Chiachih Wu,同时共同创办了区块链知名安全公司派顿Peckshield。
在 TheDAO 事件给以太坊重击之后,开发者也多了一些方法来防范重入攻击,例如,ChecksEffectsInteractions [1] 以及 Reentrancy Guard [2]。
然而,许多重入攻击仍然持续发生,攻击的形式也从通过 fallback 函数重入同函数转变成通过不同的外部函数进入智能合约,造成合约状态混乱以达成有效攻击。
本文将介绍及重现发生于 2020 年 4 月 UniswapV1 的重入攻击,2021 年 7 月发生在 BSC 上 DeFiPIE 项目的重入攻击,以及近期发生于 CREAM 项目的 AMP 代币重入攻击 [8]。
BitGet中文官网