錢包、智能合約、交易所都不安全 區塊鏈安全由其最弱一環決定
區塊鏈可能是安全的,但與之交互的軟件未必,至少大多數情況下都不安全。區塊鏈軟件漏洞導致的網絡攻擊近年來逐漸增多,從加密貨幣錢包盜竊到智能合約攻擊再到加密貨幣交易所被黑,各種涉區塊鏈軟件的安全事件層出不窮。
保護區塊鏈生態系統是當前最具挑戰性的網絡安全問題。區塊鏈本身可能是安全的,但這并不意味著與之交互的所有部分都安全,比如加密貨幣錢包、加密貨幣交易所、挖礦軟件、智能合約。Carbon Black 最近的一份調查研究表明,僅今年上半年,黑客便盜取了價值11億美元的加密貨幣。
盡管當下區塊鏈威脅主要集中在公共鏈領域,企業區塊鏈勢必也不能獨善其身。對公共鏈下手就如此有利可圖,企業區塊鏈在黑客眼中就像是一片未開墾的礦山。公共鏈漏洞的成功利用案例將會引導黑客發現企業區塊鏈中的弱點。
安全學習曲線
新技術意味著新威脅和新的學習曲線。任何新技術都一樣,風險浮現需要時間,發展出應對風險的方法也需要時間。我們已經在WiFi技術上走過了這條曲線,IoT技術領域的學習曲線則仍在描繪中。至于區塊鏈安全,我們才剛剛踏上學習曲線的起始階段。而我們必須盡快探索,因為區塊鏈的誘惑太大了,鏈上投注了如此之多的金錢,大量攻擊活動正蠢蠢欲動。
區塊鏈成為黑客眼中誘人目標的部分原因,在于攻擊者利用區塊鏈變現更加便捷,他們不用轉手所盜數據即可收獲金錢,直接盜取(虛擬)貨幣本身即可。
最弱一環
只要整個區塊鏈系統不是全無漏洞,攻擊者就總有空子可鉆。與區塊鏈交互的組件也是用代碼編寫的,而大多數軟件代碼都有漏洞。CA Veracode 上的代碼掃描每年都能掃出一大批漏洞。最近的數據集也顯示77%的應用初次掃描就有至少一個漏洞。這種形勢下,你還會相信與區塊鏈互動的所有軟件都是安全的?加密貨幣錢包、智能合約、加密貨幣交易所,哪個值得信任?
就拿加密貨幣交易所和智能合約來說吧。加密貨幣交易所就是用戶兌換加密貨幣的在線平臺。換句話說,根據兌換類型,加密貨幣交易所可被視為另一種形式的股票交易所或機場和銀行的貨幣兌換服務。
最近幾年發生過數起加密貨幣交易所重大安全事件:
- Gox損失了4.8億美元的比特幣
- 2016年Bitfinex遭遇多簽名錢包黑客事件,損失7200萬美元
- Nicehash遭攻擊者網絡釣魚盜走憑證后損失6300萬美元
Coincheck因使用單因子身份驗證的在線錢包存儲所有信息而慘遭攻擊。(這就好像銀行把所有的錢都放到某位出納的抽屜里一樣。)
能夠數字化驗證并促進合約簽署和執行的智能合約也未能免疫。智能合約中的低級編程錯誤導致大規模數據泄露的事件不是沒有:
- DAO智能合約中的可重入漏洞讓攻擊者抽取了價值5000萬美元的以太幣。
- Parity錢包訪問控制問題導致價值3000萬美元的以太幣損失。
不要以為用了區塊鏈你的交易就是安全的。
區塊鏈用戶要保護自身,需從以下四個基本安全措施做起:
- 別暴露你的私鑰
- 采用雙因子身份驗證
- 使用加密貨幣交易平臺時別公開任何電子郵箱地址或電話號碼
- 別在網上吹噓你的加密貨幣財富
實現代碼級安全
創建與區塊鏈互動的軟件時應將安全內置到代碼中:
- 要用良好的軟件開發生命周期將安全添加到開發過程中,并審查繼承過來的代碼
- 使用雙因子身份驗證和硬件錢包
- 遵從標準最佳實踐——使用SSL和證書以確保參與各方的身份真實
區塊鏈好處多多,包括更好的法律合同、更強的供應鏈可見性,甚至可以減少欺詐。但任何技術都逃不過被惡意黑客探測一番,區塊鏈也不例外,黑客探出的漏洞就有可能引發懷疑情緒,減緩新技術的采納速度。
【本文是51CTO專欄作者“”李少鵬“”的原創文章,轉載請通過安全牛(微信公眾號id:gooann-sectv)獲取授權】