05月10日凌晨,MakerDAO公開了新版合約。Zeppelin和PeckShield也各自獨立完成了對其新合約的審計,確定新版本修復了該漏洞。本文Peckshield將公布該漏洞的細節與詳細攻擊手法。
原文標題:《MakerDAO治理合約升級背后的安全風波》
北京時間2019年05月07日,區塊鏈安全公司Zeppelin對以太坊上的DeFi明星項目MakerDAO發出安全預警,宣稱其治理合約存在安全漏洞,希望已鎖倉參與投票的用戶盡快解鎖MKR提并出。MakerDAO的開發者Maker公司亦確認了漏洞存在,并上線了新的治理合約,并宣稱漏洞已修復。
該安全威脅曝出后,PeckShield全程追蹤了MKR代幣的轉移情況,并多次向社區發出預警,呼吁MKR代幣持有者立即轉移舊合約的MKR代幣。截止目前,絕大多數的MKR代幣已經完成了轉移,舊治理合約中尚有2,463個MKR代幣待轉移。
PeckShield:Stake.com黑客已將7.9萬枚MATIC兌換為BTC.b并轉移至BTC網絡:金色財經報道,據PeckShield監測,Stake.com黑客已將Polygon上的7.9萬枚MATIC (約4.4萬美元) 轉移到0x22bc...563f。然后,他們將其橋接到AVAX,并將這些MATIC轉換為BTC.b,隨后將其橋接到BTC網絡。[2023/9/6 13:21:54]
05月07日當天,經PeckShield獨立研究發現,確認了該漏洞的存在,具體而言:由于該治理合約實現的投票機制存在某種缺陷,允許投票給尚不存在的slate。等用戶投票后,攻擊者可以惡意調用free()退出,達到減掉有效提案的合法票數,并同時鎖死投票人的MKR代幣。
次日05月08日,PeckShield緊急和Maker公司同步了漏洞細節,05月10日凌晨,MakerDAO公開了新版合約。Zeppelin和PeckShield也各自獨立完成了對其新合約的審計,確定新版本修復了該漏洞。
ApeCoin DAO終極指南提案AIP-251獲得通過:金色財經報道,據Snapshot投票數據顯示,ApeCoin DAO新手入門終極指南提案AIP-251已經獲得通過,該提案發起人BojangleGuy.Eth 在投票結束后發推文透露,該提案的通過率為93.28%。ApeCoin DAO終極指南類似于解決ApeCoin社區沒有教學材料(例如視頻內容、信息圖表或現場培訓)導致社區活躍度和參與度低的問題,通過創建一個集中的、易于理解的信息來源來解決社區的基本問題。[2023/6/18 21:44:58]
在此我們公布漏洞細節與攻擊手法,也希望有引用此第三方庫合約的其它DApp能盡快修復。
細節
在MakerDAO的設計里,用戶是可以通過投票來參與其治理機制,詳情可參照DAO的FAQ。
PeckShield:檢測到一批TRONFUNDS釣魚網站:5月13日消息,PeckShield發推表示,檢測到一批TRONFUNDS的釣魚網站。并提醒trondao社區注意,tronfunds[.]net/index.php?s=//p4e&I=28leb#/home/m是一個釣魚網站,該網站聲稱PeckShield進行了審計,但事實并非如此。[2022/5/13 3:13:58]
以下是關于itchyDAO的細節,用戶可以通過lock/free來將手上的MKR鎖定并投票或是取消投票:
在lock鎖定MKR之后,可以對一個或多個提案(address數組)進行投票:
注意到這里有兩個vote函數,兩者的傳參不一樣,而vote(addressyays)最終亦會調用vote(bytes32slate),其大致邏輯如下圖所示:
Animoca Brands將在秘密開發的BAYC項目中引入ApeCoin:3月17日消息,Animoca Brands在社交媒體上宣布,將在秘密開發的BAYC項目中引入ApeCoin。
此前,BAYC公布了與Animoca Brands合作的項目頁面,該頁面目前已支持KYC認證注冊。雙方并未透露合作項目的具體內容,但BAYC曾表示并非P2E游戲或Token發布。[2022/3/17 14:02:27]
簡單來說,兩個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:SHIELDELDSHIMKRSunShielddatashieldcoinbankWrestling ShibaAMKR幣
馬耳他由于實施了一系列加密貨幣和區塊鏈友好的政策,獲得了「區塊鏈島」的美譽。現在他們正在采取更多措施,希望通過加大監管技術投入,更好地保護區塊鏈行業.
1900/1/1 0:00:00因近日發現以太坊網絡上出現GMAT虛假合約,同時有交易平臺擅自發布關于開通GMAT交易的虛假信息,為避免各類虛假信息對廣大GMAT愛好者造成誤導,保障GMAT愛好者的利益.
1900/1/1 0:00:00峰會將于2018年5月11日在哥倫比亞大學勒納廳舉行,這一最新的部分將集中在區塊鏈技術的進步以及其在傳統行業的應用.
1900/1/1 0:00:00鏈聞編輯時間 《閃電網絡即小額支付?LightningLabs核心開發者帶你深入本質》鏈聞對話兩位閃電網絡專家,從專業技術和行業研究兩個維度呈現閃電網絡更清晰的輪廓.
1900/1/1 0:00:00或許你會好奇,黑市或是非法活動所使用的比特幣都到了哪去,以下整理了過去幾項案例,試圖找到這個答案.
1900/1/1 0:00:00據bitcoinmagazine9月21日報道,今年上半年,日本警察廳經確認的加密貨幣被盜事件有158筆,損失了為5.4億美元(約合605.03億日元)的加密貨幣,是去年同期的3倍.
1900/1/1 0:00:00