不是 Bug 是功能?區塊鍊新創 The DAO 智慧合約「同意」駭客盜領超過 6 千萬美元

2016.06.21 by
張庭瑜
主打去中心、由程式碼自動營運的創投基金公司 The DAO,在 5 月才以超過 1.5 億美元(約 48 億台幣)創下史上最高額的群眾募資紀...

主打去中心、由程式碼自動營運的創投基金公司 The DAO,在 5 月才以超過 1.5 億美元(約 48 億台幣)創下史上最高額的群眾募資紀錄,卻於 17 日遭駭客盜走價值超過 6 千萬美元(約 19 億台幣)的虛擬貨幣「以太幣」,約為 The DAO 募得資金的 3 分之 1。消息傳出後,不僅以太幣市值從 21 美元狂跌 40% 至 12 美元,虛擬貨幣安全性也再度受到質疑。

圖說明
(圖說:以太幣從17日遭駭後,市值狂跌。圖片來源:CoinMKTCap

The DAO 不受人為控制、由程式碼自動營運

作為「去中心自治組織(Decentralized Autonomous Organization)」的 The DAO 採區塊鏈技術,投資者以以太幣交換公司股份,可用來決定公司未來發展和獲得分紅。The DAO 最大的特色在於,該公司由程式碼寫成的智慧合約自動營運,希望降低人為干預,打造透明、公開的公司治理模式,被視為是第一個實現去中心匿名管理的組織,也展現虛擬貨幣發展潛力。

圖說明
(圖說:The DAO 過去被視為革命性的新經濟合作型態。圖片來源:截圖自The DAO

隨著 The DAO 募資金額越來越高,其安全性也越來越受到關注。早在此之前,許多電腦科學家跳出來指出DAO程式碼存有漏洞,特別是投票機制可能損害投資人權益,也呼籲 The DAO 應暫停營運直到漏洞修復。

不過在修復該漏洞前,卻先發生更嚴重的駭客入侵事件。

程式碼漏洞「同意」駭客盜領

根據《富比世》報導,駭客利用的是「遞迴呼叫漏洞( recursive calling vulnerability)」。在 The DAO 程式碼中,「分割(split)」功能提供投資人可將基金轉至子系統(child DAO),但駭客在此功能中加入遞迴功能,讓他可在單一交易中重複轉出多次以太幣。不過,程式碼也設置強制等待期間,意味這筆錢需被凍結27天才可提領。

由於這起事件是由 The DAO 的程式漏洞引起,並非以太坊的虛擬貨幣機制,以太坊創辦人布特林(Vitalik Buterin)也呼籲以太幣持有者不用過度緊張。

弔詭的是,雖然盜領在真實世界是違法的,但以 The DAO 的例子來看,駭客獲得以太幣的手段是 The DAO 本身的「功能」,而非「駭入」系統得來,從程式碼的角度來看,駭客的盜領大量以太幣的行為無異於其他正常提領。駭客也向以太坊社群發表聲明,既然他的行為受程式碼許可,且以程式碼構成的智慧合約為 The DAO 的法律基礎,他理所當然可提領這筆錢。

儘管許多人將遭駭苗頭指向開發 The DAO 的工程師,但《The Verge》指出,相較於現有打造一般網站資料庫的程式碼,擁有許多安全標準可採用,區塊鏈程式是一塊新興領域,很難預測會出現哪些安全問題,而哪些預防措施又是有效的。「沒有工具、沒有說明文件,最好的方法也還在找尋。」比特幣基金會創辦人瓦賽納斯(Peter Vessenes)說。

追回盜款違背去中心管理初衷?

目前,The DAO 社群正針對後續如何補救激烈爭論。打造 The DAO 團隊的 Slock.It 創辦人的圖爾(Stephan Tual)表示,雖然 The DAO 暫時停止營運,但後續可藉由修改程式碼,將遭駭資金全數追回。

圖說明
(圖說:The DAO 社群針對此次事件的後續補救措施投票表示意見,包含 The DAO 是否繼續營運、修補漏洞等問題。圖片來源:DAO

然而,The DAO 其中一名投資人皮特森(Menno Pietersen)認為這場災難在於 The DAO 創辦人沒有打造完善的系統才會搞砸一切,但作為以太坊支持者,他反對任何可能傷害去中心平台不受人為干預初衷的補救措施,畢竟如果交易能輕易被消除,「誰能預料他們未來還會做什麼?」。

首圖來源:Wikipedia
資料來源:ForbesThe Wall Street JournalThe Verge

每日精選科技圈重要消息