0x财经|2000萬OP因何被盜來看看鏈上細節

2022年6月9日,做市商Wintermute透露,Optimism發送給其做市的2000萬個OP代幣被黑客盜取。丟失始末請看金色財經此前報導。

簡單概括就是

兩週前,Optimism Foundation聘請Wintermute為其在中心化交易所上市的OP代幣提供流動性。作為協議的一部分,Wintermute獲得了2000萬枚OP貸款。

這2000萬枚OP將被部署在Wintermute的Optimism錢包。當Wintermute將錢包地址發給Optimism團隊時,發送的是Wintermute在主網上部署了一段時間的Gnosis Safe多簽錢包地址。這裡Wintermute犯了一個嚴重錯誤,因為控制Gnosis Safe多簽錢包並不能保證控制EVM兼容鏈同一地址。

以太坊開發者Kelvin Fichter解釋Wintermute被攻擊原因

用戶通常假設他們可以在以太坊上訪問的任何帳戶也可以在其他基於EVM的鏈上訪問。對於外部擁有的賬戶(也稱為非合約賬戶),這通常是正確的。這不一定適用於智能合約賬戶。可以使用完全不同的代碼在不同鏈上的相同地址創建合約,從而產生完全不同的所有者。

EVM地址分為EOA(外部擁有的賬戶)和CA(合約賬戶)。合約地址又有兩種方式獲得:

CREATE new_address = hash(sender, nonce)

CREATE2 new_address = hash(0xFF, sender, salt, bytecode)

與CREATE2不同,通過CREATE創建的合約地址不是基於用於創建合約的代碼,而僅基於創建者地址的nonce。

看一下鏈上細節

1、13天前,Optimism團隊從0x25地址測試發送1個OP給Wintermute發送給Optimism團隊的地址0x4f

https://optimistic.etherscan.io/tokentxns?a=0x4f3a120e72c76c22ae802d129f599bfdbc31cb81&p=2

2、12天前,Optimism團隊分兩筆將1900萬枚和100萬枚OP發送給Wintermute。

直至此時,Wintermute還沒有意識到他們沒有這個地址的控制權。

3、Wintermute Gnosis Safe多簽錢包創建於561天前,

https://etherscan.io/tx/0xd705178d68551a6a6f65ca74363264b32150857a26dd62c27f3f96b8ec69ca01

多簽合約地址為0x76e2cfc1f5fa8f6a5b3fc4c8f4788f0116861f9b。

從合約代碼(https://etherscan.io/address/0x76e2cfc1f5fa8f6a5b3fc4c8f4788f0116861f9b#code)可知是通過CREATE而不是CREATE2創建的多重簽名。

zlqFh3M80ScSvpq7cKSJDKTQOTT7kQjRdn0Hg3mv.jpeg

多簽錢包地址即為0x4f。

4、4天前,攻擊者將舊的Safe factory部署到Optimism。

lyGGYtSK9xlRnh78k2ZzhBNkMVqQlcevb8aH2gME.png

並開始重複觸發create函數以在L2上創建多重簽名,進而控制了Optimism上的0x4f地址。

https://optimistic.etherscan.io/tx/0x00a3da68f0f6a69cb067f09c3f7e741a01636cbc27a84c603b468f65271d415b#internal

cHMm2vixfH6jmBetQwkjm6thUatLD7sblbozcydF.jpeg

正如Kelvin Fichter所說,此事件不是Optimism或Gnosis Safe中任何漏洞的結果,而是源於在多鏈之前舊版本的Gnosis Safe中做出的(合理的)安全假設。

Total
0
Shares
Related Posts