安全標杆仍有漏洞?此漏洞可造成比特幣網絡崩潰

安全標杆仍有漏洞?此漏洞可造成比特幣網絡崩潰

比特幣雖然是密碼貨幣世界的安全標杆,但這並不意味著它本身不存在著漏洞。

近期,開發人員發現Bitcoin Core軟件中存在著一個異常嚴重的漏洞,這促使開發者在本週三發佈了一個漏洞修補方案——0.16.3版本Bitcoin Core客戶端。

據悉,這一漏洞屬於拒絕服務式漏洞,如果被人利用,攻擊者可用於攻擊節點,在最壞的情況下,它可暫時造成比特幣網絡崩潰。

然而,並不是所有人都擁有利用這一漏洞的能力,只有那些運行挖礦硬件並處理比特幣網絡交易的礦工,才能夠通過雙花交易的方式來利用這一漏洞。

而對他們而言,執行這樣的攻擊,就意味著他們會失去區塊獎勵,根據今天的比特幣匯率計算,這些獎勵(12.5BTC)價值超過了75000美元。

據悉,該漏洞的首次引入,追溯到Bitcoin Core 0.14.0版本客戶端的發佈,時間點是在2017年3月份。但這一漏洞在近兩天才被發現,這促使Core代碼庫的貢獻者採取緊急行動,並在24小時內最終發佈經過測試的修復程序。

幸運的是,現在大多數比特幣用戶不需要做任何事。

開發人員強調稱,用戶“存儲”的比特幣並沒有什麼風險,然而,這一漏洞可能會影響那些使用閃電網絡的人。

儘管如此,由於該漏洞對比特幣網絡具有潛在的風險,開發人員強烈建議當前運行全節點的用戶儘快升級他們的軟件,紅迪比特幣子論壇管理員Theymos也置頂了一則關於該漏洞的通知。

Bitcoin Core開發者在軟件補丁註釋部分中描述道:“我們敦促網絡的所有參與者儘快升級新軟件。”

會影響閃電網絡

著名的計算機科學家萊斯利·蘭伯特曾說:“對於分佈式系統而言,其中一臺你甚至不知道存在的計算機出現了故障,都可能致使你計算機無法使用。”

而在當前這種特殊的情況下,製造有缺陷交易的礦工,可能會影響網絡上運行的節點。正如比特幣OpTech newsletter所指出的那樣,礦工想要攻擊比特幣節點,就需要去嘗試雙花一些比特幣。

而這一漏洞影響最大的,將是使用那些尚未準備好的比特幣捆綁技術(閃電網絡)的用戶。如果有人實施這樣的攻擊,可能會影響到在主網上運行閃電網絡的比特幣用戶。

“如果你魯莽地在運行閃電網絡,你應該儘快更新客戶端,或者關閉你的通道,幸運的是,更新是很容易的,”Blockstream工程師Gregory Sanders在紅迪論壇上敦促說。

這裡需要關注的是,如果有惡意礦工利用了這個漏洞,造成一名用戶的節點崩潰,那麼惡意參與者可能會利用這個機會欺騙其他閃電網絡用戶。

即便如此,一些開發者認為,要做到這些攻擊,其實是很難的。

“我認為它不太可能產生很大的影響,”開發者Justin Camarena表示。

這就是為什麼有些人認為,普通用戶不需要擔心這一問題。

“除非你經營了一個業務,或者運行了閃電網絡節點,否則你並不會有資金風險,”Sanders後來補充說。

難以判斷其影響

然而,在比特幣的歷史背景下,這一漏洞究竟具有多大的意義,目前還難以弄清。

Blockchain.info數據工程師Antoine Le Calvez列出了一份歷年來類似漏洞的清單,表明這些漏洞在比特幣的早期階段更為常見。

但Bitcoin Core的貢獻者Luke Dashjr對此的回應卻是,他認為漏洞可能不會向數據顯示的那樣隨時間推移而減少。

“可悲的是,我認為近年來我們缺乏的是漏洞披露工作,而不是更少的開發工作,”他說。

與此同時,其他人也從這一漏洞中得出了其他結論,即“比特幣程序員也是凡人,他們也會犯錯”。

OpenBazaar的首席開發者Chris Pacia甚至認為,雖然很多用戶認為比特幣開發者是世界上最棒的開發者群體,但這也恰恰證明了,他們實際上也是會遇到障礙的普通開發者。

“錯誤發生了,生活中總會有這樣的事,”Chris Pacia在推特上表示,“我不是因為這個漏洞而批判他們,我批評的是那些堅持Core開發者就是‘上帝’的傻瓜極簡主義者。”

儘管如此,Camarena認為,由於這一漏洞的細微差別以及攻擊執行難度,所以人們不太會去嘗試這樣的攻擊。

他告訴記者:“這是一個嚴重的漏洞,但並不像某些人認為的那般糟糕。”


安全標杆仍有漏洞?此漏洞可造成比特幣網絡崩潰


附:更新方法

如果你運行的是舊版本客戶端,請關閉它,直至其完全關閉(舊版本可能需要幾分鐘的時間),然後再運行安裝程序(在Windows上)或拷貝覆蓋至/Applications/Bitcoin-Qt(Mac系統)或bitcoind/bitcoin-qt(Linux系統)。

當你第一次運行0.15.0或更新版本的客戶端時,你的鏈態數據庫將轉換成一種新的格式,這取決於你機器的速度,所花費的時間從幾分鐘到半小時不等。

注意,區塊數據庫格式在0.8.0版本中也發生了變化,並且在0.8版本之前的客戶端到0.15.0版本的客戶端並沒有自動升級代碼。在0.7.x版本或更早版本的客戶端,無法實現直接升級(需要重新下載區塊鏈)。不過,和往常一樣的是,舊版本的錢包仍然是支持的。



分享到:


相關文章: