主页 > 比特币 > 正文

精析DeFi协议Warp Finance“预言机”攻击事件

2020-12-21 09:25

北京时间12月18日6时许,DeFi借贷协议Warp Finance遭到黑客攻击,造成了近800万美元的资产损失。

精析DeFi协议Warp Finance“预言机”攻击事件

同时,Warp Finance官方也发布推文表示,已在调查违规贷款情况,并建议用户暂停稳定币的存入,直到事件真相明朗。

 

成都链安团队在接到区块链安全态势感知平台(Beosin-Eagle Eye)报警后,第一时间对本次攻击事件进行了调查,结果发现:

1、Warp Finance使用的是Uniswap交易对的相对价格作为其预言机的喂价源。

2、攻击者在了解到这个情况后,使用从闪电贷中获取的巨额资金操纵了Uniswap交易对的价格。

3、通过控制预言机喂价源信息,攻击者破坏了Warp Finance的借款价值判断标准。

4、在Warp Finance错误的数据环境下,攻击者窃取了远远超过抵押品价值的资产。

5、攻击者归还了从闪电贷中借出的款项。

攻击交易地址

0x8bb8dc5c7c830bac85fa48acad2505e9300a91c3ff239c9517d0cae33b595090

攻击过程精析

攻击者首先利用Uniswap进行闪电贷借款,并采用镶嵌式(还款前连续操作)的手法,在WBTC2、USDC3以及USDT2池中分别进行了WETH借贷,如下图所示:

精析DeFi协议Warp Finance“预言机”攻击事件

其后,为扩大用于攻击的资金量,攻击者又在dYdX进行了闪电贷借款。如下图所示:

精析DeFi协议Warp Finance“预言机”攻击事件

此时,借出的资金规模已高达近2亿美元.接下来,攻击者向Uniswap的DAI 2交易池中注入流动性,获取了流动性代币LP,如下图所示:

精析DeFi协议Warp Finance“预言机”攻击事件

然后,将所获的LP代币抵押在Warp Finance合约中,交易及代码如下图:

精析DeFi协议Warp Finance“预言机”攻击事件

精析DeFi协议Warp Finance“预言机”攻击事件

完成抵押后,攻击者利用借来的资金,将Uniswap DAI 2池中的DAI兑换殆尽,如下图所示:

精析DeFi协议Warp Finance“预言机”攻击事件

上述“准备工作”完成后,价格已处于被操纵状态。另一方面,Warp Finance的预言机喂价源是来自Uniswap LP代币的价格数据,代码如下图:

精析DeFi协议Warp Finance“预言机”攻击事件

LP代币价格算法

(A代币的价格×A代币池中的持有量+B代币的价格×B代币池中的持有量)/LP代币的总量

相关阅读