動區動趨-最具影響力的區塊鏈新聞媒體
  • Home
    • Home Layout 1
    • Home Layout 2
    • Home Layout 3
  • Browse
    • News
    • Movie
    • Music
    • Technology
    • Howto & Style
    • Entertainment
    • Gaming
  • Features
    • Youtube Video
    • Vimeo Video
    • Dailymotion Video
    • Self-hosted Video
    • User Profile
    • Playlists
    • User-created Playlist
    • Favorite Playlist (Private)
    • Watch Later Playlist (Private)
    • All JNews Features
No Result
View All Result
  • Login
  • Register
UPLOAD
動區動趨-最具影響力的區塊鏈新聞媒體
No Result
View All Result
Currently Playing

ABS獨家專訪》Gitcoin共同創辦人Scott:台灣是現實與Web3治理的重要交匯點

ABS獨家專訪》Gitcoin共同創辦人Scott:台灣是現實與Web3治理的重要交匯點

ABS獨家專訪》Gitcoin共同創辦人Scott:台灣是現實與Web3治理的重要交匯點

搶先看
ABS獨家專訪》Gate.io CEO韓林:無懼銀行進軍加密服務,台北特別有人情味

ABS獨家專訪》Gate.io CEO韓林:無懼銀行進軍加密服務,台北特別有人情味

搶先看

6 Sci-fi Gadgets in Movie We Wish Actually Existed

Movie

The 10 best games to play on your new PlayStation 4

Gaming

Tesla’s Chinese factory just delivered its first cars

News

資安專欄|DeFi 聚合平台 “Furucombo” 被駭細節分析,與用戶建議

動區今稍早報導,台灣 DeFi 聚合平台 FuruCombo 證實 FuruCombo proxy 合約遭駭,估計損失 1,500 萬美元。動區專欄作者 慢霧 SlowMist 第一時間介入分析,並將攻擊細節分享給大家。
(前情提要: FuruCombo驚傳遭駭「1,500 萬美元」;麻吉大哥的Cream受牽連損110萬鎂)
(背景報導:幣安宣佈投資「台灣DeFi聚合平台FuruCombo」,讓DeFi麻瓜也能實現套利)

 

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

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

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

以上是 Furucombo Proxy 合約的 batchExec 函數的具體實現,其中_preProcess 和_postProcess 合約分別是對調用前後做一些數據上的處理,不涉及具體的調用邏輯,這邊可以先忽略。

我們主要觀察核心的 _execs 函數:

通過對 execs 程式碼的分析不難發現,函數的主要邏輯是對 configs 數組的數據做檢查,並根據 configs 數組的數據對 data 進行一些處理。

但是回顧上文中攻擊者的調用數據,不難發現攻擊者的調用數據中,configs 的數據是一個 0 地址:

這裡有一個 trick,由於 0 地址是一個 EOA 地址,所有對 EOA 地址的函數調用都會成功,但是不會返回任何結果。

結合這個 trick,execs 函數中的關 於configs 數據的部分可以先暫時忽略。直接看到最後的核心_exec 函數:

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

最後一步,便是調用 _to 地址,也就是官方指定的 AaveV2 Proxy 合約的initialize 函數,將攻擊者自己的惡意地址設置成 AaveV2 Proxy 合約的邏輯地址。

通過對 Furucombo 合約的分析,可以發現整個調用流程上沒有出現嚴重的安全點,對調用的地址也進行了白名單的檢查。那麼問題只能是出在了對應要調用的代理邏輯上,也就是 AaveV2 Proxy 合約。

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

可以看到 initialize 函數是一個 public 函數,並在開頭就檢查了_implementation 是否是 0 地址,如果是 0 地址,則拋出錯誤。

這個檢查的目的其實就是檢查了 _implementation 是否被設置了,如果被設置了,就無法再次設置。根據這個設置,不難想出 initialize 這個函數只能調用一次。除非 AaveV2 Proxy 從來沒有設置過 _implementation ,否則這個調用是不會成功的。

難道 Furucombo 真的沒有設置過對應的 _implementation 嗎?帶著這樣的疑問,我們檢查了交易內的狀態變化。如下:

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

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

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

總結

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

建議

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

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

參考連結:

  • 代幣授權檢查地址:https://approved.zone/
  • 攻擊交易:https://ethtx.info/mainnet/0x6a14869266a1dcf3f51b102f44b7af7d0a56f1766e5b1908ac80a6a23dbaf449

📍相關報導📍

事件始末 | 黃立成旗下 Defi 新創Cream.Finance遭閃電貸攻擊,駭客得手近 10億台幣

YFI遭駭!聚合挖礦協議Yearn Finance疑似遭「閃電貸」攻擊,損失1,100萬鎂

425億美元BTC駭客案|東京法院拍板執行「Mt.Gox清償計畫」、澳本聰稱相關錢包是自己的


讓動區 Telegram 新聞頻道再次強大!!立即加入獲得第一手區塊鏈、加密貨幣新聞報導。

LINE 與 Messenger 不定期為大家服務

加入好友

加入好友 

No Result
View All Result

近期文章

  • 精選文章搶先看!動區登入Access質押訂閱服務,解鎖寶貴資訊快人一步
  • ABS獨家專訪》Gitcoin共同創辦人Scott:台灣是現實與Web3治理的重要交匯點
  • ABS獨家專訪》Gate.io CEO韓林:無懼銀行進軍加密服務,台北特別有人情味
  • 快訊!BTC 現在已來到 58996.2
  • 快訊!BTC 現在已來到 58815.03
Next Post
方舟投資 Ark |「比特幣是有效避險資產」女股神 Cathie:BTC 有望取代債券

方舟投資 Ark |「比特幣是有效避險資產」女股神 Cathie:BTC 有望取代債券

Copyright (c) 2019 by Jegtheme.
  • About
  • Buy JNews
  • Request A Demo
  • Contact

Welcome Back!

Login to your account below

Forgotten Password? Sign Up

Create New Account!

Fill the forms below to register

All fields are required. Log In

Retrieve your password

Please enter your username or email address to reset your password.

Log In

Add New Playlist

- Select Visibility -

    No Result
    View All Result
    • Account
    • BlockTempo Beginner – 動區新手村
    • Change Password
    • Forgot Password?
    • Home 1
    • Home 2
    • Home 3
    • Jin-homepage
    • Latest
    • Login
    • Profile
    • Register
    • Reset Password
    • Trending
    • Users
    • Users List Item
    • 不只加密貨幣,談談那些你不知道的區塊鏈應用|動區新手村
    • 所有文章
    • 關於 BlockTempo

    © 2025 JNews - Premium WordPress news & magazine theme by Jegtheme.