Token 背后潛伏的Bancor 危機區塊鏈
漏洞讓很多人損失了很多加密貨幣,即使是那些不允許簽訂智能合同的貨幣,也容易受到錯誤的影響。
自代幣發行平臺Bancor在周一早上發生“安全漏洞”后脫機,損失了數百萬美元的加密貨幣之后。雖然事后Bancor公司在Twitter上發帖稱,在安全事件發生后該公司將其平臺下線,并表示“沒有用戶錢包被泄露”。但根據CoinMarketCap的數據透露,該貨幣的價在過去一天下跌了大約14%,價格在2.73美元左右。
根據后續聲明透露,該公司總共損失了約1350萬美元。
漏洞讓很多人損失了很多加密貨幣,即使是那些不允許簽訂智能合同的貨幣,也容易受到錯誤的影響。就連衡量其他硬幣的基準比特幣也有它的份額,就像2010年的漏洞,在74638塊中創造了1,800億比特幣。雖然很快就修好了,但沒有人得到或丟失硬幣。以太坊的用戶從來沒有這么幸運過。像DAO和最近的Bancor(其1250萬美元的損失被歸因為他們智能合同中允許的)這樣的事件已經將加密丟失的數量推到了10億美元。
其實有很大一部分是因為智能合約存在管理員權限過高的原因。
致命問題可能會出現在兩個方面:一是項目方濫用權限,二是超級管理員身份被盜用。這兩種情況一旦發生,相關 Token 生態可能會迅速崩塌。
關于Bancor團隊如何處理被盜事件:
Bancor 項目方在攻擊發生后,聲稱是識別出攻擊者地址,凍結了攻擊者偷來的 BNT 代幣。經過調查,Bancor 管理員實際上是動用了 destroy() 方法來“銷毀”用戶手中的 Token。
Bancor 團隊也發表聲明稱普通用戶的錢包沒有受到影響,并進一步解釋鑄幣、燒幣以及存儲大量以太幣是他們協議中價格發現機制的一部分。
作為比特幣和區塊鏈愛好者,都是崇尚去中心化。然而,很多持幣者可能還不太清楚,目前各類 Token 項目智能合約管理員擁有超級權限竟已逐漸成為常態. 據不完全統計,排名前 570 名的 Token 合約中,有342個合約存在只有管理員能調用的功能,不少合約更存在管理員任意鑄幣、燒幣、凍結賬戶、關停轉賬等過高權限。
就好比如Status(SNT)和FunFair(FUN)這兩個熱門項目都存在著非常嚴重的管理員權限過高問題。
Status合約中有名為Controller的管理員角色,可調用generateTokens()往任意地址增發代幣,可調用destroyTokens()銷毀任意地址上的代幣。但Status項目的白皮書并沒有相關特殊權限聲明。此外,Status合約還應用了可升級的代理合約機制,管理員可以通過任意設置代理合約controller地址的方式,在關鍵函數前面插入可升級的校驗邏輯,來影響轉賬等關鍵操作。
知名的FunFair(FUN)項目也存在與Status類似的問題。
倘若有人作惡,增發巨額數量的Token至市場上拋售,后果不堪設想。
此外,交易所作為區塊鏈項目生態中的中堅力量,也應當積極督促項目方限制過高權限以及透明運營。
目前,區塊鏈瀏覽器網站 EtherScan 已將攻擊者的地址標注為 Fake_Phishing1701 和 Fake_Phishing1702。
以 Bancor 為例,在巨大的經濟利益面前,即使我們信任了發行方不會濫用權限,卻依然無法保證別有用心者不會借此攻擊。對于發行與運營極度依賴項目方的 Token,可能我們永遠無法形成類似對比特幣的共識與信仰。
Bancor 危機也給我們帶來很多反思:
Bancor 是否是真正的去中心化交易協議
智能合約在哪些情況下需要管理員
合約管理員權限的邊界在何處
如何保障錢包及私鑰安全
管理員權限是把雙刃劍。在 Bancor 事件中,黑客利用了管理員權限盜取代幣,而項目方也正利用了管理員權限來降低損失。不過我們認為,開發者依然可以通過良好的代碼設計來降低 Token 和 協議合約對管理員的依賴。同時,我們也號召大家,去更多地了解相關項目的智能合約,利用社區力量監督項目管理員權限。
1.TMT觀察網遵循行業規范,任何轉載的稿件都會明確標注作者和來源;
2.TMT觀察網的原創文章,請轉載時務必注明文章作者和"來源:TMT觀察網",不尊重原創的行為TMT觀察網或將追究責任;
3.作者投稿可能會經TMT觀察網編輯修改或補充。