比特幣行情 比特幣行情
Ctrl+D 比特幣行情
ads

SHI:PeckShield 深度還原,鎖死 MakerDAO 中 MKR 代幣的漏洞是啥?

Author:

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

05月10日凌晨,MakerDAO公開了新版合約。Zeppelin和PeckShield也各自獨立完成了對其新合約的審計,確定新版本修復了該漏洞。本文Peckshield將公布該漏洞的細節與詳細攻擊手法。

原文標題:《MakerDAO治理合約升級背后的安全風波》

北京時間2019年05月07日,區塊鏈安全公司Zeppelin對以太坊上的DeFi明星項目MakerDAO發出安全預警,宣稱其治理合約存在安全漏洞,希望已鎖倉參與投票的用戶盡快解鎖MKR提并出。MakerDAO的開發者Maker公司亦確認了漏洞存在,并上線了新的治理合約,并宣稱漏洞已修復。

該安全威脅曝出后,PeckShield全程追蹤了MKR代幣的轉移情況,并多次向社區發出預警,呼吁MKR代幣持有者立即轉移舊合約的MKR代幣。截止目前,絕大多數的MKR代幣已經完成了轉移,舊治理合約中尚有2,463個MKR代幣待轉移。

ApeCoin發起新提案AIP-289擬推出社區吉祥物,當前贊成率已超過六成:金色財經報道,據ApeCoin社區論壇最新提案AIP-289,ApeCoin計劃推出以“猿猴/猴子”為主題的社區吉祥物,該提案認為吉祥物有助于提升品牌認知度、協作推廣、社區建設、敘事元素以及改善Discord環境。據悉該提案發起人是ApeCoin Thankape藝術大賽參賽作品《Apekin》設計師,但尚不確認是否會將Apekin確定為ApeCoin社區吉祥物,該提案投票截至日期為8月17日,截至目前已獲得62.32%的贊成支持率。[2023/8/16 21:27:39]

05月07日當天,經PeckShield獨立研究發現,確認了該漏洞的存在,具體而言:由于該治理合約實現的投票機制存在某種缺陷,允許投票給尚不存在的slate。等用戶投票后,攻擊者可以惡意調用free()退出,達到減掉有效提案的合法票數,并同時鎖死投票人的MKR代幣。

PeckShield:NFT系列OpenenEdition #2740被Blur上的InfernoDrainer竊取:金色財經報道,據PeckShieldAlert監測,NFT系列OpenenEdition #2740被Blur上的InfernoDrainer竊取。[2023/8/15 21:24:43]

次日05月08日,PeckShield緊急和Maker公司同步了漏洞細節,05月10日凌晨,MakerDAO公開了新版合約。Zeppelin和PeckShield也各自獨立完成了對其新合約的審計,確定新版本修復了該漏洞。

在此我們公布漏洞細節與攻擊手法,也希望有引用此第三方庫合約的其它DApp能盡快修復。

細節

在MakerDAO的設計里,用戶是可以通過投票來參與其治理機制,詳情可參照DAO的FAQ。

ApeCoin社區兩提案完成投票:AIP-36通過,AIP-29未獲通過:5月19日消息,據ApeCoin Snapshot投票頁面顯示,ApeCoin最新的兩個提案已完成投票,AIP-36通過,Guy Oseary將被任命為ApeCoin的代表。AIP-29未獲通過,該提案為了獲得APECoin DAO對Ape Drops的資金支持,旨在推出一個Ape Drops Marketplace,最終獲得了97.06%反對票。[2022/5/19 3:27:08]

以下是關于itchyDAO的細節,用戶可以通過lock/free來將手上的MKR鎖定并投票或是取消投票:

在lock鎖定MKR之后,可以對一個或多個提案(address數組)進行投票:

注意到這里有兩個vote函數,兩者的傳參不一樣,而vote(addressyays)最終亦會調用vote(bytes32slate),其大致邏輯如下圖所示:

PeckShield:從未審計過“ZDSC”項目:近期,有用戶向區塊鏈安全公司PeckShield反應,某個名為ZDSC的DeFi項目,聲稱其通過了PeckShield的安全審計服務。經PeckShield核實發現,此為“ZDSC”項目方單方面盜用PeckShield名義作背書,向市場兜售其“高”收益“ZDSC DeFi項目”的惡意欺詐行為。PeckShield團隊在此鄭重聲明,團隊并沒有對“ZDSC”項目進行安全審計,請廣大用戶保持警惕,謹防受騙。任何審計報告,請留意PeckShield官方Twitter消息。[2020/10/23]

簡單來說,兩個vote殊途同歸,最后調用addWeight將鎖住的票投入對應提案:

可惜的是,由于合約設計上失誤,讓攻擊者有機會透過一系列動作,來惡意操控投票結果,甚致讓鎖定的MKR無法取出。

這里我們假設有一個從未投過票的黑客打算開始攻擊:

1、調用lock()鎖倉MKR,此時deposits會存入鎖住的額度。

2、此時黑客可以線下預先算好要攻擊的提案并預先計算好哈希值,拿來做為步驟3的傳參,因為slate其實只是address數組的sha3。

這里要注意挑選的攻擊目標組合必須還不存在于slates中(否則攻擊便會失敗),黑客亦可以自己提出一個新提案來加入組合計算,如此便可以確定這個組合必定不存在。

3、調用vote(bytes32slate),因為slate其實只是address數組的sha3,黑客可以線下預先算好要攻擊的提案后傳入。

這時因為votes還未賦值,所以subWeight()會直接返回。接下來黑客傳入的sha3(slate)會存入votes,之后調用addWeight()。從上方的代碼我們可以看到,addWeight()是透過slates取得提案數組,此時slates獲取到的一樣是未賦值的初始數組,所以for循環不會執行

4、調用etch()將目標提案數組傳入。注意etch()與兩個vote()函數都是public,所以外部可以隨意調用。這時slates就會存入對應的提案數組。

5、調用free()解除鎖倉。這時會分成以下兩步:

deposits=sub(deposits,wad),解鎖黑客在1.的鎖倉subWeight(wad,votes)從對應提案中扣掉黑客的票數,然而從頭到尾其實攻擊者都沒有真正為它們投過票。

從上面的分析我們了解,黑客能透過這種攻擊造成以下可能影響:

一、惡意操控投票結果二、因為黑客預先扣掉部份票數,導致真正的投票者有可能無法解除鎖倉

時間軸

時間事件2019.05.07PeckShield復查并確認了漏洞存在2019.05.08PeckShield與Maker基金會討論并確認了漏洞細節2019.05.09Maker基金會公布新版DSChief合約源碼,PeckShield披露了漏洞相關細則來源鏈接:mp.weixin.qq.com

本文來源于非小號媒體平臺:

PeckShield

現已在非小號資訊平臺發布1篇作品,

非小號開放平臺歡迎幣圈作者入駐

入駐指南:

/apply_guide/

本文網址:

/news/3626575.html

MKR漏洞風險安全

免責聲明:

1.資訊內容不構成投資建議,投資者應獨立決策并自行承擔風險

2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表非小號的觀點或立場

上一篇:

聽剛發現EOS重大漏洞的專家談談,區塊鏈的技術本質是什么?

下一篇:

慢霧創始人余弦:真正的黑客究竟什么樣?

Tags:SHIELDSHIELDAPEshibdoge幣購買MarvelDogeshield-xshMETAPETS

萊特幣價格
加密貨幣:韓國政府宣布:被檢查的 21 家加密貨幣交易所中有 11 家已實施安全措施

暴走時評:韓國政府日前宣布了對21家加密貨幣交易所的檢查結果,雖然許多交易所已完成了短期管理措施和錢包管理措施的實施,但大多數交易所仍然存在許多安全漏洞.

1900/1/1 0:00:00
MANA:驚天盜竊案!涉及比特大陸、幣安、Bittrex、MANA!

比特大陸于11月7日在西雅圖提起訴訟,控告黑客非法侵入其幣安賬戶,對其造成了至少550萬美元的損失.

1900/1/1 0:00:00
以太坊:以太坊智能合約漏洞頻出 基于 UTXO 的公鏈是否是更安全的區塊鏈平臺?

昨日,EDU智能合約出現重大漏洞,任意賬戶中的EDUToken可被轉走,這些漏洞造成了來自項目方地址中的30億萬枚EDUToken被偷走,并被陸續轉手在火幣上進行拋售,引發市場進一步恐慌.

1900/1/1 0:00:00
數字貨幣:印度央行探討發行自己的數字貨幣,成立專門小組

印度央行已采取措施抑制加密貨幣盧比的交易,并成立了一個小組來探討、研究發行自己的數字貨幣的可能性.

1900/1/1 0:00:00
KEN:imToken 團隊:認清及防范四類代幣騙局

在數字資產行業,安全是永恒的話題。從智能合約到交易所,再到數字錢包,安全事件往往給人們帶來慘痛的代價和痛苦的回憶。然而,大多數沒有經歷過安全事件的人,卻依舊存在僥幸心理.

1900/1/1 0:00:00
SUP:首個實物資產通證SUP認購結束,二級市場交易已開啟

5月21日19:00,全球實物資產通證-潮牌通證SUP完成認購后在55.com掛牌交易,在潮牌通證區開啟SUP/USDT交易對,SUP是55.comATO的首發項目.

1900/1/1 0:00:00
ads