攻擊者可以手動減少門羅幣總量?幸好開發者已成功修復漏洞
以隱私為中心的加密貨幣門羅幣(Monero)的開發者已經修復了一個漏洞。一旦被攻擊者發現這個漏洞,他們就可以從交易所(或者門羅錢包)直接竊取門羅。
加密貨幣交易所“死裡逃生”
開發者已經向交易所分配軟體補丁並修復了這個漏洞,隨後還在官網上公佈了這個訊息。這個漏洞可能導致使用者向同一個“Stealth address”(隱身地址能夠隱藏一筆交易的實際收幣地址以及傳送方的身份)傳送多筆交易,從而故意“burn”(銷燬)門羅。接收方能夠花費一個輸出(一開始錢包會自動使用最大的輸出),但後續交易中傳送的資金將不能被花費,因為這些交易造成了金鑰被重複使用的現象,可能會被網路視為雙花攻擊並且拒絕確認。
攻擊者可能利用這個漏洞向同一個屬於加密貨幣或相關商戶的隱身地址傳送一連串的交易。這個漏洞是在門羅的錢包軟體中被發現的,而該軟體並未檢測到這個異常。因此,錢包很可能不會發現其中存在問題,而是接收這些交易。
這樣一來,攻擊者可以將全部資金換成其它加密貨幣,並提取到外部錢包中。不過,當交易所試圖納入這部分資金用於未來交易時,他們只能花費最大輸出。儘管攻擊者無法獲得直接的物質利益,但他們可以付出極低的交易費用使交易所以及相關平臺上的交易者損失大量資金。
一旦攻擊者開始大規模部署這個漏洞,就會間接導致門羅有效供應量的減少,也就是可花費的門羅幣數量減少。因此,從理論上來說,可以增加可花費的門羅幣價值。
值得注意的是,很多人早就知道有這種攻擊方式存在。然而,直到最近,門羅的reddit板塊才開始討論這個問題,這才引起開發者的注意。他們意識到這個漏洞可能會被作惡者利用,對加密貨幣交易所、商戶以及相關機構造成不良影響。
這個漏洞被披露之後,並未對門羅幣的價格造成較大影響。截至發稿時,門羅幣的價格為114美元。
程式碼稽核迫在眉睫
公開披露程式碼,私下向易受攻擊的物件傳送補丁,門羅幣社群管理員dEBRUYNE承認,在這一過程中採用的方法並不理想,社群還沒有找到一個更好地漏洞報告機制。
我(和其他人)私下儘可能地通知了交易所、服務商以及商戶有關這個補丁可以被用到v0.12.3.0中的事。我想要重申,這不是最好的解決方式,因為這麼做首先一定會遺漏很多我或者其他人無法聯絡上的但卻對門羅生態至關重要的組織,其次,可能會有人認為其中存在對某些組織特別優待的情況。然而,改進漏洞報告流程的時間實在有限。
dEBRUYNE呼籲更多開發者參與門羅程式碼的稽核,以防止類似事件再次發生。
本次事件再次印證了加密貨幣以及相關的軟體依然處於發展初期,因此可能存在(重大)漏洞。
確實,就連比特幣也不能例外。近期,比特幣開發者也修復了一個漏洞。這個漏洞可能讓惡意礦工創造新幣,人為地增加比特幣的總量。