買比特幣 買比特幣
Ctrl+D 買比特幣
ads

DEFI:國家區塊鏈漏洞庫《DeFi網絡安全態勢報告》發布_DEF

Author:

Time:1900/1/1 0:00:00

近期DeFi安全事件頻發,國家區塊鏈漏洞庫收錄的安全事件包括shroom.finance項目增發無限代幣、Unicats項目授權攻擊、Balancer項目攻擊事件、Akropolis和OUSD分別遭遇黑客重入攻擊等。DeFi生態安全威脅風險等級為高。

一、DeFi當前整體發展情況2017年12月,全球首個DeFi項目Maker正式上線。今年以來,DeFi經歷了快速發展,特別是6月到11月間DeFi鎖定資產價值從10億美元增長到了180億美元左右,上漲幅度高達1,700%。高峰時期,項目數量超500個。目前DeFi的主要產品類型有借貸市場、去中心化交易所、衍生品、支付網絡、代幣化資產等。此外,根據用途及代幣特性,DeFi還有基礎設施、數據服務、錢包以及穩定幣等品類。

圖1DeFi主要項目類型總鎖定價值占比

DeFi項目快速發展,圍繞DeFi的各類安全事件也開始頻繁發生。

二、DeFi安全現狀DeFi在各鏈平臺的安全狀況國家區塊鏈漏洞庫對今年以來的DeFi安全事件統計,82.61%安全事件發生在以太坊上。波場區塊鏈占比6.52%,EOS區塊鏈占比4.35%,其他區塊鏈占比6.52%。

圖2各類區塊鏈上的DeFi安全事件占比

DeFi項目的安全問題1、無限增發問題無限增發是指智能合約中存在可以非法調用增發函數的漏洞,導致攻擊者可以進行隨意發幣的操作過程。

蘇州、廣州、武漢、鄭州、昆明獲批建設國家區塊鏈發展先導區:9月9日消息,據湖北省經濟和信息化廳公示信息顯示,近日,工信部正式復函湖北省經信廳,支持武漢市創建國家區塊鏈發展先導區。目前,蘇州、廣州、武漢、鄭州、昆明等五個城市獲批建設國家區塊鏈發展先導區。[2022/9/9 13:18:41]

DeFi項目方通過添加minter權限,即可進行增發代幣操作。此外,也存在本該擁有鑄幣權限的治理合約地址,被替換成項目方所持外部地址的情況,這樣使得項目方可以無限鑄幣。還有些項目方沒寫時間鎖,導致增幣不受時間限制,可以無限增幣。例如,DeFi項目shroom.finance因為沒有設置時間鎖定,導致代幣無限增發。

2、授權攻擊問題授權攻擊是指攻擊者利用合約邏輯漏洞獲得其他用戶授權過的合約權限,對用戶的代幣進行隨意轉賬。

投資者參與DeFi項目時,為了方便,通常會被要求將全部代幣授權給合約地址,以避免用戶在之后的操作中反復授權,例如用戶有1,000萬某代幣,但每次合約進行轉賬的時候用不了1,000萬,這樣的話,每次合約轉賬都需要用戶簽名,如果在最開始就把1,000萬授權給合約地址,那就可以避免不必要的重復操作。但如有惡意者利用合約權限,調用ERC20代幣中存在的transferFrom函數實施代理轉賬。那么用戶錢包中的所有代幣都能被攻擊者隨意操作。在詐騙項目Unicats中,項目方正是留下了這樣的可以越過判斷條件的權限,相當于地址白名單,使其可利用合約身份發起交易,恣意盜取用戶的資產。

海南:建設國家區塊鏈技術和產業創新發展基地:12月28日消息,《海南省創建國家區塊鏈試驗區實施方案》(以下簡稱《實施方案》)新聞發布會28日在海口舉行。記者從會上獲悉,海南將打造“兩園多點”發展格局,以海南生態軟件園和海口復興城作為產業集聚區,建設國家區塊鏈技術和產業創新發展基地。

《實施方案》明確提出,海南省創建國家區塊鏈試驗區的總體思路,是圍繞網絡強國戰略部署,推動建設先進的區塊鏈產業體系,打通區塊鏈創新鏈、應用鏈、價值鏈,將海南打造成為國內領先、國際一流的區塊鏈技術創新高地、應用高地、人才高地。[2021/12/28 8:09:57]

圖3攻擊代碼部分截圖

從目前情況看,幾乎所有的項目方在前端或者其他地方,會默認設置用戶授權的額度是最大。而有些合約在調用其他合約的時候,也會需要給合約授權,但是他們往往使用的是使用多少授權多少的方式。因此,作為投資者,在DeFi項目的授權問題上都必須保持高度警惕,以免墜入攻擊者的“陷阱”。

3、套利問題套利是通過同時購買和出售同種虛擬數字貨幣資產來獲得利潤的方式,它利用了同一虛擬數字貨幣資產在不同交易所定價的不同的現象,特別是在虛擬數字貨幣資產發行的開始階段,在不同交易所之間流動性變化很大,導致有很多可以利用交易所之間的價格差來套利賺取收益的機會。

這類問題主要出現在業務復雜程度較高的DeFi項目上。例如,Balancer項目的攻擊事件。攻擊者通過組合利用“閃電貸”、通縮貨幣的特性,以及Balancer代幣池的“乘積恒定”規則,使用通縮代幣STA和“閃電貸”構造出只有1單位STA的特殊情況。當池中只有1單位STA和其他代幣時,僅需1單位STA就可以兌換價值較高的其它代幣。加之,STA具有通縮特性,即轉賬時會銷毀部分代幣,但因為1單位STA是最小值,當轉賬1單位STA時也會銷毀1單位STA,這就使得池中STA數量不變。攻擊者反復進行此操作,便可掏空資金池。如下圖:

國投福州資源入選國家區塊鏈創新應用試點名單:12月23日消息,近日,國投(福建福州)城市資源循環利用有限公司(以下簡稱國投福州資源)入選中央網信辦、中央宣傳部、國務院辦公廳等17部委聯合發布的國家區塊鏈創新應用試點名單(目前已進入公示階段),成為福建省和再生資源行業唯一一家入選國家“區塊鏈+制造”特色領域的試點企業。(國投福建資源)[2021/12/23 7:59:03]

圖4攻擊流程

4、重入攻擊重入攻擊是指合約代碼在執行回調函數時被攻擊者劫持,導致本該調用的回調函數被替換為惡意合約地址,使得攻擊者能再次調用該函數,例如,本該進行一次轉賬的函數被兩次調用,這就使得攻擊者獲得兩次收益。

最近發生的DeFi協議Akropolis遭到了黑客重入攻擊事件,通過分析,本次攻擊主要是由于合約未進行參數校驗以及未對重入攻擊進行防范所導致。

攻擊者首先將自己的惡意合約地址作為參數傳入函數deposit(),傳入的位置為代幣地址的參數位置。這樣就將導致函數在執行代幣的safetransferFrom()函數時,調用的是攻擊者的惡意合約。攻擊流程分為如下幾個步驟進行:

1.deposit()函數首先執行depositToProtocol()函數,而depositToProtocol()函數里存在一個被惡意劫持的safeTransferFrom()函數,所以這一步將執行攻擊合約。

招商銀行“開放許可鏈”正式接入國家區塊鏈基礎設施“星火·鏈網”:2021年2月,招商銀行“開放許可鏈”平臺全面接入國家級區塊鏈與工業互聯網協同創新新型基礎設施——“星火·鏈網”,成為首家接入的金融機構。“開放許可鏈”是招商銀行對于區塊鏈技術的創新實踐之一,是由招商銀行牽頭,多家單位共同建設的一個安全、穩定、開放、易用的金融行業鏈,為用戶提供從業務需求到商業落地的一站式解決方案及配套服務。目前開放許可鏈上超過15個合作方運行近20個節點,承載20多個金融應用。

下一步,中國信息通信研究院將與招商銀行共同推動“星火·鏈網”數字身份體系的貫徹落實,推動骨干節點建設,推進行業鏈建設;推動區塊鏈應用創新與場景落地,打造行業性鏈網產業應用創新平臺、跨區域鏈網產業應用創新集群;提高行業性區塊鏈服務能力,打造數字化轉型發展的示范試點。[2021/3/8 18:25:56]

2.在攻擊合約中攻擊者再次調用了deposit()函數,而這次傳入的參數為正常代幣地址,本次調用攻擊者存入了真實的DAI進行正常存幣操作。

3.代碼中可以看到,mint函數之前進行了一個余額相差計算,鑄幣即是根據這個差值來計算的,而本次存入真實DAI使得余額增加,所以本次攻擊者將會獲得與存入DAI等價的poolTokens。

4.惡意合約執行完畢后,正常合約將繼續執行depositToProtocol()函數之后的代碼。

聲音 | 伊朗央行首席執行官:伊朗欲開發國家區塊鏈平臺:8月27日消息,伊朗中央銀行執行機構的首席執行官Aboutaleb Najafi表示:在銀行、私營部門和所有其他利益相關者的幫助下,我們希望為銀行創建一個區塊鏈平臺。他在一個關于區塊鏈技術的會議上說,國家區塊鏈將降低伊朗人民小額金融交易的成本,并將允許建立一個涉及伊朗及其盟友的轉賬網絡。[2018/8/27]

5.由于之前攻擊者確實存入了DAI,所以本次攻擊者將會再次獲得與存入DAI等價的poolTokens,實現了資產翻倍。

攻擊者正是使用了這一系列方法,對合約發起了多次攻擊,最終獲利200多萬的DAI。

圖5攻擊流程

再比如,最近發生的OUSD遭重入攻擊事件,攻擊者利用重入攻擊與彈性供應調整來達到攻擊目的。本次攻擊,攻擊者通過dYdX閃電貸貸出7萬枚ETH,并將ETH兌換成了相應的USDT和DAI。

1.攻擊者先向Vault中轉入750萬的USDT,從而使自己在Vault中的價值占比達到50%以上。

2.調用合約中的mintMultiple()函數進行鑄幣,并將2,050萬枚DAI與惡意合約假冒的另一種代幣作為參數傳入,函數正常接收到2,050萬枚DAI,在接收另一種代幣時其實調用的是攻擊者的惡意合約,攻擊者在攻擊合約中再次存入2,000枚USDT進行鑄幣,其目的是為了觸發rebase()調用。

3.因為正常合約是轉賬之后,會進行資產結算,更新資產總價值,然后通過rebase()進行分配,但此時合約被劫持,合約還未將這2,050萬的DAI算入Vault資產總價值,所以在進行rebase()的時候,會將這2,050萬枚DAI全部當作收益進行分配。

4.由于攻擊者在Vault中的價值占比超過50%,所以攻擊者會在沒有任何付出的情況下分配到超1,025萬的DAI,之后合約正常執行,攻擊者獲得由oUSD.mint鑄的OUSD代幣,其價值與存入DAI相等。

最終,攻擊者所有的收獲加起來價值大約為3,327萬枚OUSD。最后,攻擊者贖回之前存入的代幣,并將獲得的代幣歸還閃電貸。

導致DeFi安全事件的原因國家區塊鏈漏洞庫對DeFi安全事件的主要原因進行分析,具體包括業務邏輯實現漏洞、業務設計缺陷以及項目方跑路、重入攻擊、釣魚詐騙等,詳細原因分類如下圖所示。

圖6導致DeFi安全事件的原因

除此而外,導致DeFi安全事件頻發的另一個原因是,大量“仿盤”項目如雨后春筍般在市場中迅速興起。這些項目普遍存在技術底層薄弱,業務設計不合理等問題,有的更是疑似詐騙的項目。接下來,我們對其中存在的典型問題分析如下:

1、業務邏輯實現錯誤

所謂業務邏輯實現錯誤,是指在寫程序實現需求的時候,因為錯誤的代碼編寫方法導致漏洞存在。在CherryFi項目USDT鎖死事件中,其轉賬邏輯調用了safeTransfer函數進行具體轉賬操作。但是,USDT的轉賬邏輯并沒有返回值,這就導致safeTransfer調用永遠無法成功,導致資金鎖死,用戶因此無法進行USDT轉入和轉出。據了解,CherryFi代碼未經審計。

2、業務設計缺陷

業務設計缺陷,是指在業務設計的過程中考慮不夠完善與嚴謹,而并非是因為代碼編寫問題導致的業務缺陷。在DeFi項目中,此類問題主要體現在交易對相關邏輯或彈性供應機制中,且極易引發惡意套利問題。在Curve項目中,其變量A在進行變化前后的兌換比例如不一致,就會出現套利機會。

圖7代幣聯合曲線

如上圖所示,Curve代幣池中不同代幣余額都要滿足該曲線。為進一步說明這個套利空間的形成過程,可假設TokenX為USDT,TokenY為另一種代幣。用戶在A=1時將持有的USDT和TokenY全部兌換成TokenY,假設兌換前池子中共150USDT,50TokenY,如圖紅點,該點處于藍色曲線上,同時保持150與50的比例,用戶持有50USDT。根據此時的曲線,用戶如果使用50USDT兌換TokenY,則池子里將會有200USDT,為了保證比例處于藍色曲線,則紅點將會移動到黃點,對應比列為200:30,所以50USDT可兌換20TokenY。

假設,A=10時,當前池中余額為200USDT和30TokenY。此時使用持有的20TokenY兌換USDT,這時池中有50TokenY,為了滿足紅色曲線的比列,則黃點會移動到綠點,則池中余額應為140USDT和50TokenY,即使用20TokenY可兌換到60USDT,這樣就獲得了10個USDT的利潤。這就是A在變化前后,形成的套利的空間。

3、代碼錯誤代碼錯誤通常發生在編寫代碼時,因為程序員疏忽大意,導致代碼書寫錯誤。該問題可能對項目帶來毀滅性打擊,例如YAM項目因出現代碼書寫錯誤,在彈性供應計算過程中忘記除以精度,如下圖所示,導致合約保留過多代幣。而治理需要投票,發起一個提案需要提案發起者抵押總代幣的1%才能夠提案成功,如果總代幣數量太多了,那提案所需抵押的代幣量就比較巨大,從而導致沒有人能承擔得起提案所需代幣。最終,項目方不得不因此宣布項目終止。

圖8部分錯誤代碼截圖

最后,隨著DeFi行業的快速發展,越來越多的組合性創新被應用到DeFi項目中,但是人們在進行安全檢測或者安全審計的過程中,往往很難發現組合后的風險。比如,Lendf.me攻擊,項目的業務邏輯、ERC777本身都沒有問題,但是組合起來之后存在重入漏洞。組合性風險的難題仍待區塊鏈安全行業的各個廠商去聯手解決。

三、結語當前DeFi項目仍處于發展初期,各個項目方水平參差不齊,技術條件差異較大。部分DeFi項目,一是未經過專業的代碼安全審計;二是忽視區塊鏈技術特性,只基于傳統金融類中心化系統經驗進行建設;三是部分區塊鏈應用沒有進行真實性核查,存在被不法分子利用數字資產投資、理財等噱頭進行詐騙的風險。部分項目方還存在將地址上的數字資產進行大量轉移的行為,亟需相關方關注。綜上,DeFi生態安全威脅風險等級為高。

Tags:EFIDEFI區塊鏈DEFDeFiatoDeFi Yield Protocol區塊鏈專業學什么課程DEFIT

酷幣下載
ASH:API3 在 11 月 30 日拍賣中受到攻擊,導致拍賣收入損失約 68 萬美元_DASHG

鏈聞消息,預測平臺Gnosis表示,11月30日基于Web3的去中心化API服務API3在MesaDEX上拍賣治理代幣API3的時候發生了一起攻擊事件.

1900/1/1 0:00:00
RIN:在以太坊2.0信標鏈發布后 V神概述了以太坊的下一步_以太坊交易是什么

在成功啟動以太坊2.0階段0之后,以太坊聯合創始人VitalikButerin發布了以太坊下一步計劃的更新路線圖。以太坊2.0的當前發展通常分為多個階段.

1900/1/1 0:00:00
MARK:賢哥懂幣:比特幣 行情分析_MAN

就在昨晚,比特幣突破歷史最高點19875.85美金,時隔多年后新高幣之前多13.85美金。新高出現后很很快跌落,而這個輪回在之前就出現過,我也在昨晚的六點左右提到往下看空.

1900/1/1 0:00:00
BPT:關于支持BUX Platform Token (BPT)更名為BUX Token (BUX)的公告_ONEBTC

親愛的庫幣用戶, 庫幣支持BUXPlatformToken(BPT)更名為BUXToken(BUX)的計劃,并即將啟動BUX升級換幣的工作.

1900/1/1 0:00:00
比特幣價格:金色硬核 | BTC價格真由華爾街推動嗎?從小時數據看_BANK

金色財經近期推出金色硬核欄目,為讀者提供熱門項目介紹或者深度解讀。近期很多投資者認為是這一輪比特幣牛市是華爾街機構牛.

1900/1/1 0:00:00
比特幣:比特幣開源開發非營利組織 Brink 迎來首位開發者 Gloria Zhao_TAL

鏈聞消息,比特幣開源開發非營利組織Brink公布其首位比特幣開發人員GloriaZhao。Gloria將于2021年1月全職加入Brink致力于比特幣協議的開源開發,其在Brink的第一個項目是.

1900/1/1 0:00:00
ads