DualPools 攻擊分析

訪客 1年前 (2024-02-23) 閱讀數 247 #區塊鏈
文章標簽 前沿文章

來源:深圳零時科技

背景

監測到針對DualPools的鏈上攻擊事件:

https://bscscan.com/tx/0x90f374ca33fbd5aaa0d01f5fcf5dee4c7af49a98dc56b47459d8b7ad52ef1e93

DualPools (https://dualpools.com)?是基于VenusProtocol (https://venus.io/)?修改,是一個DeFi項目,提供了Swap, Lend, Borrow等服務。

其運行模式如下圖:

LFtkRMGGShYg3t6sqNnkYnZwu0cJgZJ9cprPj8rw.png

DualPools是一個去中心化借貸平臺,用戶通過deposti存入underlyingAssets(標的資產),獲得對應的dToken;反之,通過Redeem取出underlyingAssets時,銷毀對應的dToken。

其中,underlyingAssets標的資產和dToken的兌換比例是通過exchangeRate(流動性指數)來控制的,簡單來講exchangeRate就是dToken的價值。

exchangeRate = (totalCash + totalBorrows - totalReserves) / totalSupply

攻擊分析

簡單來講,攻擊分為兩部分:

1. 黑客通過DualPools新交易池流動性不足(流動性為0),大幅抬高dLINK的價格,通過borrow掏空其他交易池的標的資產(WBNB, BTCB,ETH, ADA, BUSD)。

2. 利用精度截斷的問題,取回前期投入的所有LINK。

步驟1詳細分析

攻擊者通過DODO Private Pool和PancakeSwapV3進行借貸,獲取BNB和BUSD作為初始攻擊資金,如下圖:

C2A8bJTpW0ryvesjNX3qtczpiHdo81Yv6m2ucwTm.png

隨后,通過VenusProtocol抵押BNB和BUSD,并借出11500 LINK來進行針對DualPools的攻擊。

rgXjspK0LNqzS7kDZjZbbe7DQ5MsnFmW9Uf4uCSE.png

首先,攻擊者通過再交易池dLINK-LINK?mint獲得2個最小單位的dLINK,隨后,向交易池中轉賬11499999999999999999998個單位的LINK。

8v8ZeeIjJYPsGHmFnoWqjmNqCAsSf1KfVbJWM3s8.png

由于該交易池并未初始化,所以沒有任何流動性。且exchangeRate的計算方式如下:

exchangeRate = (totalCash + totalBorrows - totalReserves) / totalSupply

此時totalCash為交易池中LINK的余額,為11499999999999999999998+2=11500000000000000000000,totalBorrows和totalReserves均為0,totalSupply為2(因為,黑客通過mint獲得了2個最小單位的dLINK)。所以,此時的exchangeRate為5750000000000000000000(將dLINK的價值拉高了575倍)。由于攻擊者擁有的2個dLINK,且價值足夠高,所以,黑客從其他池子中通過borrow借走了50 BNB, 0.17 BTCB, 3.99 ETH, 6378 ADA, 911 BUSD。

vXaWCnErqy0sDeMRZVkuemWhBDGcRDHoKNFbabvR.png

步驟2詳細分析

攻擊者通過redeemUnderlying將之前mint的2個最小單位dLINK兌換為11499999999999999999898個單位的LINK。因為,exchangeRate被攻擊者操縱為5750000000000000000000。所以,兌換11499999999999999999898個最小單位的LINK需要的dLINK為 11499999999999999999898 / 5750000000000000000000 = 1.999999999999999?即1.999999個最小單位的dLINK,但是由于數據精度截斷,導致只需要1個最小單位的dLINK。

AVKq3nysStFCV5jXFFXOYEN4OSTFCqpyd4aQHvZd.png

至此,攻擊者取出了之前投入的 11499999999999999999898?個單位的LINK。隨后,將從VenusProtocol, PancakeSwapV3, DODO Private Pool的借款歸還,完成攻擊。

7BuX3BvRPfFMZVFeHEIfUXnf44pVTVaRUVOCbc1N.png

總結

攻擊者利用DualPools新交易池流動性差的原因,操縱標的資產的exchangeRate,導致標的資產對應的dToken價格失真,從而可以以極小的dToken作為抵押借出大量的其他標的資產。隨后,利用智能合約除法的截斷問題,取回之前攻擊時投入的資產。至此,完成對DeFi項目DualPools的攻擊。

熱門
主站蜘蛛池模板: 亚洲av永久中文无码精品综合| 国产一级淫片免费播放| tube8最近日本护士| 日本乱妇bbwbbw| 亚洲av永久无码精品网站| 激性欧美激情在线aa| 啊!摁摁~啊!用力~快点视频免费| 黑人巨大精品欧美一区二区免费 | 好男人好资源在线观看免费 | 欧美性受xxxx白人性爽| 免费看美女被靠到爽的视频| 色婷婷在线视频观看| 国产成人午夜高潮毛片| 97久久天天综合色天天综合色| 婷婷国产偷v国产偷v亚洲| 中文字幕日韩精品无码内射| 日韩午夜中文字幕电影| 亚洲一区日韩一区欧美一区a| 欧美色吧视频在线观看| 人人爽天天爽夜夜爽曰| 精品亚洲456在线播放| 四虎国产精品免费久久久| 蕾丝av无码专区在线观看| 国产性夜夜春夜夜爽1a片| 亚洲综合久久一本伊伊区| 国产精品永久免费视频| 97精品在线观看| 天堂网在线www| 一个色中文字幕| 巨胸喷奶水视频www网快速| 中文字幕乱码中文字幕| 无码日韩精品一区二区免费| 久久午夜无码鲁丝片直播午夜精品 | 国产寡妇树林野战在线播放| 亚洲精品中文字幕无乱码麻豆 | 久久精品国产99国产精品| 樱桃视频影院在线播放| 亚洲国产日韩女人aaaaaa毛片在线| 欧美高清性XXXXHDVIDEOSEX| 亚洲综合色婷婷在线观看| 狠狠综合久久综合网站|