从进攻流程上来看,这一次与上次恰好相反,但整体上的套利手段照旧一致的,基础原因主要是由于平台间共享活动性过小以及价值机制设计缺陷导致的。
第一步:闪贷获取可用资产 这两步调也是正常的 DEX 币币互换的进程,,在这两个批次操纵之后 sUSD 对 ETH 的价值疯涨到了 0.00899,是市场价的 2.5 倍。
第四步:抵押借钱
到此为止,进攻者手里已经拥有的 sUSD 总量为 1,099,841 枚,占总刊行量的 19.7%。
第二步:拉升 sUSD
3)进攻者手上还持有 2,378 枚 ETH。
bZx 合约有一个 flashBorrowToken() 接口,答允挪用者可以“零本钱”从 bZx 平台上借出资产参加 DeFi 勾当,之后在完成这一笔生意业务的时候送还这部门资产。且挪用者在借出资产的同时,可以指定资产的吸收方地点。
第五步:闪贷还款
本文的初志是但愿通过阐明此裂痕的一些进攻细节让各人可以或许更直观的相识此次进攻事件,并但愿可以引起更深入的接头。我们相信,这些接头将对 DeFi 社区的完善和成长是十分有益的,出格是项目方在开拓下一代的 DeFi 类产物时,可以有助于设计出更安详,更靠得住的活动性共享模子。
首先,我们先容一下本日进攻者的最佳副角:sUSD,sUSD 是由 Synthetix 项目方刊行的不变币,其币价正常环境下与 1 美元持平,总刊行量为 5,563,037 枚(统计于 2020年02月18日)。
本次进攻者向 bZx 平台借出 7,500 ETH,并指定进攻者的合约(此前已经陈设)为资产吸收方地点,这部门是根基的借贷成果,此处不做进一步表明。
02月18日,bZx 再次遭遇了雷同的进攻,这一次的进攻从技能道理与上一次差异,此次黑客是通过哄骗 Oracle 价值对 bZx 合约举办了“蒙骗”。
第三步:吸纳更多筹码
到此为止,系统的账本信息如下:
由于各项目由差异团队开拓,对各自产物的设计与实现领略有限,集成的产物很大概在与第三方平台交互的进程中呈现安详问题,进而腹背受敌。PeckShield 在此发起,DeFi 项目方在上线之前,该当尽大概寻找对 DeFi 各环节产物设计有深入研究的团队做一次完整的安详审计,以制止潜在存在的安详隐患。1)当引入第三方 Token 的时候,需要考查第三方 Token 的安详性,有没有大概被片面市场哄骗,从而引起价值颠簸;
最终进攻者手中持有的 2,378 ETH 部门为其赢利,合计 $665,840(当前 ETH 价值$280);而 bZx 平台欠债为 2,868 ETH(6,796 – 1,099,841/280),即 $803,040。
当前系统中的账本数据如下:当这一步操纵事后,如下表中所示系统资产漫衍:
1)bZx 平台对进攻者借出的 6,796 ETH;
进攻者操作从 bZx 借到的 6,796 枚 ETH 以及手中剩余的资产一起还给之前从 bZx 借出来的 7,500 ETH,然退却场分开,完成闪贷操纵。
进攻者将手里拥有的 1,099,841 枚 sUSD 通过 bZx 的 borrowTokenFromDeposit() 接口全部抵押到 bZx 合约之中,凭据 sUSD/ETH 正常价值的话,bZx 该当借给进攻者 3,928 ETH,可是 bZx 从 Oracle Kyber 这边获取的价值偏高,使得借出了 6,796 枚 ETH,多借了 2,868 ETH。裂痕的进攻细节如下:
此进攻事件产生在北京时间 2020-02-18 11:18:58(块高度#9504627 )。进攻者的生意业务信息可以在 etherscan 上查到。此进攻进程可以分为以下五个步调:
从第一次 bZx 被进攻损失 1,271 枚 ETH,这一次又损失 2,378 枚,且这两次进攻之间只相差了 3 天时间,可见 DeFi 出格项目标安详问题很是严峻。
2)bZx 平台持有 1,099,841 枚 sUSD;
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。