風險提示:防範以"虛擬貨幣""區塊鏈"名義進行非法集資的風險。——銀保監會等五部門
資訊
發現
搜索
登錄
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt
BTC
ETH
HTX
SOL
BNB
查看行情
一文复盤Flurry Finance被攻擊事件
CertiK
特邀专栏作者
2022-02-23 13:00
本文約1937字,閱讀全文需要約3分鐘
CertiK 安全團隊將從合約地址及攻擊操作等方面為大家進行詳細的解讀並分析。

攻擊者:

攻擊步驟

攻擊步驟

攻擊者:

攻擊者:

https://bscscan.com/address/0x0f3c0c6277ba049b6c3f4f3e71d677b923298b35

惡意Token 合約:

https://bscscan.com/address/0xb7a740d67c78bbb81741ea588db99fbb1c22dfb7

PancakeSwap 交易對:

https://bscscan.com/address/0xca9596e8936aa8e902ad7ac4bb1d76fbc95e88bb

攻擊者從Rabbit 的Bank 合約中進行閃電貸,並觸發了StrategyLiquidate 的execute 方法。

execute 方法將輸入數據解碼為LP Token 地址,並進一步得到惡意Token 合約地址。

攻擊者利用惡意Token 合約中的攻擊代碼發起初步攻擊:

https://bscscan.com/address/0xbeeb9d4ca070d34c014230bafdfb2ad44a110142

StrategyLiquiddate 合約:

https://bscscan.com/address/0x5085c49828b0b8e69bae99d96a8e0fcf0a033369

惡意Token 合約調用FlurryRebaseUpkeep 合約的performUpkeep 方法,對Vault 合約的相關金額進行重新統計,並更新了與之相關的Rho Token 的multiplier。

此處的multiplier 將用於Rho Token 的餘額計算。對Vault 合約的相關金額進行重新統計,並更新了與之相關的Rho Token 的multiplier。此處的multiplier 將用於Rho Token 的餘額計算。該更新基於與Vault 合約相關的盈利策略合約裡的餘額。

更新是在閃電貸的過程中觸發的,此時的閃電貸還未結束,借出的金額也還未歸還,因此Bank 合約的當前餘額遠小於正常值。此Bank 合約也是某個strategy 的一部分,因而使得某strategy 的餘額小於正常值,進一步導致multiplier 小於正常值。

FlurryRebaseUpkeep 合約:

https://bscscan.com/address/0x10f2c0d32803c03fc5d792ad3c19e17cd72ad68b

其中一個Vault 的合約:

https://bscscan.com/address/0xec7fa7a14887c9cac12f9a16256c50c15dada5c4

攻擊者歸還了閃電貸的款項並完成了初步攻擊,且為進一步攻擊獲利做好了準備。

在緊接著的交易中,攻擊者以前一次交易中得到的低multiplier 存入Token ,將multiplier 更新為更高的(正常)值,並以高multiplier 提取Token 。例如,在其中一筆初步攻擊的交易中,multiplier 被更新為4.1598e35。

在進一步攻擊的交易中multiplier 被更新為4.2530e35。

攻擊實例:

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

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

因為multiplier 乘數是決定Rho Token 餘額的因素之一:

寫在最後

寫在最後

寫在最後

該次事件主要是由外部依賴性引起的。

因此CertiK 的安全專家建議:項目在與外部合約交互之前應對其安全性有清晰的認知,並且限制外部依賴可能對自身合約的影響。

除此之外,CertiK 官方推特除此之外,

除此之外,CertiK 官網已添加社群預警功能。在官網上,大家可以隨時看到與漏洞、黑客襲擊以及Rug Pull 相關的各種社群預警信息。

DeFi
安全