Nomad被攻擊事件分析:黑客點火,多人“趁火打劫”
成都链安
2022-08-09 10:11
本文约1780字,阅读全文需要约7分钟
項目方在合約部署前,需要考慮配置是否合理。部署後,應測試相關功能,是否存在被利用的風險,並且聯繫審計公司查看初始的參數是否合理。

二級標題

二級標題

PART 01

加密市場中首次發生的去中心化搶劫?

首先,我們先來認識本次故事主角——Nomad。

Nomad 自稱能提供安全的互操作性解決方案,旨在降低成本並提高跨鏈消息傳遞的安全性,與基於驗證者的跨鏈橋不同,Nomad 不依賴大量外部方來驗證跨鏈通信,而是通過利用一種optimistic機制,讓用戶可以安全地發送消息和橋接資產,並保證任何觀看的人都可以標記欺詐並保護系統。

而在4 月13 日,他們也以2.25 億美元估值完成高達2200 萬美元的種子輪融資,領投方為Polychain。對於一家初創項目而言,數千萬美元種子輪融足可謂贏在起跑線上,但是本次攻擊之後,不知道項目方會如何處理與“自救”。

Nomad官方推特表示,已得知此事,目前正在調查。

關於本次事件,在Web3領域,卻引起了爭議。

Terra研究員FatMan在推特上對Nomad遭遇攻擊事件發表評論稱:“在公共Discord服務器上彈出的一條消息稱,任意一個人都能從Nomad橋上搶了3千到2萬美元:所有人要做的就是複制第一個黑客的交易並更改地址,然後點擊通過Etherscan發送。這是在真正的加密市場中首次發生的去中心化搶劫。”

事實的確如此。

二級標題

二級標題

PART 02

-項目方在部署合約時犯了什麼錯導致被攻擊?

本次攻擊主要是項目方在部署合約時,把零(0x000000....)的confirmAt設置為1,導致任意一個未使用的_message都可以通過判斷,並從合約中提取出對應資產。技術分析如下:

被攻擊合約

0x5D94309E5a0090b165FA4181519701637B6DAEBA (存在漏洞利用的合約)

0x88A69B4E698A4B090DF6CF5Bd7B2D47325Ad30A3(遭受損失的金庫合約)

由於攻擊交易過多,下面依靠其中一筆攻擊交易分析為例進行闡述;(0x87ba810b530e2d76062b9088bc351a62c184b39ce60e0a3605150df0a49e51d0)

1.通過交易分析,發現攻擊者是通過調用(0x5D9430)合約中的process函數提取(0x88A69)合約中的資金。

2.跟進process函數中,可以看到合約對_messageHash進行了判斷,當輸入的messages[_messageHash]為0x000000....時,返回值卻是true。

二級標題

二級標題

PART 03

-項目方還能找回被盜資金嗎?

針對跨鏈代幣橋攻擊導致損失一事,Nomad團隊表示,“調查正在進行中,已經聯繫區塊鏈情報和取證方面的主要公司協助。我們已經通知執法部門,並將夜以繼日地處理這一情況,及時提供最新信息。我們的目標是識別相關賬戶,並追踪和追回資金。”

目前,成都鏈安安全團隊正在使用鏈必追平台對被盜資金地址進行監控和追踪分析。

PART 04

-總結:合約部署需要注意哪些問題?

針對本次事件,成都鏈安安全團隊建議:項目方在合約部署前,需要考慮配置是否合理。部署後,應測試相關功能,是否存在被利用的風險,並且聯繫審計公司查看初始的參數是否合理。

成都链安
作者文库