買比特幣 買比特幣
Ctrl+D 買比特幣
ads

Chain:DoDo Research:從合約層面解析跨鏈橋機制設計弱點_AIN

Author:

Time:1900/1/1 0:00:00

近期BNB跨鏈橋受攻擊,導致近$570M損失。這一事件再次把跨鏈橋的安全性問題推上熱議。根據Messari8月的研報數據,過去一年內共有8起跨鏈橋攻擊事件,構成將近$2B美金的資產損失。

Dr.DODO今天通過深度分析PolyNetwork,Multichain及BNB橋事件,從合約層面展示跨鏈橋機制設計弱點。

首先,讓我們簡要回顧跨鏈橋的基本概念,以及設計機制分類。

不同的公鏈如同孤立的無需許可的計算機,具有不同的共識機制,相互之間無法直接通訊。跨鏈橋的存在就是為了使信息能夠不被篡改地從一個計算機傳遞到另一個計算機上。

跨鏈橋的核心是解決一個共識問題:跨鏈橋如何確定源鏈上的狀態已發生改變,進而在目標鏈上鑄造等量的資產?

不同的跨鏈橋對這個共識問題有不同解決方案,如采用中心化的橋,委員會,PoS機制,輕客戶端等。而不同的解決方案在信息傳遞的安全性,成本,延遲性上有所取舍。

DWF Labs合伙人:交易活動已觸底,24小時現貨交易額為2019年冬季以來新低:6月15日消息,DWF Labs管理合伙人Andrei Grachev發推稱,交易活動已經觸底,24小時現貨交易額為230億美元,這是自2019年冬季以來的最低值。在幕后,交易所開始要求項目管理交易額、流動性等,否則就會將其下架。零售活動也很低,但人們想要并且人們需要一些東西來投機、賺錢(或賠錢),即使是市值較大的幣種,也可以在24小時內看到20-30%的價格變動,但仍然脆弱。IDO、IEO、直接上市都不行了,人們等待新的東西以及幣安Launchpad項目。它總是能促進零售活動。如果某事成功了,很多人會嘗試重復它。

Grachev表示,項目、交易所、做市商和其他市場參與者都在試圖修復市場(在幕后),沒有100%的解決方案,但它會給市場帶來一些東西。我們在活動方面處于底部,但價格不確定。但與此同時,如果幸運的話,我們的市場活動應該會在幾個月內增加,價格也會上漲。[2023/6/15 21:38:18]

詳細分析可以參考此前文章《跨鏈漫談:深度解析16個跨鏈方案權衡》:

Dispersion Capital推出4000萬美元基金投資去中心化基礎設施:金色財經報道,Dispersion Capital已經推出一個4000萬美元基金,用于投資去中心化的基礎設施。該風險投資工具由Web 2.0和web3實體支持,包括WeNade、Circle Ventures、Ripple、Alchemy Ventures、NGC和個別普通合伙人。它將專注于將資本部署到種子前和種子輪,并且已經部署了10%的基金。

Dispersion計劃將其基金部署到那些希望通過更新數據基礎設施、網絡安全和智能合約等技術幫助新的加密貨幣用戶的初創公司。[2023/5/24 15:21:45]

接下來,我們進一步的把跨鏈流程進行拆解,了解跨鏈具體涉及到哪些步驟,這樣在討論不同攻擊的時候,我們可以更好的理解出錯的點在哪里。

跨鏈流程:

1.當源鏈用戶發起一個狀態改變,如一筆交易;此事件將由源鏈驗證者進行驗證出塊。

2.此時跨鏈橋去監聽此跨鏈事件,下載并對進行驗證、簽名。

Hydrogen Technology因涉嫌操縱市場,向美SEC支付280萬美元罰款:金色財經報道,近日,在美國SEC提起的一起訴訟中,紐約地方法院法官裁定Hydrogen Technology Corporation及其前首席執行官Michael Ross Kane敗訴,命令其支付280萬美元的賠償和民事罰款。此外,Michael Ross Kane同意支付約26萬美元的個人罰款。剩余的金額由預判利息組成。去年9月消息,美國SEC指控Hydrogen與做市商Moonwalkers涉嫌操縱市場以及未注冊的證券發行,獲利超200萬美元。(Cointelegraph)[2023/4/24 14:23:02]

3.接下來被驗證簽署后的事件被傳輸至目標鏈。

4.由目標鏈上的驗證者進行驗證出塊。

5.由此,源鏈上發起的狀態改變得以在目標鏈被執行。

講述跨鏈橋機制分類的文章已經很多,我們在此按驗證方法把跨鏈橋分為:

-外部性驗證:PoS

-樂觀性驗證

推特:與馬斯克的協議未終止,努力采取所有必要的措施來完成交易:7月12日消息,推特表示,7月10日,推特的代表給馬斯克的代表發了一封通知信。馬斯克和馬斯克代表聲稱的終止協議行為是“無效和錯誤的”。推特未違反其在協議下的任何義務,推特未遭受不利影響,也不太可能遭受重大不利影響。將繼續根據協議提供馬斯克合理要求的信息,并努力采取所有必要的措施來完成交易。保留所有合同、法律和其他權利。與馬斯克的協議未終止,銀行債務承諾書和股權承諾書仍有效。聲稱的終止協議無效,是基于以下的單獨原因,即馬斯克和馬斯克各方“故意、有意、固執并嚴重地”違反了協議。(金十)[2022/7/12 2:06:21]

-本地驗證:輕客戶端

按資產轉移方式把跨鏈橋分為:

-燃燒+鑄造

-鎖定+鑄造

-在源鏈/目標鏈部署流動性池

ADAM全網質押價值突破4000萬美金:據官方消息,截至2022年6月6日18時(GMT+8),ADAM全網算力達201,274 TIB,質押量超600萬枚ADAM,質押總價值突破4100萬美金。

ADAM是首個基于Web3.0的加密數據計算網絡,擁有數據加密傳輸功能,不僅能夠連接實現世界與區塊鏈系統,還能夠實現鏈上生態數據信息無障礙流轉;ADAM通過搭建全球性的廣域節點網絡催生了強大的鏈下計算能力,能夠進行毫秒級加密計算,實現真正的商業級“DataFi”應用,使每一個參與數據流通的角色,都能夠從中受益。[2022/6/6 4:06:11]

PolyNetwork攻擊案例分析

簡單來說,PolyNetwork的工作機制是作為中間鏈去接收發送鏈的區塊頭,相當于所有它連接的鏈的輕客戶端。

比如,當Ontology上發起一筆交易,區塊頭會被送到PolyNetwork上。區塊頭含有stateroothash,當交易與證明到達PolyNetwork,這上面的keepers就可以進行驗證。若合法,PolyNetwork會自己發送一個event,目標鏈的relayer聽到后,會轉發到目標鏈的EthCrossChainManager合約上。

在了解PolyNetwork工作機制之后,我們來看受攻擊的合約。

首先,LockProxy是控制資產的合約。其次,EthCrossChainManager(CCM)的優越性有兩點:

1)只有它能調用LockProxy進行unlock或者burn資產。

2)CCM掌管著CrosschainData,合約保存著PolyNetwork的keeper公鑰名單。

也就是說,當跨鏈交易的數據發到CCM之后,合約可以從這個數據中恢復出一些簽名的地址。

然后它會拿這些地址和它自己存的keeper名單做對比,看看是不是有2/3的keeper在這些地址里面。如果有,就認為發送過來的數據是合法的。

黑客通過bruteforce撞出了CCM中特定的“SolidityfunctionID”,從而得以調用EthCrossChainData的合約,并把其中存的keeper名單里的公鑰匙換成自己的,這樣他就可以任意的給CCM發信息,自己去進行簽署,從而操作lockproxy。

所以上述攻擊出現的問題有兩點:

1)任意的用戶可以進行的遠程調用合約。在這個事件之后,項目方加入了白名單機制,只有指定方可以調用這個非常特別的合約。

2)合約之間的從屬關系,導致關鍵的合約容易被篡改。

Multichain攻擊案例分析

Multichain是可實現跨鏈路由的橋,通過封裝資產“anyToken”,Multichain可實現任意資產的任意跨鏈。首先,當用戶把DAI放到池子里,等量的anyDAI就會被鑄造出來,然后由網絡中的驗證人確定這一事件,在B鏈鑄造出等量的anyDAI,然后燃燒掉A鏈的anyDAI。

受攻擊的合約中,關注下圖標記的1,2,3行:首先,從anyDAI?這個合約拿到它底層資產合約的地址,即DAI。其次,permit()?使用戶通過簽名來允許路由器從用戶地址中提款。最后,safetransferfrom是一個真正的提款動作。

注:簽名了的交易被表示為(v,r,s)

可以看到黑客惡意部署的代幣地址,和無效的簽名。

回顧8.1中的三行代碼,黑客重新部署了anyDAI導致底下OUTPUT的底層資產解析出來是WETH的地址。在此,Multichain在這里的失誤就是它應該檢驗代幣地址是不是來自Multichain的代幣。

第二個微妙的問題就是permit是erc20的一個擴展協議,但是由于比weth出來的時間晚,所以weth沒有支持這個特性。那么如果去調用一個合約的一個不存在的方法,EVM會自動去調用這個合約的fallback方法;然而,fallback方法在這個情況下也沒報錯,所以,permit功能也被成功執行。

而第三行之所以可以執行,我們可以認定因為Multichain之前請求了WETH無限的花費上線,黑客通過濫用了這個approval把WETH從受害者的賬戶轉出。但值得注意的是很多的協議都會使用,以幫助用戶節省gas費用。

BNB橋攻擊案例簡述

Binance事件的黑客用RangeProof偽造Merkleproof證明某些數據存在Merkletree。

Proof理論上難偽造。

BNB橋涉及數據結構IAVL:可理解為等價于以太坊的Merklepatriciatrie,是一種custommerklizedbalancebinarysearchtree,InnerNode分為Left和Right兩個字段。

在這里IAVL的RangeProof存在的重要問題就是它允許Left和Right兩個字段可以同時被填充。而當Left與Right都存在的情況下會忽略Right進行RootHash計算。

擊者基本上通過將信息粘貼到Right字段中的優勢,而這些信息從未得到驗證,也從未影響哈希計算,以使驗證者相信某些Leaf是Tree的一部分。從而,成功地偽造了MerkleProof。

關于BNB橋攻擊中更復雜的合約調用邏輯可以閱讀:

https://mp.weixin.qq.com/s/y9jiMKrGThN8J4agFnFpJw

Tags:CHAChainHAIAINDeFiChainblockchain官方網站anticounterfeitchainBRAINS

幣安下載
BIT:Moonbeam Orbiters Program:為收集人參與Moonbeam和Moonriver提供新方式(更新版)_ORB

本文是2022年7月11日發布文章的更新版。請訪問Moonbeam資料庫上的MoonbeamOrbitersProgram頁面了解詳情.

1900/1/1 0:00:00
Aptos:頭等倉研報:全方位解讀公鏈項目Aptos_TOS

Aptos??的目標是建設一個可擴展、安全、可信任和可升級的智能合約平臺,采用BFT共識機制和并行計算機制,實現更好的性能.

1900/1/1 0:00:00
FIL:Messari:Filecoin 2022年3季度分析報告_OIN

關鍵要點 Filecoin網絡上的活躍存儲在22年第三季度繼續增長,環比增長82%;雖然存儲容量在22年第三季度保持在歷史最高水平.

1900/1/1 0:00:00
TOKEN:盤點 11 種免費 Crypto 研究工具_KEN

最近本人忙于其他項目,疏于研究,很久沒更新。熊市漫漫也不想大家沒什么東西讀,干脆就找些高質量的信息翻譯出來供讀者參考,反正我平時也會看這些,順手翻譯了.

1900/1/1 0:00:00
MMA:FTX 對敲盜幣事件始末,從 3Commas API KEY 泄露說起_COM

21日一名杭州用戶向吳說爆料:他的FTX賬戶在19日晚突然“瘋狂”地進行交易達5000多次,賬戶資產160萬美金接近歸零,包括10幾個BTC、上百個ETH以及幾千個FTT等.

1900/1/1 0:00:00
以太坊:以太坊質押時代到來,開發者機遇何在?_WISTA價格

距離以太坊執行層與共識層合并升級已經過去了一個月,新的共識機制PoS也已經取代舊的PoW機制運行了一個月.

1900/1/1 0:00:00
ads