返回部落格

我們如何為 TransitSwap(及 BabySwap)追回被盜資金

Code Auditing
2022年10月10日
閱讀約 4 分鐘

BSC 鏈上的 BabySwap 和 TransitSwap 於 10 月 1 日遭到攻擊。部分攻擊交易被一個機器人搶先交易(front-run)。有趣的是,該機器人極易受到 profanity 工具漏洞的影響,我們成功恢復了其私鑰。我們還設法對該機器人合約進行了逆向工程,並將資金從機器人合約提取到我們的安全帳戶中。我們已將資金轉移給 TransitSwap,目前正在與 BabySwap 進行對接。

針對 BabySwap 攻擊事件的偵測

在 2022 年 10 月 1 日 14:47 (UTC),我們的內部系統報告了一筆攻擊交易。我們進一步分析顯示,這是由於智慧路由器(smart router)合約中受控的工廠合約(factories)所導致。然而,由於當時該項目仍存在漏洞,我們並未公開細節。我們透過 Twitter 私訊和 TG 聯繫了 BabySwap,但未獲得任何回應。

在調查過程中,我們發現這筆交易是由一個機器人帳戶發出的,該帳戶搶先交易了原始的攻擊交易。此外,該帳戶的地址前綴有八個零,看起來像是透過 profanity 工具生成的,而該工具極易受到 profanity 工具漏洞的影響。

恢復機器人的私鑰

在 2022 年 10 月 1 日 16:10 (UTC),我們的工具在大約 20 分鐘內成功恢復了該機器人的私鑰。對於恢復的私鑰,我們將資金轉移到一個安全帳戶(這是我們救援工作的標準流程)。否則,其他同樣恢復了該私鑰的人可能會接管該帳戶,從而使帳戶中的資金面臨風險。

將資金從機器人中轉移出來

挑戰在於資金並非存儲在機器人 EOA 帳戶本身,而是存儲在由機器人部署的合約中。如何轉移這些資金是一個難題。

我們對合約進行了反編譯,發現合約中存在一個提取函數(如下圖所示)。

此函數可用於提取合約中的資金。第一個參數是代幣地址,第二個參數應為零。

我們發送了一筆交易,並成功將資金從合約提取到該機器人帳戶,隨後將資金轉移到了我們的安全帳戶。

又來了一次攻擊!

幾個小時後,我們的系統報告了對 TransSwap 的另一次攻擊。此次攻擊包含來自不同地址的多筆攻擊交易,其中一筆交易再次被該機器人搶先交易!然而,由於該機器人部署的合約與之前不同,因此轉移資金的函數也不同。

退還資金

經過內部審慎評估,我們決定將資金返還給受攻擊的項目方(而非機器人所有者),原因如下:

  • 首先,這些資金是機器人透過攻擊存在漏洞的合約所取得。儘管機器人是藉由搶先交易(而非自行發起攻擊)獲取資金,但我們仍認為搶先交易攻擊交易的行為同樣屬於攻擊。
  • 其次,資金屬於攻擊受害者,即受影響 DeFi 協定的用戶。用戶因 DeFi 協定中的漏洞遭受了巨大損失,他們理應收到來自攻擊者的贖回資金。

我們已經將資金轉移至 TransitFinance 官方資金接收地址,並正在與 BabySwap 聯繫。

救援工作的最新進展

我們仍在執行脆弱地址的救援工作。目前的挑戰在於,在恢復私鑰之前,無法確定一個地址是否真的存在漏洞。儘管我們已經優化了演算法,但受限於計算能力,我們仍需要更多時間來完成整個救援過程。我們將稍後發布一份詳細報告,深入探討整個過程並回答以下問題:

  • 有多少個地址存在漏洞?
  • 該漏洞的影響程度如何,即有多少資產因該漏洞面臨風險?
  • 此次漏洞攻擊事件的整體情況如何?

請保持關注並確保安全。

關於 BlockSec

BlockSec 是一家開創性的區塊鏈安全公司,由一群全球傑出的安全專家於 2021 年創立。公司致力於增強新興 Web3 世界的安全性和可用性,以促進其大規模採用。為此,BlockSec 提供智慧合約與 EVM 鏈的安全審計服務、用於安全開發與主動防禦威脅的 Phalcon 平台、用於資金追蹤與調查的 MetaSleuth 平台,以及協助 Web3 構建者高效遨遊加密世界的 MetaSuites 擴充功能。

迄今為止,公司已服務超過 300 家知名客戶,包括 MetaMask、Uniswap Foundation、Compound、Forta 和 PancakeSwap,並獲得了來自 Matrix Partners、Vitalbridge Capital 和分佈式資本(Fenbushi Capital)等頂尖投資者的兩輪數千萬美元融資。

官方網站:https://blocksec.com/

官方 Twitter 帳號:https://twitter.com/BlockSecTeam

訂閱最新動態
Bitget 3.875億美元鏈下違規事件:超越金鑰與合約的範疇
Security Insights

Bitget 3.875億美元鏈下違規事件:超越金鑰與合約的範疇

2026年9月24日,攻擊者利用第三方安全產品漏洞,獲取內部憑證並偽造提款指令,導致約3.875億美元從Bitget部分營運錢包(涵蓋Ethereum、其他EVM網絡、XRP Ledger、Zcash及TRON)轉出;私鑰及冷錢包未受影響。本文深入梳理事件路徑與資金流向,分析快速轉換為原生資產及生態恢復應對,提出機構縱深防禦框架,並說明授權區塊鏈滲透測試如何驗證跨層假設。

約1130萬美元損失:Multicall Router、Nostra|BlockSec Weekly
Security Insights

約1130萬美元損失:Multicall Router、Nostra|BlockSec Weekly

本報告涵蓋2026/09/14至2026/09/20期間,探討以太坊與Starknet上兩起合計損失約1130萬美元的安全事件。較大一起中,多重呼叫路由器將自身位址接受為分派目標,導致巢狀呼叫以路由器自身已授權身分而非外部呼叫者身分進入Safe錢包的Gateway模組,約2900枚`aEthrsETH`被轉出至攻擊者建立的Uniswap v4池。在Starknet上,Nostra預言機整合僅要求最少一個聚合來源,當三個設定價格來源中僅兩個達成聚合時,操縱的薄池報價與正常報價平均後將`NSTR`估值約49.52美元,支撐約350萬美元以高估抵押品借貸。

损失約3.2億美元:Liquid Network與Symbiosis遭攻擊事件 | BlockSec
Security Insights

损失約3.2億美元:Liquid Network與Symbiosis遭攻擊事件 | BlockSec

本報告涵蓋2026/09/07至2026/09/13,探討兩起造成約3.2億美元損失的安全事件,包括前份報告未提及、發生於2026/09/06的Liquid Network漏洞事件。較大者為該Liquid Network漏洞:Elements中的rangeproof驗證快取藉由雜湊四個欄位(其中兩個長度可變)串接而成金鑰,且未標示欄位邊界,導致某輸出的驗證結果被錯誤套用至另一個未經檢驗證明的輸出,使攻擊者得以憑空創造4,000枚無擔保L-BTC,並將幾乎全數兌回比特幣。在橫跨BNB Smart Chain、Ethereum與Rootstock的Symbiosis跨鏈橋比特幣路徑中,讀取比特幣存款的鏈下程式碼從存款人可自行控制的欄位取得其身份,並在未檢查手續費是否為負值的情況下自存款中扣除,使330聰的存款鑄造出`46,116,860,184.27388234 syBTC`;其須賣出所經之資金池僅有11.26 syBTC,致使流動性提供者與用戶損失約9.97 BTC(約77萬美元)。

Web3 最佳安全審計方

在上線之前驗證設計、程式碼與業務邏輯,對標業內最高安全標準。

BlockSec 審計
我們如何為 TransitSwap(及 BabySwap)追回被盜資金