歐科雲鏈OKLink行業觀察:遭黑客兩連擊,DeFi生態鳴起喪鐘還是進入休整?

歐科雲鏈OKLink行業觀察:遭黑客兩連擊,DeFi生態鳴起喪鐘還是進入休整?

作者: 金評媒JPM

對於DeFi (Decentralized Finance)投資者來講,這一週都不會太平靜。北京時間4 月 19 日上午 8 點 45 分,國產 DeFi 借貸協議 Lendf.Me 被曝遭受黑客攻擊。這是繼 4 月 18 日 Uniswap 被黑客攻擊損失 1278 枚 ETH(價值約 22 萬美元)之後,DeFi生態出現的又一重大安全事件 。

最新動向

兩起安全事件接連爆發後,項目方、區塊鏈安全公司紛紛跟進。4月18日,也就是週六,Uniswap 的imBTC被盜走;週日,Lendf.Me上價值2500萬美金的資產被黑客洗劫一空;週一,dForce創始人楊民道如期於Medium發文通報“Lendf.Me被黑”一事的處理進展,表示“在過去的24小時裡,一直在不停地工作,並將在以後的文章中詳細介紹Lendf.Me採取的所有行動。”週二,黑客返還全部資產,dForce創始人楊民道公佈後續行動計劃。

Lendf.Me 被攻擊累計的損失約 24,696,616 美元,具體盜取的幣種包括USDT、WETH、WBTC等12個幣種。據歐科雲鏈OKLink區塊鏈瀏覽器顯示,北京時間4月21日開始,Lendf.Me攻擊者地址
0xa9bf70a420d364e923c74448d9d817d3f2a77822下的資產在不斷往外轉出。當日14點,Lendf.Me攻擊者地址下的ETH餘額減少至$279.27。一小時後,該地址下ETH餘額已經為0。隨著各方的介入,最新消息顯示黑客已退回全部被盜資產。

歐科雲鏈OKLink行業觀察:遭黑客兩連擊,DeFi生態鳴起喪鐘還是進入休整?

圖片來源:oklink.com,4月21日14:00

歐科雲鏈OKLink行業觀察:遭黑客兩連擊,DeFi生態鳴起喪鐘還是進入休整?

圖片來源:oklink.com,4月21日14:00

重入攻擊

目前已知的情況是,攻擊者利用了 imBTC 採用的 ERC-777 標準的一個漏洞,執行重入攻擊(Reentrancy attack ),導致市值約 2500 萬美金的資產從 Lendf.Me合約裡被取出。

而18日下午,攻擊Uniswap的手法與此次Lendf.Me類似,兩次事件的攻擊者極有可能是同一夥人。黑客利用Uniswap和ERC777的兼容性問題,在進行ETH與imBTC交易時利用ERC777中的多次迭代調用tokensToSend來實現重入攻擊。

解釋重入攻擊之前,我們來複習一個關於以太坊的知識點。以太坊上的每一個代幣都是一個合約,而這些合約都是根據某個標準來寫。大多數用戶更熟知的是ERC20標準,歐科雲鏈OKLink區塊鏈瀏覽器顯示,截至4月21日,以太坊上ERC20代幣數高達214075,且數量呈現上升趨勢。

歐科雲鏈OKLink行業觀察:遭黑客兩連擊,DeFi生態鳴起喪鐘還是進入休整?

圖片來源:oklink.com

然而,即使是ERC20同一標準下,代幣在合約之間的轉賬仍然不是很方便。ERC777便應運而生,兼容ERC20的基礎上又添加了新的內容。

此次事件中的Uniswap是根據ERC20標準設計的。Uniswap v1有一個工廠合約和一個交易合約,通過工廠合約,每個代幣都可以和以太坊生成一個交易合約。也就是說,任何滿足ERC20標準的合約都能夠通過工廠合約直接註冊到Uniswap上而不需要許可。ERC777兼容ERC20,ERC777標準下的合約同樣也可以註冊到Uniswap。

通常來講,智能合約在正常執行期間可以通過執行函數調用,或者簡單地轉移以太坊來執行對其他智能合約的調用。這些智能合約本身可以稱為其他智能合約,它們可以回調到調用他們的智能合約或回調棧中的任何其他智能合約。在這種情況下,我們說智能合約被重新輸入,這種情況被稱為可重入性。

重入本身不是問題,但智能合約以“不一致”的狀態重新輸入時,就會出現問題。Uniswap 上使用 ERC777 的安全性問題早在19年6月就被發現並公開過。ERC777 的 Uniswap 交易對會因為 在ERC777 標準裡存在,而不存在於 ERC20 裡被攻擊,這時候,重新輸入就變成了重入攻擊。

防禦對策

這已經不是第一次DeFi 系統性風控漏洞被黑客利用了。從之前鬧得沸沸揚揚的閃電貨bZx漏洞事件到此次的二連擊事件,2020年還未過半,DeFi就經歷了三次大規模資產風險事件。

2月,bZx遭受攻擊,其協議漏洞被利用,攻擊者套利99萬美元;3月12日的極端行情下,MakerDao等協議突發強制清算,機器人程序未及時調高gas費,有用戶趁機以0出價獲得系統拍賣的抵押資產,給MakerDao造成了567萬美元的損失;此次的黑客二連擊事件中,被盜資產更是高達2500萬美元。DeFi 基礎設施的脆弱性暴漏無疑。

DeFi 的創建者本意是利用代碼和智能合約創建一個無需審查權限、人人可參與的開放金融生態。其大規模發展的基礎設施是各種去中心化協議。雖然有更美好的願景,但DeFi 在抗風險能力上甚至不及中心化系統。

接連的安全事件讓人們醒悟,沒有0漏洞的協議,安全才是重中之重。對於項目方而言,在開發合約時就應把合約安全問題列為重點。可以將合約代碼開源,讓更多專業人士和技術團隊參與進來,分析整理出易發生的意外事件,提升合約編寫的安全性和功能準確性,防患於未然。其次,項目方可以與安全機構加強合作,審查代碼。個人用戶也需要在決策時格外謹慎,選擇投資項目之前,利用好區塊鏈瀏覽器等工具更全面地瞭解項目的鏈上信息才是關鍵。

這是一個快速迭代的領域,經此幾劫,DeFi生態是喪鐘長鳴還是進入休整,相信不久就能看到結果。這也是一個長期發展的行業,代碼即法律的願景還沒有實現,更多的法規及監管介入才能幫助DeFi 生態健康發展。DeFi可能會在未來爆發,但這個可能或許還需要數十年的沉默期來鋪墊。

金評媒JPM

JPM責任編輯


分享到:


相關文章: