區塊鏈安全事件與代碼審計
據統計,2018年全球區塊鏈領域發生近百起安全事件156,損失超20億美元,6991相較于2017年增長了538%,3780位元幣的底層技術“區塊鏈”面臨著來自資料層、網路層、共識層、激勵層、合約層、應用層的安全風險,安全攻擊方式層出不窮,防不勝防,安全攻擊主要發生在應用層,其中智能合約是區塊鏈安全的重災區,
安全事件
MtGox事件
MtGox是當時全球最大位元幣交易平臺,處理的位元幣交易占全球70%,2014年,MtGox遭遇了最嚴重的黑客攻擊,隨后MtGox宣布暫停交易,理由是其安全軟體存在漏洞,兩周后,網站突然關閉,MtGox申請破產,
據MtGox估計,公司的位元幣投資損失約合4.8億美元,其中包括客戶的75萬單位位元幣和公司自己持有的10萬單位,合計約占全球位元幣發行量的7%,此次事件導致投資者信心受挫,位元幣直接暴跌36%,
The DAO 事件
DAO,英文全稱是Decentralized Autonomous Organization,去中心化自治組織,這個去中心組織,依靠智能合約在區塊鏈上運行,沒有法律物體,我們可以把它理解成“去中心化的公司”,The DAO則是區塊鏈公司Slock.it發起的一個眾籌專案,
2016年6月17日,黑客利用智能合約腳本漏洞,通過ICO(首次代幣發行)專案盜取360萬以太幣,超過了該專案籌集的以太幣總數目的三分之一,受此事件影響,以太幣價格第二天暴跌約30%,
The DAO事件影響之大,甚至驚動了美國SEC,雖然他們不是來調查是誰偷走了那些代幣,不過,這也對之后的代幣眾籌專案產生了很大影響,專案方也會更注意法律風險,
51%攻擊
2018年5月,位元幣黃金(BTG)開發團隊公告顯示攻擊者掌控了BTG網路的大比例算力,從而針對交易所發動了“51%雙花攻擊”,攻擊從交易所竊取超過388200個BTG,價值高達1860萬美元,
“51%攻擊”的原理在于數字貨幣采用的分布式記賬機制,以位元幣為例,位元幣網路是一個去中心化的分布式賬本,每記一筆賬都需要“全民投票”確認,當你掌握全網算力超過50%時,你就擁有了對位元幣網路操縱和篡改的權力,“51%攻擊”能造成的破壞是巨大的,一旦你攻擊成功,可以修改自己的交易記錄,進行雙重支付(即雙花),
代碼審計
在區塊鏈的安全事件中,大多都是由于源代碼存在漏洞而使黑客趁虛而入,智能合約受到區塊鏈本身保護,所以智能合約代碼可以最大限度的開源和讓人閱讀,但是代碼的公開性使得黑客容易掌握代碼的缺陷,進一步利用代碼缺陷觸發條件改變智能合約執行結果,使得區塊鏈專案存在巨大的經濟隱患,所以智能合約代碼的開源性需要代碼的高可靠性,這種可靠性要求100%的正確,
但是,對于程式員來說,寫一個完全沒有漏洞的代碼實在是太難了,即使采取了所有可能的預防措施,在復雜的軟體中也總會出現沒有預料到的漏洞,所以,代碼審計的重要性不言而喻,
代碼審計,顧名思義就是檢查源代碼中的安全缺陷,檢查程式源代碼是否存在安全隱患,或者有編碼不規范的地方,通過自動化工具或者人工審查的方式,對程式源代碼逐條進行檢查和分析,發現這些源代碼缺陷引發的安全漏洞,并提供代碼修訂措施和建議,
代碼審計對于區塊鏈的發展具有重要意義:一方面,代碼審計可以節約安全投入,降低修復成本,研究表明,當應用發布后再執行代碼修復,修復成本大約是設計編碼階段的30倍,所以,變被動防護為主動防御,從源頭上控制安全隱患,可以最大程度節約成本;另一方面,代碼審計可以降低系統安全風險,通過代碼審計及時對代碼層缺陷進行修復,從而大幅度提升系統整體安全性,避免巨額經濟損失,
結語
越來越多的區塊鏈安全事件正在倒逼代碼審計的發展,目前,智能化代碼審計,即利用計算機進行穩健性檢驗是代碼審計最重要的方式,但掌握該項技術標準的國內公司并不多,代碼審計亟待進一步普及與發展,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/56500.html
標籤:其他
