5月29日,360公司Vulcan(伏爾甘)團隊宣布發(fā)現(xiàn)了區(qū)塊鏈平臺EOS的一系列高危安全漏洞。經(jīng)驗證,其中部分漏洞可以在EOS節(jié)點上遠程執(zhí)行任意代碼,即可以通過遠程攻擊,直接控制和接管EOS上運行的所有節(jié)點。這樣,攻擊者利用漏洞可以“為所欲為”,如竊取EOS超級節(jié)點的密鑰,控制EOS網(wǎng)絡的虛擬貨幣交易。

點評:
EOS這種面向應用設計的平臺,為了保證其面向多種應用場景的靈活性,其復雜度是很大的,那么必然會帶來很多的安全漏洞。
目前看來,有可能是同EOS這種無gas消耗的機制有關。在比特幣或者以太坊中,每筆交易都要消耗手續(xù)費或者gas的,這樣一方面可以避免黑客通過大量微額交易發(fā)起攻擊,也可以讓惡意代碼或者缺陷代碼有停機的機會。
而在EOS中,聲稱其交易時是不需要消耗手續(xù)費之類的東西,這樣模式下運行的智能合約就存在“圖靈停機”問題,一段惡意的智能合約代碼可能一直循環(huán)下去,導致節(jié)點的資源被耗盡,從而堵塞交易。
具體的漏洞描述:
“攻擊中,攻擊者會構(gòu)造并發(fā)布包含惡意代碼的智能合約,EOS超級節(jié)點將會執(zhí)行這個惡意合約,并觸發(fā)其中的安全漏洞。攻擊者再利用超級節(jié)點將惡意合約打包進新的區(qū)塊,進而導致網(wǎng)絡中所有全節(jié)點(備選超級節(jié)點、交易所充值提現(xiàn)節(jié)點、數(shù)字貨幣錢包服務器節(jié)點等)被遠程控制。”而且在360召開的EOS漏洞發(fā)布會上聲稱,漏洞就涉及到一行代碼,那么最大可能是存在緩沖區(qū)溢出,然后會被黑客利用攻擊。
“緩沖區(qū)溢出攻擊”就是利用程序中的類似拷貝函數(shù)沒有限制邊界的情況進行攻擊,在這種情況下,黑客通過執(zhí)行攻擊代碼可以很快的得到操作系統(tǒng)的控制權(quán),從而操縱系統(tǒng)做自己想做的任何事情。
