查找:                      轉第 顯示法寶之窗 隱藏相關資料 下載下載 收藏收藏 打印打印 轉發轉發 小字 小字 大字 大字
DeFi淪為黑客取款機背後——DeFi智能合約安全漏洞的法律探討
【作者】 樊曉娟;印磊;洪嘉賓;竺雨辰【合作機構】 北京市中倫律師事務所
【中文關鍵詞】 智能合約;安全漏洞【主題分類】 合同法
【發布時間】 2020.06.03
【全文】法寶引證碼CLI.A.237110    
  

  背景:

  2020年4月18日,DeFi平台Uniswap被黑客利用了Uniswap 和ERC777 標准的兼容性問題缺陷實施了重入攻擊,攻擊者利用此漏洞消耗盡Uniswap ETH-imBTC 池約1,278個ETH。[1]

  2020年4月19日,網傳國產DeFi 借貸協議Lendf.Me 被曝遭受黑客攻擊,黑客利用imBTC的ERC 777合約漏洞來實現重入攻擊,Lendf.Me損失了大約2500 萬美元。Lendf.Me為此被嘲笑淪為黑客取款機。[2]

  2020年4月25日,Lendf.me黑客事件發生不到一周,鏈上期權協議Hegic 發布推文稱代碼中出現錯誤(typo),無法為新創建期權合約解鎖過期期權合約中的流動性,有152.2ETH(約合28537美元)被永久鎖定在未行使的看跌/看漲期權的合約池中。[3]

  然而,以上安全事故並非個例,根據區塊鏈安全服務商PeckShield的統計,包括前兩者在內,2018年底到2020年4月,DeFi安全事件有12起,大部分源于智能合約安全漏洞。僅2020年4月的3起案例中2起與ERC777合約漏洞有關。

  DeFi怎麼了?智能合約還靠譜嗎?法律上有沒有救濟手段呢?

  一、DeFi與智能合約

  DeFi,即Decentralized Finance,常被稱作分布式金融或者去中心化金融,去中心化交易所、網絡借貸平台、保險平台、去中心化錢包等都是屬于DeFi範疇。DeFi產品是散布于世界各地的人以點對點的方式參與金融活動的平台,如消費、借款、貸款、交易,甚至賭博,而無需依賴銀行和政府等中介機構,因此備受去中心化擁躉們的追捧,成為不可忽視的活躍于金融領域的力量。

  DeFi產品在區塊鏈平台上運作,大量且頻繁的交易則依賴于部署在鏈上智能合約予以自動化處理。以太坊上,數字貨幣的發行和流通、借貸、投票、拍賣等,都已有現成的智能合約模塊可供調用,各種新的智能合約也在不停編寫和部署中。

  二、智能合約的安全漏洞

  筆者曾在《智能合約的法律思考》一文中,詳細分析了智能合約的本質就是計算機代碼,其被部署于區塊鏈上,以供交易在預設條件滿足時的自動執行。智能合約在自動化執行、效率等方面具備了其他執行方式所無可比擬的優點。但是,基于其計算機代碼的本質,智能合約也有不可忽視的局限性。

  (一)代碼漏洞

  計算機代碼由人類編寫,不可避免的存在漏洞。一個比較有利的證據是,英國倫敦大學學院副教授Ilya Sergey與新加坡國立大學多位學者合著的論文Finding The Greedy, Prodigal, and Suicidal Contracts at Scale[4]指出:“將近 100萬份智能合約進行每份10秒分析時間的分析後發現,這其中有34200份智能合約很容易受到黑客攻擊,其中2365份有明顯漏洞。”

  這些漏洞,是黑客攻擊的切入點,隱藏著用戶財產損失和信息泄露的風險。

  (二)執行不能

  智能合約區別與普通合同的顯著特點是其能夠做到不可逆地自動執行。並且,憑借區塊鏈不易篡改的技術特點,部署于區塊鏈的智能合約所儲存和運行的方式也是不易修改的。基于區塊鏈技術的智能合約的這一特點就像是硬幣的兩面,利弊參半。

法小寶

  一方面,自動執行特征大大提高了合同履行效率和合同當事方的違約成本;另一方面,一旦存在安全漏洞,智能合約的漏洞修補將會非常困難。即使有管轄權的司法機關作出有效的裁決或判決,由于部署在區塊鏈的智能合約由區塊鏈自動運行,法院或其他第三方也無法強制修改[5]。進一步而言,基于區塊鏈的智能合約,其數據被分布記載于全鏈節點,就是修改某一個節點上的數據,也無法實現全鏈記錄的變動。[6]

  三、智能合約的安全審計

  如前文所述,智能合約存在安全漏洞的概率極高,一些區塊鏈安全服務商隨及推出了智能合約安全審計服務。簡單來說就是在智能合約上線運行前,由區塊鏈安全服務商對于智能合約的安全性進行審查,評估是否存在安全漏洞,並出具報告。

  那麼,智能合約安全審計對于避免防範安全漏洞風險的作用有多大呢?

  從技術角度來說,專業區塊鏈安全服務商對于智能合約的安全審計確實能夠發現安全漏洞,但是能發現多少,改進的建議是否有效,還取決于審計人員的專業水平和是否有足夠的工作時間。但即使是安全審計人員,也不可能在有限時間內窮盡發現所有漏洞。

  從成本角度來說,聘請第三方安全審計,必然會增加項目的經濟成本,而且最終轉嫁給用戶。而DeFi的一大特點就是成本低,所以這部分成本項目方和用戶不一定願意承擔。進一步而言安全審計後,修改bug勢必推遲項目上線,在唯快不破的DeFi界,項目方不一定有足夠的意願有效地修改全部已知漏洞。一個例子是,本文開頭說到的Hegic案例中,Trail of Bits在為期3天的代碼評審(不是安全審計)過程中發現了HegicOptions 中至少存在10個可能會傷害用戶的關鍵缺陷,Trail of Bits向Hegic團隊給出的建議是推遲部署,然而,Hegic在修改了部分bug後依舊匆忙上線[7]。

  四、法律責任和救濟

  如前文論述,智能合約存在漏洞幾乎是不可避免的,只是漏洞的數量和嚴重程度的區別。那麼DeFi的智能合約安全漏洞導致用戶損失的情形下,法律責任應該如何分配?用戶有無尋求救濟的途徑呢?

  (一)違約責任和侵權責任

  與法律救濟相關的民事責任承擔分為兩大類,一類是違約責任,一類是侵權責任。違約責任基于雙方已建立的合同關系,例如買賣關系、服務關系,而其中一方違反了合同約定,就應當根據合同的約定承擔相應的違約責任,例如賠償損失、支付違約金等。侵權責任中,一方侵犯了他方的民事權益,則應當依照法律規定承擔侵權責任。

  兩者的區別在于,大部分情況下,前者違約方承擔責任的依據是合同約定,後者侵權方承擔責任的依據是法律規定。

  


  ······

法寶用戶,請登錄後查看全部內容。
還不是用戶?點擊單篇購買;單位用戶可在線填寫“申請試用表”不接我們電話 也不給拒接原因申請試用或直接致電400-810-8266成為法寶付費用戶。
©北大法寶:(www.pkulaw.cn)專業提供法律信息、法學知識和法律軟件領域各類解決方案。北大法寶為您提供豐富的參考資料,正式引用法規條文時請與標准文本核對
歡迎查看所有產品和服務。法寶快訊:如何快速找到您需要的檢索結果?    法寶V5有何新特色?
掃碼閱讀
本篇【法寶引證碼CLI.A.237110      關注法寶動態:  

熱門視頻更多