北京時間2021年8月8日13點(區塊高度12982491),Zerogoki項目下的合約遭到攻擊,總計損失約67萬美元。
Zerogoki是Duet Protocol的一個下屬項目,用以在以太坊區塊鏈平臺上引入衍生品。在實現上,Zerogoki沿用了Duet Protocol的Lite Minting算法。
簡而言之,用戶首先購買平臺幣REI,然后將平臺幣Burn掉以兌換其他衍生資產(Synthetic Assets),如zUSD(對標美元的平臺幣)、zBTC 3L(BTC 3X Leveraged Long,即比特幣三倍杠桿看多期貨)。
LayerZero主網已整合Chainlink預言機:12月1日消息,互操作性協議LayerZero主網已整合Chainlink預言機。
據悉,Chainlink將提高LayerZero生態系統的多樣性和整體安全性。[2022/12/1 21:14:44]
作為一個衍生品合約,Zerogoki需要將衍生資產的價格(如比特幣的價格)導入以太坊區塊鏈。和以太坊上大多數平臺一樣,Zerogoki依賴價格預言機(Oracle)來獲得價格。此次攻擊正是利用了Oracle相關函數。
下面我們首先對被攻擊合約0x80ecdb90的代碼進行分析。
tZERO高管:tZERO或通過與SPAC合并上市:金色財經報道,兩位熟悉該計劃的人士表示,證券型代幣交易平臺tZERO正在四處尋找合適的買家。根據tZERO投資者關系副總裁Michael Mougias的說法,目標不是出售tZERO,而是尋找合適的戰略合作伙伴。Mougias補充道,這可能意味著許多可能的路線,包括通過特殊目的收購公司 (SPAC) 將tZERO上市。[2021/6/2 23:03:24]
以上是被攻擊合約的Swap函數。首先調用兩次decode_op,從入參oracle中獲得價格預言機相關的信息。OP結構體包含四個成員:數據類型(datatype)、Token地址(token)、預言機價格(price)和時間戳(timestamp)。
動態 | Element Zero Network發現穩定幣第四協議:據apnews報道,Element Zero Network宣布發現了新一代穩定幣的第四協議方法。第四協議使用了一個新的專有算法穩定性協議,不僅保護了穩定幣免受未來波動事件的影響,還可以通過克服通貨膨脹保持其購買力。[2018/12/7]
在進行一系列驗證后,合約調用tax內部函數計算此次swap所收取的費用。接下來有三個Token操作:首先根據入參ns將平臺幣REI Burn掉;然后Mint衍生資產(在y.token中指定),數量為ns;最后Mint部分平臺幣給GOV合約作為此次swap的費用。
Zerocoin存在一個名為“拒絕服務”的漏洞,允許黑客銷毀用戶的硬幣:據Thenextweb消息,Zerocoin存在一個名為“拒絕服務”的漏洞,允許黑客銷毀用戶的硬幣,這個漏洞已經存在2個月時間,至今仍未解決。數字貨幣顧問Peter Todd表示,原始的Zerocoin協議被打破, 即使它 “被證明是安全的”。他們只能證明, 攻擊者不能竊取硬幣, 但他們不能證明攻擊者不能摧毀不屬于他們的硬幣。[2018/4/14]
以上是swap開頭的decode_op函數的實現。從這里可以看出,入參oracle除了包含OP結構體外,還包含了SIGNATURENUM個(在攻擊時這個值為3)簽名用于驗證OP的值。我們推測Zerogoki設置了一系列驗證者,價格預言機中包含的信息必須經過簽名驗證才有效。在代碼中檢查了用于簽名的地址是否在數組authorization里,該數組是只能由owner進行設置的驗證者數組。同時,代碼還限定了必須由三個不同的authorized簽名者進行驗證。
總的來說,swap傳入的參數,第一個參數ns用于指定swap兩種Token的數量,沒有經過任何校驗;第二個參數包含了價格預言機的信息,需要authorized私鑰進行簽名驗證。
在代碼中我們注意到兩點:
入參oracle中,與swap直接相關的只有x.token和y.token,即swap的兩種token的類型(其中根據協議設計,x.token大部分為平臺幣REI)。
雖然入參oracle需要相對復雜的簽名機制進行驗證,但其對應的信息只用于進行驗證及swap費用(即tax)的計算。
真正決定swap兩種Token數量的是入參ns。
我們無從得知項目方為何要進行這樣的設計。當然,由于swap函數開頭要調用decode_op對入參oracle的簽名進行驗證。因此,這段代碼出現問題的唯一原因,是至少有三個authorized簽名者被compromised。
不幸的是,這種黑天鵝事件真的發生了。在攻擊交易0x81e5f715中,攻擊者想辦法利用三個authorized簽名者的公鑰,向入參oracle提供了三個正確的簽名;同時向入參ns提供了一個非常不合理的參數,導致攻擊者用少量的REI Token就Mint了大量zUSD。
如上圖所示,攻擊者用300個REI Token,Mint出了70w+個zUSD代幣(zUSD代幣對標美元)。
深入分析后我們發現,攻擊者提供給入參oracle的簽名都是正確的,這三個簽名對應三個authorized地址:
0x0d93A21b4A971dF713CfC057e43F5D230E76261C
0x3054e19707447800f0666ba274a249fc9a67aa4a
0x4448993f493b1d8d9ed51f22f1d30b9b4377dfd2
我們無從得知攻擊者是怎樣得到這三個地址對應的私鑰的。最直觀的原因有兩種可能:三個地址的私鑰同時泄露,或者同時出現了三名“臥底”。無論哪一種,看起來都像是一種概率極低的黑天鵝事件。但可以肯定的是,正是這種黑天鵝事件導致了這次奇怪攻擊的產生。
Cardano 預計將在八、九月份正式步入智能合約階段,目前已逐步形成了以 DEX 和 NFT 項目為主的生態格局.
1900/1/1 0:00:00Loot 最終代表的是 NFT 構建塊,能飛多高完全取決于社區的集體想象力上限,它是 NFT 領域的范式轉變.
1900/1/1 0:00:00今天我們試圖揭開一些秘密,一些隱藏在 Mirrors 背后的秘密。 Mirrors 是基于 ERC-721 標準(NFT)的智慧生命.
1900/1/1 0:00:00八月GameFi和NFTFi熱浪不斷,而SocialFi作為昔日社區熱點也再次被寄予厚望。事實上早在2017年便有例如Steem、YeeCall、GSC、NRC、SwagChain、TTC Pr.
1900/1/1 0:00:00作為公鏈建設的基礎設施,秉承著“想致富,先修路”、“想要建設生態,先開設AMM DEX”的理念,AMM DEX已經成為任何一個DeFi生態中最重要的組成部分.
1900/1/1 0:00:00匿名交易一直是行業的剛需,從早期的暗黑匿名系統,到目前基于公鏈搭建的混幣協議,混幣正在以另一種方式呈現在交易者面前.
1900/1/1 0:00:00