數據驗證環節漏洞導致損失330萬美元,詳解Socket攻擊事件始末

2024-02-04 13:02:15

2024 年 1 月 16 日,Socket Tech 遭到攻擊,損失約 330 萬美元。攻擊者利用了 Socket 某合約中數據驗證環節的漏洞,通過惡意數據輸入盜取了授權合約的用戶資金。這次攻擊共給 230 個地址帶來損失,最大的單地址損失約為 65.6 萬美元。

背景介紹

Socket 是一種服務於跨鏈安全、高效數據和資產傳輸的互操作性協議。Socket Gateway 合約是與 Socket 流動性層所有交互的接入點,所有資產橋接器和 DEX 在此匯聚成一個唯一的元橋接器,並根據用戶偏好(如成本、延遲或安全性)選擇最佳交易路由。

黑客攻擊發生的前三天,Socket 合約管理員執行了 addRoute 命令,在系統中加入了一條新路由。添加路由的目的是擴展 Socket 網關的功能,但卻無意中引入了一個關鍵漏洞。

下圖為通過合約管理員添加路由的記錄:

 

事件梗概

1.北京時間 1 月 16 日 15: 03 ,攻擊者錢包轉入攻擊所用資金,我們的時間分析表明這筆資金來自0x e 620 ,與從 Tornado Cash 提取的 10 BNB 有關。

2.這些資金被用於創建和執行兩個合約來利用 Socket 的漏洞。第一個合約針對的是授權了 SocketGateway 的地址中的 USDC(截圖如下)。127 名受害者被騙走約 250 萬美元。

3.接下來,第二個合約則將目標對准了受害者地址內的 WETH、USDT、WBTC、DAI 與 MATIC。於是,另外 104 名受害者損失了約如下資產:

-42.48 WETH

-347, 005.65 USDT

-2.89 WBTC

-13, 821.01 DAI

-165, 356.99 MATIC

4.攻擊者將 USDC 與 USDT 轉換成了 ETH。

漏洞來源

被攻擊者利用的漏洞存在於新添加的路由地址 routeAddress 內的 performAction 函數中。

該地址內的 performAction 函數原本的功能是協助 Wrapping 與 Unwrapping 的功能。

然而,該函數中出現了一個關鍵漏洞:用戶在無需驗證的情況下,直接在.call() 中通過 swapExtraData 調用外部數據,這意味着攻擊者可以執行任意惡意函數。

在這次事件中,攻擊者制作了一個惡意的 swapExtraData 輸入,觸發 transferFrom 函數。該惡意調用利用了用戶對 SocketGateway 合約的授權,從他們那裏盜走了資金。

雖然合約會通過檢查余額檢查確保 fromToken.call()調用後用戶余額會出現正確的變化,但該函數沒有考慮攻擊者將金額設置為 0 的情況。

還原攻擊流程

1.使用攻擊合約,攻擊者在 Socket Gateway 合約上調用了0x 00000196()。

2.fallback() 使用六進制籤名 196 調用了有漏洞的路由地址合約(routerAddress)。

3.在下面的截圖中,我們可以看到攻擊者使用的虛假輸入,Swapping 數量全部為 0 。

4.接下來將調用 WrappedTokenSwapperImpl.performAction()進行 Swap。

5.在沒有進行任何驗證的情況下,虛假的 SwapExtraData 被 fromToken (WETH)接受並執行。

6.攻擊者重復執行以上流程,直到受害者資產耗盡。惡意交易出現後,Socket 迅速調用了 disableRoute,屏蔽了之前有漏洞的路由,阻止了更大範圍的攻擊。

7.1 月 23 日,Socket 宣布已經追回 1032 枚 ETH,並在 25 日宣布將全額補償所有損失。本次事件得到解決。

事件總結

在有着無限額用戶授權的路由合約中,惡意 calldata 攻擊並不罕見。

以前類似的攻擊包括 Dexible 和 Hector Bridge。

2023 年 2 月 17 日,去中心化交易所 Dexible 被攻擊,損失超過 150 萬美元。漏洞利用者向 Dexible 的 fill()函數輸入惡意 calldata,以竊取用戶資產。

2023 年 6 月 2 日,Hector 網絡的協議被攻擊。攻擊者部署了一個虛假的 USDC 合約,並通過惡意 calldata,將 65.2 萬枚真實的 USDC 從受害者的合約中轉移出去。

區塊鏈聚合平臺通常通過封裝一系列橋和路由合約來提高流動性,減少損耗。然而,這種復雜的封裝會給安全性帶來更多難題。

Socket 此次事件可以得到解決無疑是各方努力的結果,CertiK 也將繼續致力於為平臺提供全方位審計與檢測,降低各類聚合風險,提高社區信任和整個行業的安全水平。

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

推薦文章

MicroStrategy躋身納指100後,比特幣的买盤飛輪开啓

原文作者: Marco Manoppo 編譯|Odaily星球日報( @OdailyChina )...

星球日報
7 12小時前

盤點2024年度Web3最具影響力的十大攻擊事件

原文來源: Beosin 2024 年,區塊鏈行業在技術創新和生態擴展的同時,也面臨着越來越嚴峻的...

星球日報
7 12小時前

AI「生娃」?一文讀懂自主AI繁殖與進化的實驗平臺Spore.fun

原文標題:Love Death Robots 編者按: 本文主要介紹了 Spore.fun,一個實...

星球日報
7 12小時前

融資4300萬美元的Sahara AI,能否構建真正的“AI Chain”?

@OdailyChina @wenser 2010 屬於加密貨幣的曲折而又壯闊的 2024 年即將...

星球日報
7 12小時前

Matrixport市場觀察:BTC年末盤整,加密市場亟待催化劑

經過連續四周上攻,BTC 價格自 17 日觸達 $ 108, 353 的歷史高點後突現跳水行情,...

星球日報
5 12小時前

LBank Research:數據分析Cardano快速增長背後的驅動力

前言 自 2017 年啓動以來,Cardano(ADA)已成長為一個旨在推動區塊鏈技術極限的 Po...

星球日報
6 12小時前