Balancer攻击解析

2020-06-30 15:07 栏目:经验之谈 来源:网络整理 查看()

北京时间6月29日凌晨2点03分,天网系统发现10355807区块平衡器DeFi合同异常,安全研究员迅速介入调查,攻击过程浮出水面。

事物概述

6月29日凌晨2点03分,攻击者利用从dYdX闪存贷款中借入的WETH购买了大量STA令牌,导致STA与其他令牌之间的交易价格大幅上涨。然后,我们继续以最小的STAs数(值为1e-18)进行回购,每次回购后,利用平衡器的契约漏洞重置内部STAs数(值为1e-18),以稳定STAs的高价。

攻击者不断利用漏洞,用昂贵的STA(韦瑟、WBTC、林克和SNX)完全购买令牌,最后用韦瑟偿还闪电贷款,留下大量STA、韦瑟、WBTC、林克和SNX,并通过uniswap将非法所得转移到自己的账户。这次袭击获利约90万元人民币。

CertiK分析了袭击者在这次事件中的心理特征;

Balancer攻击解析

在调用STA余额后,攻击者迅速调用Swapexactmount函数来购买STA,在第24次交易中,另一个函数Swapexactmount被用来准确地购买最小数量的STA(1e-18),从而最大化后续攻击的效率。在最初的六笔交易中,当没有必要的时候,它在三次购买后被卖掉,并且有四笔WEST损失了,所以这是值得怀疑的。而且可以隐藏自己闪电贷款阶段的痕迹,有黑客的特点。

CertiK判断攻击者是一个有经验的黑客团队经过充分准备后进行的攻击尝试,攻击者很有可能会继续攻击其他DeFi合同。

攻击再现

第0阶段:攻击者从dYdX闪存贷款中借款,以获得初始的WETH资金。

第一阶段:攻击者使用WETH在平衡器中购买尽可能多的STA,从而使STA的价格最大化。

阶段2:攻击者用获得的STA多次购买WETH。每次都使用最小数量的stas (1e-18)进行购买,stas的数量通过使用平衡器的内部漏洞函数gulp()来控制WETH的stas价格而被锁定。多次重复此回购操作,直到平衡器中的WETH为空。

阶段3:更改令牌,并使用STA重复阶段2,直到令牌为空。第三阶段重复了三次,共有四个代币遭受损失,分别是韦瑟、WBTC、林克和SNX。

第四阶段:偿还dYdX快速贷款并离开。

攻击者获利

Balancer攻击解析

攻击者攻击地址:

0x81 d 73 c 55458 f 024 CDC 82 bbf 27468 a2 deaa 631407

攻击者的最终付款地址:

0x BF 675 c 80540111 a 310 b 06 e 1482 f 9127 ef 4e 7469 a

攻击者最终获利55326240837032 eth,约90万元(北京时间20200630上午9: 30)

弱点分析

平衡器契约的Gulp()函数用于将某个令牌的内部记录值覆盖到该令牌的当前实数,但它被错误地设置为无限制的外部函数。Gulp()函数不应该是外部的,或者应该为特定用户或智能合同所有者添加身份验证或保护限制。

Balancer攻击解析

参考:

1.平衡器Github:

https://github.com/balancer-labs/balancer-core/blob/140 df 49361 a 58 E6 c 79 b 395964 be 98387702 a7 c 0d/contracts/BPool . sol # L334

https://github.com/balancer-labs/balancer-core/blob/140 df 49361 a 58 E6 c 79 b 395964 be 98387702 a7 c 0d/contracts/BMath . sol # L28

https://git hub.com/balancer-labs/balancer-core/blob/140 df 49361 a 58 E6 c 79 b 395964 be 98387702 a7 c 0d/contracts/BPool . sol # L423

2.攻击交易记录:

https://et htx . info/main net/0x 013 be 97768 b 702 Fe 8 ECE cf 1a 40544 D5 ECB 3c 1961 ad 5f 87 fee 4d 16 FDC 08 c 78106

3.官方攻击报告:

https://medium.com/balancer-protocol/incident-with-non-standard-erc20-通货紧缩-tokens-95a0f6d46dea

微信二维码
售前客服二维码

文章均源于网络收集编辑侵删

提示:仅接受技术开发咨询!

郑重申明:资讯文章为网络收集整理,官方公告以外的资讯内容与本站无关!
NFT开发,NFT交易所开发,DAPP开发 Keywords: NFT开发 NFT交易所开发 DAPP开发