自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

區(qū)塊鏈智能合約漏洞,想說補(bǔ)你不容易

安全 應(yīng)用安全
最近幾天,區(qū)塊鏈平臺(tái)EOS智能合約漏洞事件再次把區(qū)塊鏈安全推上了風(fēng)口浪尖。攻擊者可以通過發(fā)布包含惡意代碼的“智能合約”,經(jīng)過一系列的操作之后,控制區(qū)塊鏈網(wǎng)絡(luò)中的所有節(jié)點(diǎn),從而為所欲為。

[[231346]]

最近幾天,區(qū)塊鏈平臺(tái)EOS智能合約漏洞事件再次把區(qū)塊鏈安全推上了風(fēng)口浪尖。攻擊者可以通過發(fā)布包含惡意代碼的“智能合約”,經(jīng)過一系列的操作之后,控制區(qū)塊鏈網(wǎng)絡(luò)中的所有節(jié)點(diǎn),從而為所欲為。從The DAO到BEC,SocialChain,Hexagon,到這幾天的EOS漏洞,“智能合約”已經(jīng)成為區(qū)塊鏈安全的重災(zāi)區(qū)。那么什么是智能合約,智能合約的漏洞究竟給安全帶來了什么樣的新挑戰(zhàn),我們應(yīng)該如何應(yīng)對? 以下內(nèi)容360代碼衛(wèi)士團(tuán)隊(duì)的安全專家將從這幾個(gè)方面進(jìn)行深入解讀。

一、什么是智能合約?

智能合約(smart contract) 這個(gè)術(shù)語是在1994 年由Nick Szabo 提出的,后來經(jīng)過幾次在不同環(huán)境下的重新定義。我們現(xiàn)在通常所說的區(qū)塊鏈智能合約以以太坊為代表,以太坊的作者Vitalik Buterin 意識(shí)到,在區(qū)塊鏈系統(tǒng)中,交易邏輯是可以和底層系統(tǒng)機(jī)制分離的。底層系統(tǒng)負(fù)責(zé)交易塊的創(chuàng)建和驗(yàn)證,記賬者的共識(shí)達(dá)成等基礎(chǔ)功能,而交易本身到底做什么事情是可以通過二次編程的方式來定義的。因此他設(shè)計(jì)了一種交易代碼執(zhí)行的虛擬環(huán)境EVM,使用者可以開發(fā)自定義的交易邏輯,發(fā)布到鏈上,當(dāng)交易進(jìn)行時(shí),鏈上所有的節(jié)點(diǎn)都執(zhí)行相同的代碼,從而同步改變鏈上數(shù)據(jù)的狀態(tài)。他為這種代碼使用了“智能合約”這個(gè)名字,這是我們目前通常所說的智能合約的內(nèi)涵。

二、智能合約漏洞,左右為難 !

智能合約本質(zhì)是一段運(yùn)行在區(qū)塊鏈網(wǎng)絡(luò)中的代碼,它完成用戶所賦予的業(yè)務(wù)邏輯。以以太坊體系的代幣為例,其業(yè)務(wù)邏輯是代幣發(fā)幣和交易。以太坊在設(shè)計(jì)之初,將智能合約設(shè)計(jì)成了一旦部署就不能修改的模式。這種設(shè)計(jì)有可能是為了提高智能合約的可信性。 但是我們知道,只要是由人編寫的程序,就一定會(huì)出現(xiàn)錯(cuò)誤和缺陷。以太坊這種設(shè)計(jì)本身就違背了程序設(shè)計(jì)的一般規(guī)律,在智能合約出現(xiàn)漏洞的時(shí)候可能會(huì)造成無法彌補(bǔ)的損失。 我們可以看到,近期出現(xiàn)的以太坊體系智能合約的漏洞,造成了巨大的影響,有的代幣也因此毀滅。

目前以太坊體系區(qū)塊鏈智能合約的機(jī)制設(shè)計(jì),加之漏洞可能帶來的毀滅性影響,使得已上線智能合約的漏洞的報(bào)告和處理變得非常棘手。 360代碼衛(wèi)士團(tuán)隊(duì)在近期的研究中發(fā)現(xiàn)了以太坊體系下多個(gè)已上市交易的代幣的智能合約安全漏洞,并已第一時(shí)間報(bào)告廠商,但到目前為止廠商尚未作出任何回應(yīng)。對于廠商來說,由于智能合約不可修改的特性,要對上線后發(fā)現(xiàn)的漏洞進(jìn)行有效修復(fù),只能選擇重新部署新的合約,這將付出巨大的代價(jià),因此有的廠商可能會(huì)選擇不響應(yīng),不處理。而對于安全研究者來說,也面臨尷尬的境地,左右為難。在廠商修補(bǔ)漏洞前公開漏洞細(xì)節(jié)對于廠商不利,有悖漏洞披露的一般原則,但如果廠商遲遲不修補(bǔ)漏洞,公眾對于漏洞的存在不知情,風(fēng)險(xiǎn)會(huì)隨著時(shí)間的增長迅速膨脹,漏洞一旦爆發(fā)可能會(huì)造成更大的危害,波及更大的人群,可能會(huì)造成很多人的投資瞬間化為烏有。接下來360代碼衛(wèi)士團(tuán)隊(duì)還將與廠商保持積極的聯(lián)系和溝通,以期幫助其修復(fù)漏洞。

三、智能合約漏洞,如何應(yīng)對?

在一些聯(lián)盟鏈中,智能合約的設(shè)計(jì)是可以在部署之后更新的,當(dāng)然這種更新需要一定的線下協(xié)商流程。要應(yīng)對區(qū)塊鏈智能合約的安全漏洞問題,未來需要普遍考慮設(shè)計(jì)相應(yīng)的智能合約協(xié)商更新機(jī)制,降低漏洞修復(fù)的成本。

但現(xiàn)在,我們需要面對現(xiàn)實(shí), 做出幾乎唯一可行的、切實(shí)有效的努力 —— 在智能合約上線之前,對其進(jìn)行全面深入的代碼安全審計(jì),盡可能的消除漏洞,降低安全風(fēng)險(xiǎn) 。

360代碼衛(wèi)士團(tuán)隊(duì)安全專家表示,當(dāng)前區(qū)塊鏈智能合約中可能出現(xiàn)的漏洞至少有20余種。以下列舉一些常見的區(qū)塊鏈智能合約的漏洞類型及其可能造成的風(fēng)險(xiǎn),這些漏洞在智能合約上線之前,都應(yīng)該進(jìn)行詳細(xì)的排查。

  1. 整數(shù)溢出

  • 智能合約中危險(xiǎn)的數(shù)值操作

  • 可能導(dǎo)致合約失效、無限發(fā)幣等風(fēng)險(xiǎn)

  1. 越權(quán)訪問

  • 智能合約中對訪問控制處理不當(dāng)

  • 可能導(dǎo)致越權(quán)發(fā)幣風(fēng)險(xiǎn)

  1. 信息泄露

  • 硬編碼地址等

  • 可能導(dǎo)致重要信息的泄露

  1. 邏輯錯(cuò)誤

  • 代理轉(zhuǎn)賬函數(shù)缺失必要校驗(yàn)

  • 可能導(dǎo)致基于重入漏洞的惡意轉(zhuǎn)賬等風(fēng)險(xiǎn)

  1. 拒絕服務(wù)

  • 循環(huán)語句、遞歸函數(shù)、外部合約調(diào)用等處理不當(dāng)

  • 可能導(dǎo)致無限循環(huán)、遞歸棧耗盡等拒絕服務(wù)風(fēng)險(xiǎn)

  1. 函數(shù)誤用

  • 偽隨機(jī)函數(shù)調(diào)用和接口函數(shù)實(shí)現(xiàn)問題

  • 可能導(dǎo)致可預(yù)測隨機(jī)數(shù)、接口函數(shù)返回異常等風(fēng)險(xiǎn) 

責(zé)任編輯:龐桂玉 來源: 今日頭條
相關(guān)推薦

2018-06-02 13:37:00

2012-06-13 14:58:09

BYOD移動(dòng)辦公

2013-09-22 09:16:25

碼農(nóng)程序員黑客

2018-01-24 07:28:20

2017-04-27 13:30:14

AndroidWebView移動(dòng)應(yīng)用

2009-09-04 08:19:24

Windows 7優(yōu)缺點(diǎn)

2009-02-12 17:25:21

Windows7試用下載

2011-12-16 14:52:55

移動(dòng)互聯(lián)聯(lián)想

2012-03-27 10:53:56

石油開采超級計(jì)算機(jī)

2012-08-20 10:13:39

云計(jì)算服務(wù)配置

2016-02-18 10:52:25

ApplePay綁定失敗蘋果

2021-11-02 10:25:19

區(qū)塊鏈智能合約

2013-05-17 10:18:16

2020-12-17 08:00:00

區(qū)塊鏈數(shù)據(jù)以太坊

2021-04-23 10:59:07

區(qū)塊鏈貨幣私鑰

2020-04-15 08:59:04

漏洞獵人黑客漏洞

2022-05-29 10:19:08

區(qū)塊鏈智能合約編程語言

2021-04-20 19:21:50

臟讀MySQL幻讀

2023-07-04 20:15:00

2022-02-13 23:05:23

加密貨幣比特幣貨幣
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)