DeFi應用如何抵擋黑客攻擊?
麦子钱包
2020-07-20 06:10
本文约2410字,阅读全文需要约10分钟
4月23日晚7點,麥子錢包舉辦了Math Show的第一期,有幸邀請了慢霧科技創始人餘弦給我們講關於「DeFi應用如何抵擋黑客攻擊」,主持人是鏈聞的劉鋒,以下是當晚的精彩撰錄。

▼▼▼

劉鋒:近幾天餘弦參與處理Lendf.me 被盜資金(近2500 萬美金)的追討,可以和我們講講這幾十個小時的經歷嗎?

餘弦:第一步,快速定位威脅情況和攻擊細節,這樣可以快速給出最正確的漏洞原因,比如這次事件中,本質問題是Lendf.Me 的核心代碼中存在重入攻擊漏洞,而這個漏洞又需要結合基於ERC777 代幣的組合才能發生。知道漏洞本質及攻擊手法後,在鏈上是很容易知道攻擊者俱體盜走多少資產。

第二步,思考如何追回。在4月19日下午,dForce、星火與imToken 安全團隊在線下集結,並與慢霧安全團隊遠程連線成立“臨時安全團隊”,開始進行資產追回。因為信息量巨大且雜亂,集中討論可以快速的信息對稱,加快速度。

4月20日,基於黑客在攻擊前後留下的痕跡,“臨時安全團隊”成功確定了準確的黑客畫像,並開始與國內外各方資源進行交叉對比,獲得突破性線索,離黑客越來越近。 4 月21 日下午,在黃金48小時內,黑客在重重壓力下,與dForce 主動溝通,並開始歸還部分資產。繼續溝通後,所有資產被成功找回,這是攻擊發生後的第三天。這個過程不僅是“臨時安全團隊”發揮了關鍵作用,還得到了非常多加密社區朋友直接與間接的幫助。

劉鋒:對於這次Lendf.me 被攻擊事件,大家應該吸取什麼教訓?

餘弦:任何新事物在進化過程中都會有安全風險,這是進化法則,越早期這種風險越大,最終要么死亡,要么就會趨於某種比較穩定的平衡。

基於這種心理準備,我們來看DeFi,有幾個比較重要的風險:技術安全風險、業務安全風險、合規安全風險,我們簡單展開(以以太坊為例):

1. 技術安全

首先看公鏈本身是否久經考驗,足夠安全,以太坊基本滿足這點;然後看智能合約的設計是否足夠安全,Solidity 並不太滿足;再看相關的標準(如ERC20, 223, 721, 777等等)實現是否足夠安全,這裡最大的問題在於很多時候一個“特性”會變成一種“缺陷”;再看基於標準的成熟框架是否安全,如OpenZeppelin 就很優秀;最後看項目方開發出來的是否真的嚴格安全實踐,這個就非常不好說了,很明顯,開發的質量是參差不齊的。

2. 業務安全

業務決定於DeFi 的設計,比如抵押借貸、閃貸、交易等等。業務需要特別考慮的是安全風控,比如暴跌暴漲怎麼辦?突然出現的大額轉幣如何處理?如何解決第三方安全風險(如:接入第三方代幣、和第三方聯動等)?

3. 合規安全

如果是一個灰色或黑色邊界的DeFi,一不小心被一些國家的執法機構打掉或自己跑路了,怎麼辦?

另外特別補充一些和用戶角度有關的判斷:

1. 項目方內部有實力不錯的安全團隊或有豐富安全經驗的核心人物把關

2. 項目方近半年內被第三方專業安全機構安全審計並公開安全審計結果

3. 項目方有長期持續緊密合作的第三方專業安全機構

4. 項目方核心成員對待安全的態度坦然開放,勇於認錯並把安全放在第一位

5. 項目方對安全工作充滿敬畏與尊重

基於上面這5點可以延伸出一些事實,比如:口碑、真實用戶數、數據透明度、安全透明度等等。

劉鋒:大家願意去用DeFi 產品,有很大原因是擔憂中心化金融服務平台的安全性問題,希望通過DeFi 討個平安。但是今年一連串DeFi 平台和產品被攻擊,這讓人對DeFi 反而不信任了,我覺得有點遺憾,你怎麼看?

餘弦:我的看法不一樣,大家來看看歷史。

具體細節這裡看:https://hacked.slowmist.io/

大家會看到中心化、去中心化都有非常慘重的歷史案例,但其實不必因此而打擊信心,DeFi 一定有自己的定位,但DeFi 也別想著一統天下,同樣的話也適合CeFi,未來應該會看到更多DeFi + CeFi 的混合體出現。而且,DeFi 其實並不一定需要完全去中心,這是我的個人看法。

我是黑客,這些在我眼裡都沒有絕對的安全,都有許多薄弱點,但是黑客不都是壞的,我們更希望是往安全的方向去進化,但我們在對抗時,必須有足夠的攻擊思維。

劉鋒:觀眾提問,對DeFi合約審計的作用有多大?能保證足夠安全麼?是否經過了審計的defi項目就值得信任呢?

餘弦:DeFi 安全審計是安全策略的第二層,第一層是DeFi 開發安全,這是項目方的事。 DeFi 安全審計在第二層可以規避不少問題,將安全防禦水平提高一個檔次。但之後還有第三層,也就是更新迭代持續運營的安全,這個一不小心就麻煩了。只能說,經過安全審計的項目,可以讓人更放心,但也一定都有黑天鵝——來自未來的攻擊。所以,如果安全審計已經超過半年,那就得注意了。

劉鋒:觀眾提問,大多數知名DeFi 協議都是以某種形式被中心化控制的,雖然這種方式在安全性上有些好處,怎樣才能避免管理員濫用自己的特權,或者說減少相關風險?

餘弦:這個是人性的問題,有的可以技術解決,有的解決不了。技術上通過類似DAO的方式來控制,但這又會產生新的問題,DAO的效率太低就麻煩了。但至少有一點項目方需要做的是透明,資產透明,權限透明,決策透明等等,讓社區看得見。

劉鋒:觀眾提問,有沒有一種方案,在用戶和合約之間建中間件,這個中間件來做安全處理?

餘弦:這個不知道,需要試驗,但我最近有一個想法,大家可以看看:https://firewallx.io/

這個防火牆是構建在EOS主網上的,核心是智能合約實現。以太坊上,ERC777這種偏複雜的也許也可以這樣做,但還是需要試驗。

劉鋒:觀眾提問,代碼的安全問題幾乎不可避免,DeFi是不是需要輔以更成熟的風控機制,來避免大的損失?因為DeFi的魅力是去中心化,是智能合約,但是受攻擊後的修復和自己追討,看起來完全是人和人之間的博弈了。

餘弦:追回是個很難的事,但比較有意思的是,今年開始可能會提高成功率,原因是各國司法、執法流程上開始支持加密貨幣了。

非常感謝參與今晚Math Show #001 活動的“show”友們,也感謝慢霧的創始人餘弦為我們帶來的關於DeFi的安全知識饕餮盛宴,為區塊鏈生態安全貢獻自己的力量。祝慢霧越來越好。

麦子钱包
作者文库