比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

首發 | PancakeBunny閃崩事件最全技術細節剖析_BUNNY

Author:

Time:1900/1/1 0:00:00

5月20日,CertiK安全技術團隊發現幣安智能鏈DeFi收益聚合器PancakeBunny(BUNNY)遭到閃電貸攻擊,發生代幣閃崩事件。

此次事件共損失114,631枚BNB和697,245枚BUNNY,按當時價格計算約合約4200萬美元。 

經CertiK安全團隊調查得出,由于該協議是使用PancakeSwap AMM來進行資產價格計算的,因此黑客惡意利用了閃電貸來操縱AMM池的價格,并利用Bunny在鑄造代幣的時候計算上的問題成功完成攻擊。

本次攻擊,攻擊者總共進行了8筆閃電貸。其中7筆閃電貸來自PancakeSwap 流動性池的BNB,另外一筆則來自ForTube Bank的USDT。

在文中,CertiK安全專家添加了地址標簽(如下圖所示),使代幣的流向更加清晰。

攻擊者的地址:https://bscscan.com/address/0xa0acc61547f6bd066f7c9663c17a312b6ad7e187

攻擊者使用的合約地址:https://bscscan.com/address/0xcc598232a75fb1b361510bce4ca39d7bc39cf498

LBank藍貝殼于5月3日20:00首發 CSPR(Casper),開放USDT交易:據官方公告,5月3日20:00,LBank藍貝殼上線 CSPR(Casper),開放USDT交易,同時并開放充值,資料顯示,Casper網絡是基于CasperCBC規范構建的第一個實時權益證明區塊鏈。Casper旨在加速當今企業和開發人員對區塊鏈技術的采用,同時確保隨著網絡參與者需求的發展,其在未來仍能保持高性能。[2021/5/3 21:19:51]

交易一: 

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

在第一筆交易中,攻擊者完成了兩件事:

①將BNB轉換成 "USDT-BNB FLIP"。

②將 "USDT-BNB FLIP "存入BUNNY的池子。

攻擊者將FLIP存入資金池,這樣當其在后期調用VaultFlipToFlip合約中的Withdraw()或getReward()函數時,資金池將鑄造BUNNY代幣。

動態 | 可信教育數字身份在廣州白云區首發 采用區塊鏈等技術:12月25日,可信教育數字身份(教育卡)廣東省應用試點首發儀式與應用研討在廣州市白云區舉行。

據介紹,可信教育數字身份融合采用國產密碼、區塊鏈等核心技術,創新簽發“云計算、邊緣計算、移動計算”網絡環境下的一體化數字身份,實現一體化密鑰管理,構建“可信教育身份鏈”。(中國新聞網)[2019/12/25]

①"Zap"所做的是將所提供的代幣的一半換成一對中的另一個代幣,并將兩個代幣提供給相應的PancakeSwap池。這也可以通過BUNNY的Dapp前端來完成。

②將USDT-BNB FLIP存入池中。

交易二: 

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

在完成第一筆交易將"USDT-BNB FLIP "存入BUNNY資金池之后,攻擊者進行了第二筆交易,這也是大多數人最關注的交易。

首發 | DVP: Bitstamp交易所存在漏洞 可導致大量KYC等信息被泄露:金色財經訊,近日,DVP收到安全人員提交的全球知名交易所Bitstamp的漏洞,攻擊者可以利用該漏洞查看大量用戶ID、銀行卡等敏感信息,嚴重威脅用戶信息安全。為避免發生KYC泄露的惡性事件,DVP安全團隊在收到該漏洞后,第一時間通知該平臺進行修復,但未收到回應。DVP提醒相關用戶關注個人信息安全,以免造成損失。[2019/8/13]

接下來把第二筆交易中的發生的所有代幣的轉移分解成多個部分:

①攻擊者從7個不同的PancakeSwap流動性池中利用閃電貸共借了232萬BNB,從ForTube用閃電貸款借了296萬USDT。

然后攻擊者向 "USDT-BNB''池提供了7700枚BNB和296萬USDT的流動性,獲得了14.4萬LP代幣。

②攻擊者將從閃電貸中獲得的232萬BNB在PancakeSwap V1池中換取了383萬USDT。

由于V1池的BNB和USDT儲備遠少于V2池,V1池的價格更容易被操縱,在將BNB換成USDT后,BNB價格急劇下降。

首發 | 螞蟻礦機S17真機圖首次曝光 采用雙筒風扇及一體機設計 ?:繼正式宣布在4月9日現貨銷售后,比特大陸即將發布的新品螞蟻礦機S17又有了新動態。據悉,螞蟻礦機S17真機圖今天在網上首次曝光。

從曝光的圖片來看,螞蟻礦機S17延續上一代產品S15的雙筒風扇設計,且采用一體機的機身設計。有業內人士認為,采用雙筒設計可有效縮短風程,礦機出入風口的溫差變小,機器性能將得到很大改善。

此前比特大陸產品負責人在接受媒體采訪時表示,新品S17較上一代產品相比,無論是在能效比還是單位體積的算力等方面,均有較大提升。[2019/4/3]

③上文提到攻擊者在 "交易一 "中把 "USDT-BNB FLIP "存到BUNNY池,現在攻擊者可以調用 "getReward() "函數來鑄造BUNNY。

在調用"VaultFlipToFlip "合約中的 "getReward() "函數時產生了大量代幣轉移記錄,如截圖所示。

IMEOS首發 EOS Go公布新增兩條復選條件 :據金色財經合作伙伴IMEOS報道:今日,EOS Go在 steemit上公布新增的兩條復選條件為:

1. 保證安全的計劃:候選節點是否在steemit上發布文章介紹該節點的安全方法和計劃,“安全方法”標準是向EOS選民展示安全最佳實踐知識和組織實施計劃的機會;

2. 立場:描述該節點分享通脹獎勵和/或向EOS代幣持有人派發股息的立場(候選節點在steemit發布)。主要闡述以下兩個問題:

該組織是否會出于任何原因向EOS令牌選民提供支付,包括BP選舉和社區建議?

該組織是否有書面的無票付款政策?如果是這樣,請提供一個鏈接。[2018/4/27]

上圖中這個函數發生的細節如下:

?BUNNYMinterV2從USDT-BNB v2池中取出流動性——從池中取出296萬USDT和7744枚BNB。

?將USDT換成BNB。在ZapBSC合約中使用的是V1 PancakeSwap Router 而不是V2。

由于V1池的價格已經被操縱(見步驟②),攻擊者能夠將296萬USDT換成231萬BNB。

然后,一半的BNB(115.6萬)被換成BUNNY,另一半的BNB(115.6萬)和換來的BUNNY被添加到BNB-BUNNY池中。

現在,大量的BNB被加入到BNB-BUNNY池中,這增加了BNB(reserve0)的數量。

當之后計算要鑄造的BUNNY數量時,這將被用來操縱 "valueInBNB "變量。

ZapBSC 合約地址 https://bscscan.com/address/0xf4c17e321a8c566d21cf8a9f090ef38f727913d5#code

?把標記?中移除流動性獲得的7700BNB交換一半到BUNNY,并將另一半BNB與BUNNY配對,以提供 "BNB-BUNNY "池中的流動性。

注意標記?、?和?發生在 "BUNNYMinterV2 "合約的 "mintForV2 "函數中的"_zapAssetsToBUNNYBNB "函數調用。

BunnyMinterV2合約地址:https://bscscan.com/address/0x819eea71d3f93bb604816f1797d4828c90219b5d#code

?從標記?和?產生的所有LP代幣都被送到PancakeSwap的BUNNY池中,這是BunnyMinterV2合約中 "mintForV2 "函數中的這行代碼所執行的結果:

"IBEP20(BUNNY_BNB).safeTransfer(BUNNY_POOL, bunnyBNBAmount);" 

如標記?所示,該合約繼續執行,鑄造了700萬的BUNNY(基于之前的BUNNY價格價值可達約10億美元)。

那么,是什么原因導致合約鑄造了這么多的BUNNY?呢?

在bunnyMinterV2合約中,要鑄造的BUNNY數量與 "valueInBNB "變量有關,該變量是通過`priceCalculator.valueOfAsset(BUNNY_BNB, bunnyBNBAmount)`函數計算得出的。

在函數`valueOfAsset`中,valueInBNB的計算方法是:`valueInBNB = amount.mul(reserve0).mul(2).div(IPancakePair(asset).totalSupply())`

因為在BNB-BUNNY池中有大量的BNB(正如上圖標記?、?中解釋的那樣),變量 "reserve0"是一個非常大的值,使 "valueInBNB "變得很大,所以它最終會增加鑄造的BUNNY數量。

④在收到700萬的BUNNY后,攻擊者在PancakeSwap BNB-BUNNY V1池和V2池中將BUNNY換成BNB。

⑤最后,攻擊者向ForTube和PancakeSwap的7個流動性池償還閃電貸,并將69.7萬枚BUNNY和11.4萬枚BNB轉移到攻擊者的地址。

這種攻擊奏效的原因之一是"ZapBSC "合約(https://bscscan.com/address/0xf4c17e321a8c566d21cf8a9f090ef38f727913d5#code)使用PancakeSwap V1流動性池,通過V1 PancakeSwap Router進行代幣交換。

很多DeFi項目無法從PancakeSwap V1過渡到V2,因為它們在合約中把PancakeSwap Router和池子的地址寫死為V1的地址。

由于V1流動性池已經被放棄,它們的池子中代幣的儲備量很低,這使得攻擊者更容易操縱其中的代幣價格。

當前的加密世界中,這樣的閃電貸攻擊和惡意價格操縱必然不會是最后一次。

CertiK建議DeFi項目將其PancakeSwap集成從V1遷移到V2。

同時也可使用時間加權平均價格(TWAP)來避免價格異常波動所帶來的損失,以此防范黑客利用閃電貸攻擊價格預言機。

迄今為止,CertiK已進行了超過700次的審計,保護了超過300億美元的數字資產與軟件系統免受安全損失。

Tags:BNBQUOBUNNYBUNbnb游戲QUO幣Bunny Girl UniverseBUNNY價格

SHIB最新價格
三分鐘了解 DeHive:打造全面配置 DeFi 資產的極簡方案_DeHive

DeFi 熱潮已持續了近一年時間,對于普通投資者,尤其是近段時間剛剛接觸 DeFi 的新手來說,市場的快速迭代讓「入場」的學習成本越來越高.

1900/1/1 0:00:00
一文了解新型算法穩定幣Malt_穩定幣

在過去的一年中,出現了許多新的算法穩定幣。這些項目中的大多數要么將其代幣錨定某個實際價值,例如1美元(例如ESD,以及最近的FEI),要么不掛鉤但相對穩定,例如RAI和OHM.

1900/1/1 0:00:00
Dora Factory Balancer LBP 參與教程_DORA

Balancer LBP 首發活動時間初步定在 2021 年 3 月 22 日 UTC+0 時間 12:00pm (GMT+8 時間 20:00 pm) 開始,持續 46.5 小時左右.

1900/1/1 0:00:00
Casper生態新星Metis 如何完美結合Layer2和DAO?_METIS

眼下的加密貨幣市場如火如荼,層出不窮的項目涌入市場,投資者稍不注意就會在信息噪音中錯失真正的價值標的.

1900/1/1 0:00:00
OpenOCean:全聚合協議_PEN

聚合是互聯網誕生以來一直存在的重要模式,比如谷歌和百度對互聯網信息的聚合,亞馬遜和阿里對商品信息的聚合。通過聚合在互聯網時代造就了好幾個千億美元級別的科技巨頭.

1900/1/1 0:00:00
UMA:更有趣的合成資產_MAN

出品:CRYPTOHUNTER 項目簡介 UMA 是一個去中心化的協議,提供無需信任的金融合約和去中心化預言機.

1900/1/1 0:00:00
ads