THORChain 連遭三擊,黑客會是同一個嗎?

據慢霧 AML 團隊分析統計,THORChain 三次攻擊真實損失如下:

2021 年 6 月 29 日,THORChain 遭 “假充值” 攻擊,損失近 35 萬美元;

2021 年 7 月 16 日,THORChain 二次遭 “假充值” 攻擊,損失近 800 萬美元;

2021 年 7 月 23 日,THORChain 再三遭攻擊,損失近 800 萬美元。

這不禁讓人有了思考:三次攻擊的時間如此相近、攻擊手法如此相似,背后作案的人會是同一個嗎?

慢霧 AML 團隊利用旗下 MistTrack 反洗錢追蹤系統對三次攻擊進行了深入追蹤分析,為大家還原整個事件的來龍去脈,對資金的流向一探究竟,

第一次攻擊:“假充值”漏洞

攻擊概述

本次攻擊的發生是由于 THORChain 代碼上的邏輯漏洞,即當跨鏈充值的 ERC20 代幣符號為 ETH 時,漏洞會導致充值的代幣被識別為真正的以太幣 ETH,進而可以成功的將假 ETH 兌換為其他的代幣。此前慢霧安全團隊也進行了分析,詳見:假幣的換臉戲法 —— 技術拆解 THORChain 跨鏈系統“假充值”漏洞,

根據 THORChain 官方發布的復盤文章[1],此次攻擊造成的損失為:

  • 9352.4874282 PERP
  • 1.43974743 YFI
  • 2437.936 SUSHI
  • 10.615 ETH

資金流向分析

根據官方提供的黑客地址,慢霧 AML 團隊分析并整理出了攻擊者相關的錢包地址情況如下:

MistTrack 反洗錢追蹤系統分析發現,攻擊者在 6 月 21 號開始籌備,使用匿名兌換平臺 ChangeNOW 獲得初始資金,然后在 5 天后 (6 月 26 號) 部署攻擊合約。

在攻擊成功后,多個獲利地址都把攻擊獲得的 ETH 轉到混幣平臺 Tornado Cash 以便躲避追蹤,未混幣的資金主要是留存在錢包地址 (0xace…d75) 和 (0x06b…2fa) 上,

慢霧 AML 團隊統計攻擊者獲利地址上的資金發現,官方的統計遺漏了部分損失:

  • 29777.378146 USDT
  • 78.14165727 ALCX
  • 11.75154045 ETH
  • 0.59654637 YFI

第二次攻擊:取值錯誤導致的 “假充值” 漏洞

攻擊概述

根據分析發現,攻擊者在攻擊合約中調用了 THORChain Router 合約的 deposit 方法,傳遞的 amount 參數是 0,然后攻擊者地址發起了一筆調用攻擊合約的交易,設置交易的 value(msg.value) 不為 0,由于 THORChain 代碼上的缺陷,在獲取用戶充值金額時,使用交易里的 msg.value 值覆蓋了正確的 Deposit event 中的 amount 值,導致了 “空手套白狼” 的結果。

根據 THORChain 官方發布的復盤文章[2],此次攻擊造成的損失為:

  • 2500 ETH
  • 57975.33 SUSHI
  • 8.7365 YFI
  • 171912.96 DODO
  • 514.519 ALCX
  • 1167216.739 KYL
  • 13.30 AAVE

資金流向分析

慢霧 AML 團隊分析發現,攻擊者相關的錢包地址情況如下:

MistTrack 反洗錢追蹤系統分析發現,攻擊者地址 (0x4b7…c5a) 給攻擊者地址 (0x3a1…031) 提供了初始資金,而攻擊者地址 (0x4b7…c5a) 的初始資金來自于混幣平臺 Tornado Cash 轉出的 10 ETH。

在攻擊成功后,相關地址都把攻擊獲得的幣轉到地址 (0xace…70e)。

該獲利地址 (0xace…70e) 只有一筆轉出記錄:通過 Tornado Cash 轉出 10 ETH,

慢霧 AML 團隊統計攻擊者獲利地址上的資金發現,官方的統計遺漏了部分損失:

  • 2246.6 SUSHI
  • 13318.35 DODO
  • 110108 KYL
  • 243.929 USDT
  • 259237.77 HEGIC

第三次攻擊:退款邏輯漏洞

攻擊概述

本次攻擊跟第二次攻擊一樣,攻擊者部署了一個攻擊合約,作為自己的 router,在攻擊合約里調用 THORChain Router 合約,

但不同的是,攻擊者這次利用的是 THORChain Router 合約中關于退款的邏輯缺陷,攻擊者調用 returnVaultAssets 函數并發送很少的 ETH,同時把攻擊合約設置為 asgard,然后 THORChain Router 合約把 ETH 發送到 asgard 時,asgard 也就是攻擊合約觸發一個 deposit 事件,攻擊者隨意構造 asset 和 amount,同時構造一個不符合要求的 memo,使 THORChain 節點程式無法處理,然后按照程式設計就會進入到退款邏輯,

(截圖來自 viewblock.io)

有趣的是,推特網友把這次攻擊交易中的 memo 整理出來發現,攻擊者竟喊話 THORChain 官方,表示其發現了多個嚴重漏洞,可以盜取 ETH/BTC/LYC/BNB/BEP20 等資產。

(圖片來自 https://twitter.com/defixbt/status/1418338501255335937)

根據 THORChain 官方發布的復盤文章[3],此次攻擊造成的損失為:

  • 966.62 ALCX
  • 20,866,664.53 XRUNE
  • 1,672,794.010 USDC
  • 56,104 SUSHI
  • 6.91 YEARN
  • 990,137.46 USDT

資金流向分析

慢霧 AML 團隊分析發現,攻擊者相關的錢包地址情況如下:

MistTrack 反洗錢追蹤系統分析發現,攻擊者地址 (0x8c1…d62) 的初始資金來源是另一個攻擊者地址 (0xf6c…747),而該地址 (0xf6c…747) 的資金來源只有一筆記錄,那就是來自于 Tornado Cash 轉入的 100 ETH,而且時間居然是 2020 年 12 月!

在攻擊成功后,攻擊者將資金轉到了獲利地址 (0x651…da1),

總結

通過以上分析可以發現,三次攻擊的初始資金均來自匿名平臺 (ChangeNOWTornado Cash),說明攻擊者有一定的 “反偵察” 意識,而且第三次攻擊的交易都是隱私交易,進一步增強了攻擊者的匿名性,

從三次攻擊涉及的錢包地址來看,沒有出現重合的情況,無法認定是否是同一個攻擊者。從資金規模上來看,從第一次攻擊到第三次攻擊,THORChain 被盜的資金量越來越大,從 14 萬美金到近千萬美金,但三次攻擊獲利的大部分資金都沒有被變現,而且攻擊間隔時間比較短,慢霧 AML 團隊綜合各項線索,推理認為有一定的可能性是同一人所為。

截止目前,三次攻擊后,攻擊者資金留存地址共有余額近 1300 萬美元,三次攻擊事件后,THORChain 損失資金超 1600 萬美元!

(被盜代幣價格按文章發布時價格計算)

依托慢霧 BTI 系統和 AML 系統中近兩億地址標簽,慢霧 MistTrack 反洗錢追蹤系統全面覆蓋了全球主流交易所,累計服務 50+ 客戶,累計追回資產超 2 億美金。(詳見:慢霧 AML 升級上線,為資產追蹤再增力量),針對 THORChain 攻擊事件, 慢霧 AML 團隊將持續監控被盜資金的轉移,拉黑攻擊者控制的所有錢包地址,提醒交易所、錢包注意加強地址監控,避免相關惡意資金流入平臺,

跨鏈系統的安全性不容忽視,慢霧科技建議項目方在進行跨鏈系統設計時應充分考慮不同公鏈不同代幣的特性,充分進行 “假充值” 測試,必要時可聯系專業安全公司進行安全審計,

參考資料

THORChain 官方復盤文章:

[1] https://medium.com/thorchain/eth-parsing-error-and-exploit-3b343aa6466f

[2] https://thearchitect.notion.site/THORChain-Incident-07-15-7d205f91924e44a5b6499b6df5f6c210

[3] https://thearchitect.notion.site/THORChain-Incident-07-22-874a06db7bf8466caf240e1823697e35

0 条回复 A文章作者 M管理員
    暫無討論,說說你的看法吧