比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > Polygon > Info

Furucombo 究竟為何會遭受攻擊?慢霧拆解攻擊細節_COMB

Author:

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

Furucombo此次事故并不在安全漏洞的范疇內,主要的原因在于官方將未啟用的AaveV2Proxy合約添加進了自己的白名單中,并且未對AaveV2Proxy合約進行初始化,導致攻擊者有機可乘。與Furucombo交互過的用戶應及時撤銷相關授權,避免進一步損失。

原文標題:《可避天災,難免人禍——Furucombo被黑分析》撰文:慢霧安全團隊

據鏈聞消息,著名DeFi項目Furucombo被黑,損失約1500萬美元。慢霧安全團隊第一時間介入分析,并將攻擊細節分享給大家。

攻擊細節分析

本次發生問題的合約在Furucombo本身的代理合約當中。整個攻擊流程很簡單。攻擊者通過設置了Furucombo的AaveV2Proxy的邏輯地址導致后續通過Furucombo代理合約調用的邏輯全部轉發到攻擊者自己的惡意合約上,導致任意資金被盜。

Infura現已上線Linea公共測試網端點:5月25日消息,區塊鏈開發平臺Infura現已上線Consen Sys Layer2解決方案Linea公共測試網端點,支持用戶通過Infura端點訪問Linea的公共測試網。此外Infura推出Linea水龍頭,用戶使用Infura賬戶每天可獲得0.5枚測試網ETH。[2023/5/25 10:39:02]

但是如果事情那么簡單,那么本次分析不值一提。問題遠比想象的復雜得多。

如上圖所示攻擊者的入口在Furucombo的batchExec函數,我們先對batchExec函數進行分析:

以上是FurucomboProxy合約的batchExec函數的具體實現,其中_preProcess和_postProcess合約分別是對調用前后做一些數據上的處理,不涉及具體的調用邏輯,這邊可以先忽略。我們主要觀察核心的_execs函數:

以太坊所有公共測試網均已上線Infura ITX功能:1月13日,Ethereum和IPFS的API服務供應商Infura官方發推稱,Infura Transactions(ITX)功能現已上線以太坊所有的公共測試網,即該功能可在Rinkeby、Kovan、Ropsten和Goerli上使用。注:Infura Transactions(ITX)是發送以太坊交易的一種簡化方法,可幫助開發人員簡化Gas費管理相關復雜流程。[2021/1/13 16:02:42]

通過對execs代碼的分析不難發現,函數的主要邏輯是對configs數組的數據做檢查,并根據configs數組的數據對data進行一些處理。但是回顧上文中攻擊者的調用數據,不難發現攻擊者的調用數據中,configs的數據是一個0地址:

動態 | 比特幣礦業巨頭Bitfury投資Shyft Network以構建去中心化產品:比特幣礦業巨頭Bitfury宣布戰略投資區塊鏈公司Shyft Networks,以開發面向政府的去中心化身份識別產品。此前,Shyft一直在打造其旅游規則產品團隊。今年10月,該公司聘用了前FATF高管。現在,Bitfury的子公司Exonum和Crysta也加入這一團隊。(CoinDesk)[2019/12/12]

這里有一個trick,由于0地址是一個EOA地址,所有對EOA地址的函數調用都會成功,但是不會返回任何結果。結合這個trick,execs函數中的關于configs數據的部分可以先暫時忽略。直接看到最后的核心_exec函數:

_exec函數的邏輯也很簡單,在校驗了_to地址后,直接就將data轉發到指定的_to地址上了。而通過對攻擊交易的分析,我們能發現這個_to地址確實是官方指定的合法地址。

動態 | Bitfury在其分析平臺Crystal最新版本中推出三項更新:據Crypto Ninjas報道,比特幣礦商Bitfury近期在其Crystal分析平臺的2.2版本中推出了三項重要產品更新,分別是:活動通知、間接連接和針對以太坊交易的追蹤。[2019/6/4]

最后一步,便是調用_to地址,也就是官方指定的AaveV2Proxy合約的initialize函數,將攻擊者自己的惡意地址設置成AaveV2Proxy合約的邏輯地址。通過對Furucombo合約的分析,可以發現整個調用流程上沒有出現嚴重的安全點,對調用的地址也進行了白名單的檢查。那么問題只能是出在了對應要調用的代理邏輯上,也就是AaveV2Proxy合約。

我們直接分析AaveV2Proxy合約的initialize函數的邏輯:

可以看到initialize函數是一個public函數,并在開頭就檢查了_implementation是否是0地址,如果是0地址,則拋出錯誤。這個檢查的目的其實就是檢查了_implementation是否被設置了,如果被設置了,就無法再次設置。根據這個設置,不難想出initialize這個函數只能調用一次。除非AaveV2Proxy從來沒有設置過_implementation,否則這個調用是不會成功的。難道Furucombo真的沒有設置過對應的_implementation嗎?帶著這樣的疑問,我們檢查了交易內的狀態變化。如下:

可以看到,交易中改變了存儲位置為0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc的內容,而寫入的內容正是攻擊者自己的惡意合約地址0x86765dde9304bea32f65330d266155c4fa0c4f04。

而0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc這個位置,正是_implementation數據的存儲地址。

也就是說,官方從來沒有設置過AaveV2Proxy合約的_implementation地址,導致攻擊者鉆了這個空子,造成了Furucombo資產損失。

總結

通過對整個事件的分析來看,Furucombo此次事故并不在安全漏洞的范疇內,主要的原因在于官方將未啟用的AaveV2Proxy合約添加進了自己的白名單中,并且未對AaveV2Proxy合約進行初始化,導致攻擊者有機可乘。

建議

目前,由于Furucombo遭受攻擊,導致任何將代幣授權過給Furucombo合約(0x17e8ca1b4798b97602895f63206afcd1fc90ca5f)的用戶都將面臨資金損失的風險。

慢霧安全團隊建議與Furucombo交互過的用戶檢查是否有將相關代幣授權給Furucombo合約。如有授權,應及時撤銷相關授權,避免進一步損失。

來源鏈接:mp.weixin.qq.com

免責聲明:作為區塊鏈信息平臺,本站所發布文章僅代表作者個人觀點,與鏈聞ChainNews立場無關。文章內的信息、意見等均僅供參考,并非作為或被視為實際投資建議。

FURUCOMBO

FURUCOMBO

FURUCOMBO旨在節省操作步驟與手續費,無限DeFi組合。在不知道如何編程的情況下,將自己的DeFi投資組合進行集成。將所有策略整合到一個交易中,拖動多維數據集以重新排列操作順序。Furucombo查看更多

Tags:FURCOMCOMBOCOMBFURYSBECOM幣combo幣怎么樣KOACOMBAT

Polygon
波卡生態鏈上治理基礎設施 Dora Factory 完成第二輪融資_CAP

鏈聞消息,波卡生態鏈上治理基礎設施DoraFactory完成第二輪融資,FundamentalLabs、SignumCapital、CMSHoldings、HypersphereVentures.

1900/1/1 0:00:00
layer2整裝待發,附送四種Rollup關聯產品_LAYER

講道理的說,昨天之所以那么早就睡覺了,實在是令梭教授想起了312,一堆人看1000,讓梭教授默默的將4000以下的所有買單全撤了,實在是慌得很.

1900/1/1 0:00:00
能不能賣房梭哈買比特幣?_ASH

1.關注公眾號:道說區塊鏈2.后臺回復:電子書3.獲取《DeFi實戰投資方法論》電子書到目前為止在本輪牛市中,比特幣2020年312暴跌后,從最低點的3000多美元漲到現在的5萬美元左右.

1900/1/1 0:00:00
CellETF:全球最大比特幣基金跌至折價, 投資者爭相退出_CEL

BTC跌破46000美元關口今日凌晨比特幣持續顯著下挫,小時線目前已經處于明顯空頭態勢,截止撰文時,據HuobiGlobal行情顯示,BTC跌破46000USDT.

1900/1/1 0:00:00
簡析主要 Layer 2 DEX 優劣勢:StarkNet、Loopring、ZKSwap 與 Unipig_LAYER

近期以太坊上的高手續費和低TPS使以太坊上的Layer2擴容之爭變成了焦點。本篇文章將以市場上既有的產品為基礎,從技術方案角度出發,比較當下ZKSwap方案和其他擴容方案的異同之處.

1900/1/1 0:00:00
數字美元提速 CBDC暖流涌動_加密貨幣

火熱的央行數字貨幣研發為國與國之間的競爭開辟了新賽道,新一輪貨幣戰爭的硝煙悄然而起。上周,在全球金融市場動蕩和比特幣大跌的背景下,美聯儲主席杰羅姆·鮑威爾、美國財政部長珍妮特·耶倫頻繁發聲,為數.

1900/1/1 0:00:00
ads