比特幣行情 比特幣行情
Ctrl+D 比特幣行情
ads

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

Author:

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

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

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

攻擊細節分析

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

以太坊開發平臺Infura支持Avalanche C-Chain區塊鏈:金色財經消息,以太坊開發平臺Infura宣布支持Avalanche C-Chain區塊鏈,Avalanche C-Chain是一種權益證明Layer1區塊鏈,具有快速吞吐量、低交易費用等特點,支持以太坊虛擬機(EVM)并允許開發人員部署Solidity智能合約。開發人員可以使用現有的以太坊工具(如Remix和MetaMask)測試在Avalanche C-Chain上部署智能合約,內測版候補名單現已開放注冊。[2022/7/20 2:25:42]

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

火幣:未受Infura宕機影響, ETH與ERC20代幣可正常充提:11 月 11 日,因提供免費的以太坊節點 RPC API 服務的 Infura 宕機,導致 MetaMask 數據顯示延遲,部分交易平臺 ETH 與 ERC20 代幣充提服務受到影響。

對此火幣全球站相關負責人表示,火幣安全團隊對 ETH 源碼有深入的研究,并搭建了自己的API 數據服務與服務節點,不依賴例如 Infura 這樣的外部免費服務商的API 服務,因此不受影響,用戶可正常充提 ETH 與 ERC20 代幣。[2020/11/11 12:19:46]

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

動態 | 區塊鏈科技公司Bitfury推出比特幣挖礦基金:據路透社報道,瑞士投資公司Final Frontier和全球區塊鏈技術公司Bitfury Group宣布推出受監管的比特幣挖礦基金。該基金受列支敦士登金融監管機構的監督。[2019/4/24]

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

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

動態 | 挖礦硬件制造商Bitfury推出音樂業務:據路透消息,挖礦硬件制造商Bitfury周三宣布成立一個音樂和娛樂部門,該部門將創建一個受比特幣區塊鏈保護的開源音樂平臺SurroundTM。[2019/1/16]

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

Bitfury與馬耳他Ledger Projects合作創建區塊鏈創新解決方案:據馬耳他獨立報消息,馬耳他Ledger Projects與區塊鏈技術公司Bitfury簽署了合作協議,將在馬耳他創建區塊鏈創新解決方案。Bitfury為政府和私營部門提供硬件和軟件解決方案,并計劃與Ledger Projects獨家合作,將其平臺與Bitfury的區塊鏈基礎設施合并。同時Ledger Projects也將在馬耳他提供Bitfury的廣泛應用。[2018/6/24]

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

最后一步,便是調用_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合約。如有授權,應及時撤銷相關授權,避免進一步損失。

Tags:FURPROCOMCOMBFurukuruViper ProtocolCompound Ethercombo幣公司

芝麻開門交易所下載
數字貨幣:首發 | 歐易OKEx Research:從貨幣演化歷程看數字貨幣未來發展

摘要:數字貨幣可以認為是一種基于節點網絡和數字加密算法的虛擬貨幣。去中心化的數字貨幣沒有發行主體,因此沒有任何人或機構能夠控制它的發行,如比特幣,以太坊等;由于算法解的數量確定,所以數字貨幣的總.

1900/1/1 0:00:00
比特幣:數據:3-5年的比特幣持有者并未因價格波動而拋售

HODLWaves圖表顯示,那些在三到五年前購買比特幣的人并未受到價格波動的影響出售其持有的比特幣.

1900/1/1 0:00:00
FRA:Fractal IDO僅178秒售完 UNISWAP首日交易量超3600萬美金

2月25日,FractalProtocol成功完成了FCL代幣發行,僅用了短短幾分鐘時間,他們就在Polkastarter平臺上成功募集到40萬美元,而且還收到了14萬份白名單彩票的申請.

1900/1/1 0:00:00
DEF:DeFi科普第一課:借貸是DeFi的基石

摘要 今日文章內容分為2部分:1、DeFi世界入門需知;2、目前市場頭部借貸項目基本介紹及借貸玩法。KeyTakeAway:如果我們想要真的在DeFi行業里找到致富秘籍,必然要對借貸有所了解.

1900/1/1 0:00:00
AMM:AMM終極筆記:五大類無常損失解決方案

前言——《AMM終極筆記》是對諸多代表性AMM項目和相關論文進行的一項綜述,由于AMM所涉及層面較為廣泛,本文選取我們認為最能代表AMM本質特征以及未來發展方向的無常損失進行講解.

1900/1/1 0:00:00
COIN:從Coinbase招股說明書看加密數字資產行業的發展趨勢

Coinbase是現在已經計劃在納斯達克通過直接掛牌的方式進行上市。它的招股說明書S1現在已經公開.

1900/1/1 0:00:00
ads