震驚!ERC20漏洞爆出區(qū)塊鏈安全性問(wèn)題,你要自己注意錢包
2018年4月23日,BEC(美鏈)爆出 ERC20 協(xié)議安全漏洞,攻擊者利用整數(shù)溢出BUG,可無(wú)限生成代幣,直接導(dǎo)致BEC幣值跳水,幾乎歸零。
5月2日晚,美圖蔡文勝在微信群互動(dòng)時(shí)再度回答了關(guān)于BEC的諸多疑問(wèn)。
蔡文勝?gòu)?qiáng)調(diào):“BEC美鏈不是美圖公司做的,也不是我個(gè)人做的。”但網(wǎng)友似乎并不買賬。
作為一個(gè)價(jià)值流通的底層平臺(tái),安全性是區(qū)塊鏈的重中之重,也是區(qū)塊鏈能被社會(huì)廣為接受的基石之一。如何通過(guò)良好的漏洞治理生態(tài)來(lái)降低風(fēng)險(xiǎn)事件的發(fā)生將變的尤為重要。
回望區(qū)塊鏈九年的發(fā)展歷程,安全事件引發(fā)的巨額資金損失、公司破產(chǎn)等問(wèn)題不勝枚舉。
讓我們先來(lái)分析一下比特幣、以太坊和交易所這三類安全事件重災(zāi)區(qū)現(xiàn)狀,再探討一下如何從項(xiàng)目團(tuán)隊(duì)、項(xiàng)目生態(tài)和投資者防范這三個(gè)方面去全面構(gòu)建區(qū)塊鏈安全生態(tài),切實(shí)降低安全風(fēng)險(xiǎn)。
安全問(wèn)題現(xiàn)狀
1.比特幣安全問(wèn)題比特幣區(qū)塊鏈自2009年1月4日運(yùn)行以來(lái),截止到今日已經(jīng)穩(wěn)定地運(yùn)行了3405天,其安全性可謂是固若金湯。
不過(guò)隨著加密技術(shù)的發(fā)展,比特幣的安全機(jī)制也越來(lái)越受到挑戰(zhàn)。
一個(gè)由加密算法愛(ài)好者構(gòu)成的組織(Large Bitcoin Collider(LBC)),正在進(jìn)行一番堂吉訶德式的努力:
暴力破解創(chuàng)建比特幣錢包地址的加密算法。
LBC上線運(yùn)作還不到一年,項(xiàng)目方表示,他們已生成了3000萬(wàn)億條密鑰,并將其和現(xiàn)有的比特幣錢包地址進(jìn)行比對(duì)。目前總共篩選出了30個(gè)匹配的密鑰,去除“釣魚”秘鑰,真正包含比特幣的匹配密鑰已有3個(gè)。
除了暴力破解法,比特幣最大的安全隱患來(lái)自于交易所平臺(tái)監(jiān)守自盜或被黑客攻擊,亦或是用戶賬戶被盜。
一旦被盜,黑客會(huì)通過(guò)混幣等手段進(jìn)行洗白,追回的可能性幾乎為零。
2.以太坊安全問(wèn)題相較于比特幣,以太坊最大的提升莫過(guò)于一方面引入了智能合約。
一方面,其圖靈完備的編程機(jī)制使得平臺(tái)可以支持復(fù)雜的應(yīng)用,大大豐富了平臺(tái)應(yīng)用的多樣性;
另一方面,以太坊引入了虛擬機(jī)中間層,使得多種語(yǔ)言開發(fā)的智能合約都能在平臺(tái)運(yùn)行,提高了平臺(tái)的可擴(kuò)展性。
但恰恰也是這兩大機(jī)制為以太坊的安全問(wèn)題增添了更多的不確定性。
首先,圖靈完備的編程方式固然更靈活,但同時(shí)也更復(fù)雜和不可控;
其次,虛擬機(jī)機(jī)制使得以太坊支持多種語(yǔ)言,當(dāng)然也引入了更多語(yǔ)言的不確定性、復(fù)雜性和固有的缺陷。
這些因素都是黑客尋找獵物的溫床。
以太坊架構(gòu)示意圖
作為區(qū)塊鏈最活躍的公鏈平臺(tái)以太坊,目前已知存在Solidity漏洞、短地址漏洞、交易順序依賴、時(shí)間戳依賴、可重入攻擊等漏洞。
在調(diào)用合約時(shí)漏洞可能被利用,而智能合約部署后難以更新的特性也讓漏洞的影響更加廣泛持久。
有研究機(jī)構(gòu)運(yùn)用分析工具M(jìn)aian分析基于以太坊的近100萬(wàn)個(gè)智能合約,發(fā)現(xiàn)有34,200個(gè)合約含有安全漏洞,可竊取或是凍結(jié)資產(chǎn)、甚至刪除合約。
3.交易所安全問(wèn)題
交易所作為巨大的數(shù)字資產(chǎn)集中池,成為黑客們攻擊的重要目標(biāo)。若是安全控制做的不到位,任何一次攻擊都將是損失慘重,破產(chǎn)倒閉也只是一夜之間。
除了來(lái)自外部的攻擊,源于交易所內(nèi)部的監(jiān)守自盜或是信息泄露也是非常致命和可怕的。2018年4月,總部位于印度的交易所Coinsecure宣布,價(jià)值330萬(wàn)美元的438.318個(gè)比特幣被盜,據(jù)稱就是由于一名員工所為。
據(jù)外媒Cointelegraph報(bào)道,韓國(guó)媒體網(wǎng)站MBC聘請(qǐng)了一家安全公司來(lái)測(cè)試包括Bithumb在的五家韓國(guó)比特幣交易所安全性設(shè)置,結(jié)果令人堪憂。
安全公司使用了一些所謂的基本黑客工具就成功繞開了這些比特幣交易所的安全程序,該公司稱他們能夠成功入侵所有五個(gè)目標(biāo)平臺(tái),獲取用戶數(shù)據(jù)和資金。
構(gòu)建區(qū)塊鏈安全生態(tài)區(qū)塊鏈安全生態(tài)不僅僅需要項(xiàng)目團(tuán)隊(duì)、開發(fā)人員,更需要多方的通力合作,因此,本文主要從項(xiàng)目團(tuán)隊(duì)內(nèi)控、項(xiàng)目生態(tài)激勵(lì)和投資者自我防范這三個(gè)方面去探討區(qū)塊鏈安全生態(tài)的建設(shè)。
完善代碼安全審查機(jī)制回顧ERC20漏洞事件,可知?dú)У鬊EC的僅僅是一個(gè)整數(shù)溢出漏洞,學(xué)過(guò)計(jì)算機(jī)的同學(xué)可能知道,這類漏洞是程序中最為常見(jiàn)和普遍的漏洞了,完全可以通過(guò)有效的代碼安全審查機(jī)制來(lái)避免。
漏洞事件一出,經(jīng)過(guò)核查,使用ERC20協(xié)議的項(xiàng)目竟然有20余個(gè)都存在類似的問(wèn)題,代碼質(zhì)量很是堪憂!
瞬息萬(wàn)變的幣圈確實(shí)發(fā)展的太快,每一個(gè)人都是飛奔著前進(jìn),都趕著寫白皮書、趕著募資、趕著上項(xiàng)目,自然而然就很少有人沉下心來(lái)好好做測(cè)試,好好做安全審查,導(dǎo)致漏洞頻出、安全事件頻發(fā)。
區(qū)塊鏈作為一個(gè)分布式的去中心化系統(tǒng),代碼一旦部署將很難更新,需通過(guò)硬分叉或者軟分叉來(lái)對(duì)代碼進(jìn)行升級(jí),成本不可謂不高。
THE DAO事件則直接將以太坊分裂成為ETH和ETC,是對(duì)以太坊生態(tài)的重大破壞。所以在項(xiàng)目發(fā)布之前,充足的測(cè)試和代碼審核變得十分關(guān)鍵和必要。比如說(shuō)多人代碼審核、內(nèi)部測(cè)評(píng)小組、外部專家評(píng)測(cè)等。
多人代碼審核由于一個(gè)人的能力和認(rèn)知總是有限的,所以對(duì)于同一段代碼,不同的人將會(huì)發(fā)現(xiàn)不同的問(wèn)題,多人代碼審核機(jī)制能使得代碼的BUG率和漏洞率大大降低。這種方式也是軟件行業(yè)降低錯(cuò)誤率最為通用和有效的方式之一。
內(nèi)部測(cè)評(píng)小組項(xiàng)目組建立內(nèi)部安全測(cè)評(píng)小組,梳理業(yè)界常見(jiàn)的安全問(wèn)題清單,并逐一對(duì)發(fā)布的項(xiàng)目進(jìn)行安全審計(jì),通過(guò)簡(jiǎn)單的梳理和測(cè)評(píng)便能將常見(jiàn)的基本漏洞一掃而空,大大增加了系統(tǒng)的可靠性。
外部專家評(píng)測(cè)對(duì)于某些新型的,特殊性的漏洞,項(xiàng)目組可以借助于外部安全專家的幫助進(jìn)行梳理和測(cè)評(píng),爭(zhēng)取在項(xiàng)目發(fā)布前將安全隱患降到最低程度。
發(fā)展白帽黑客激勵(lì)機(jī)制世界無(wú)非兩極,一陰一陽(yáng)、一黑一白、一正一邪,有黑客肆意破壞,就有白帽黑客維護(hù)世界正義。
隨著各類數(shù)字資產(chǎn)的市值越來(lái)越高,黑客們從中套取的收益也越來(lái)越客觀,相比之下,白帽黑客們卻窮酸得多。這種巨大的收入差導(dǎo)致越來(lái)越多人加入的黑客的陣營(yíng),而白帽黑客們則為數(shù)稀少。
通過(guò)激勵(lì)白帽黑客來(lái)抑制或者是平衡黑客越來(lái)越肆無(wú)忌憚的破壞行為或許將成為一種有效的手段。
那么,如何激勵(lì)白帽黑客們?yōu)槠脚_(tái)做出貢獻(xiàn)呢?
主要可以從兩方面入手,一是物質(zhì)激勵(lì),二是精神激勵(lì)。
物質(zhì)激勵(lì)對(duì)于發(fā)行通證的公鏈來(lái)說(shuō),最實(shí)在的物質(zhì)激勵(lì)自然就是通證。它既是區(qū)塊鏈平臺(tái)的價(jià)值載體,也是平臺(tái)生態(tài)治理的重要手段。比如COSMOS,為了鼓勵(lì)發(fā)現(xiàn)并及時(shí)報(bào)告缺陷,Cosmos Hub允許黑客通過(guò)ReportHackTx 交易來(lái)“邀功”,主要就是說(shuō)明,“這個(gè)節(jié)點(diǎn)已被攻擊,請(qǐng)將獎(jiǎng)金發(fā)到這個(gè)地址”。黑客可以收到擊中資產(chǎn)的5%作為賞金。
除此之外我們也可以通過(guò)設(shè)立黑客獎(jiǎng)金池、黑客基金或者項(xiàng)目特別顧問(wèn)等方式來(lái)激勵(lì)白帽黑客主動(dòng)挖掘漏洞,幫助平臺(tái)持久安全地運(yùn)行。
精神激勵(lì)除了物質(zhì)獎(jiǎng)勵(lì),對(duì)于Hacker這一非常另類、有性格的群體來(lái)說(shuō),精神上的激勵(lì)或許是更持久有效的方式。對(duì)于每一個(gè)為平臺(tái)或者項(xiàng)目作出貢獻(xiàn)的黑客來(lái)說(shuō),項(xiàng)目組、基金會(huì)或者社區(qū)都應(yīng)將給與其相應(yīng)的榮譽(yù)獎(jiǎng)勵(lì)。可以是排行榜、貢獻(xiàn)值亦或是某種稀缺頭銜等等,使其不僅能被社區(qū)其它成員知曉,更能明顯區(qū)別于普通會(huì)員,增強(qiáng)其在社區(qū)的存在感、參與感和榮譽(yù)感。
選擇靠譜交易所交易所之所以成為安全事件的重災(zāi)區(qū),原因有二:
一方面,是由于交易所存儲(chǔ)了投資者的巨額數(shù)字資產(chǎn);
另一方面,區(qū)塊鏈行業(yè)發(fā)展迅速,中心化交易所的安防建設(shè)趕不上其業(yè)務(wù)的發(fā)展速度,特別是各類交易所參差不齊,安全問(wèn)題非常突出,投資者利益難以得到保障。
為此,去中心化交易所喊得火熱,但由于其交易效率難以提升,技術(shù)實(shí)現(xiàn)難度較大,目前還不能完全取代中心化交易所。
因此,從保護(hù)切身利益出發(fā),投資者們選擇運(yùn)行持久、可靠有保障的交易平臺(tái)非常重要。