2022 年,區塊鏈行業迎來新的發展時期,但各類安全風險也在不斷升級。成都鏈安新推出的 《安全研究季報》欄目,將為大家盤點每季度全球區塊鏈安全態勢。今天,跟著我們一起來回顧,2022 年 Q1 區塊鏈安全生態都發生了什麼。

原用標題:成都鏈安獨家| 2022 年 Q1 全球區塊鏈安全生態報告,攻擊類安全事件造成的損失高達 12 億美元

封面: Photo by h heyerlein on Unsplash

2022 年 Q1 區塊鏈安全生態概覽

安全事件造成的損失高達約 12 億美元

2022 年第一季度,根據成都鏈安【鏈必應-區塊鏈安全態勢感知平台】監測到的數據統計,攻擊類安全事件造成的損失高達約 12 億美元,較去年同期(2021 年 Q1)的 1.3 億美元上漲約 9 倍。同時也比 2021 年的任何一個季度損失的金額都要高。

2022 年 3 月,Ronin 攻擊事件造成 6.25 億美元資金被盜,超越 2021 年 8 月 Poly Network 被攻擊的 6.1 億美元,登上 Defi 黑客攻擊損失榜第一位。當然,不是每個項目都能像 Poly Network 一樣能夠追回資金。截止本報告撰寫時(4 月),Ronin 的黑客依舊在分批次進行洗錢。

擴展閱讀:

超 6 億美元資金被盜!Ronin 跨鏈橋被攻擊事件簡析

成都鏈安關於 Poly Network 被攻擊事件全解析

從鏈平台來看

Ethereum 和 BNB 依舊是被攻擊頻次最高的兩條鏈,但高攻擊頻次並不意味著高損失金額。2022 年第一季度,我們監測到 Solana 鏈典型攻擊事件 2 起,損失金額卻高達 3 億 7400 萬美元,遠遠多於 BNB Chain 上的損失。

從資金流向來看

80% 的情況下,黑客都會最終將盜取資金轉入 Tornado.Cash 進行混幣。有 10% 的情況,黑客會將資金暫時留在自己的地址,有時要等待幾個月,甚至幾年才對贓款進行轉移。有少部分黑客會主動歸還盜取資金。

從攻擊手法來看

合約漏洞利用和閃電貸攻擊是黑客最常使用的手段。50% 的攻擊手法為合約漏洞利用。

從審計情況來看

在被攻擊的項目中,70% 的項目經過了第三方安全公司的審計。然而在剩餘 30% 未經審計的項目中,因攻擊事件遭受的損失卻佔了整個損失金額的 60% 以上。

從項目類型來看

DEFI 項目依舊是黑客攻擊的熱點領域,佔了總共被攻擊項目數量的 60%。而跨鏈橋雖然被攻擊的次數不多,但涉及的金額卻巨大。

Q1 發生典型攻擊事件超 30 起跨鏈橋類項目損失慘重

2022 年第一季度,區塊鏈領域共發生典型安全事件約 30 起。總損失金額約為 12 億美元,與去年同期相比增長了 823%。

在前 20 排名里,損失金額最高的 Ronin 為 6.25 億,約是金額最低的 Build Finance(112 萬美元)的 558 倍。

從統計圖表可以看到,Ronin 和 Wormhole 兩個項目的損失金額達到了 9 億 5000 萬美元,佔 2022 年 Q1 總損失金額的 80%。值得注意的是,這兩者均為跨鏈橋類項目。

被攻擊項目類型方面

DeFi 仍為黑客攻擊的重點領域

2022 年第一季度,區塊鏈領域,DeFi 項目仍為黑客攻擊的重點領域,共發生 19 起安全事件,約 60% 的攻擊發生在 DeFi 領域。

此外,針對 NFT 的攻擊事件在 2022 年第一季度有所上升,跨鏈橋項目被攻擊了 4 次,造成的損失卻高達 9 億 5000 萬美元,占到 2022 年一季度損失金額的 80%,跨鏈橋安全事件頻發,涉及金額巨大。

鏈平台損失金額方面

Ethereum 損失金額佔比最高

2022 年第一季度,Ethereum 和 Solana 鏈上攻擊損失金額排名前 2,分別為 6 億 5448 萬和 3 億 7400 萬美元。

Ethereum 被攻擊的頻次也是最多的,占到了總頻次的 45%;排名第二的是 BNB Chain,佔比 19%。

Solana 鏈上的兩次攻擊事件都造成了巨額損失:Wormhole 損失 3 億 2600 萬美元,Cashio 損失 4800 萬美元。兩者的攻擊手法同為合約漏洞利用

鏈平台損失金額佔比

此外,一些 TVL 排名靠前的公鏈在 2022 年第一季度未檢測到重大安全事件,如:Terra、Avalanche、Tron 等。

攻擊手法分析

合約漏洞利用和閃電貸最常見

2022 年第一季度,區塊鏈安全生態領域,約 50% 的攻擊方式為合約漏洞利用,24% 的攻擊方式為閃電貸。

有 12% 的攻擊為私鑰洩露、釣魚攻擊和社會工程學攻擊。此類攻擊源於項目方沒有保管好私鑰或警惕性不足。

被黑客利用的合約漏洞中,最常見的漏洞為重入漏洞(30%),其次分別為業務邏輯不當(24%)call 注入攻擊(18%)驗證不當或不足(18%);其中絕大部分漏洞都可以通過安全審計儘早發現和修復。

典型安全事件分析

案例一:TreasureDAO 被攻擊事件

背景:

3 月 3 日,TreasureDAO NFT 交易市場被曝發現漏洞,導致 100 多個 NFT 被盜。然而在事件發生幾小時後,攻擊者卻開始歸還被盜 NFT。

詳情:

交易發起者通過合約的 buyItem 函數傳入了數值為 0 的_quantity 參數,從而無需費用就能購買 TokenID 為 5490 的 ERC-721 代幣。

項目合約的 buyItem 函數代碼

從代碼上來看,合約的 buyItem 函數在傳入_quantity 參數後,並沒有做代幣類型判斷,直接將_quantity 與_pricePerItem 相乘計算出了 totalPrice,因此 safeTransferFrom 函數可以在 ERC-20 代幣支付數額只有 0 的情況下,調用合約的 buyItem 函數來進行代幣購買。

然而在調用 buyItem 函數時,函數只對購買代幣類型進行了判斷,並沒有對代幣數量進行非 0 判斷,導致 ERC-721 類型的代幣可以在無視_quantity 數值的情況下直接購買,從而實現了漏洞攻擊。

建議:

本次安全事件主要原因是 ERC-1155 代幣和 ERC-721 代幣混用導致的邏輯混亂,ERC-721 代幣並沒有數量的概念,但是合約卻使用了數量來計算代幣購買價格,最後在代幣轉賬時也沒有進行分類討論。

建議開發者在開發多種代幣的銷售販賣合約時,需要根據不同代幣的特性來進行不同情況的業務邏輯設計。

擴展閱讀:怪事?盜了又歸還?TreasureDAO 安全事件分析

案例二:Build Finance 項目遭遇治理攻擊

背景:

2 月 15 日,DAO 組織 Build Finance 表示遭遇惡意治理攻擊,攻擊者通過獲得足夠多的投票成功了控制其 Token 合約。

詳情:

在 2020 年 9 月 4 日的一筆交易中,Build Finance 合約創建者通過 setGovernance 函數將治理權限轉移。通過查找內部的 Storage,發現權限轉移給了 0x38bce4b 地址。繼續跟進 0x38bce4b 地址,發現是一個 Timelock 合約,而合約中可以調用 setGovernance 函數的只有 executeTransaction 函數。

Build Finance 被攻擊流程

繼續跟進發現,在 2021 年 1 月 25 日,0x38bce4b 地址調用 executeTransaction 函數將權限轉移到了 0x5a6ebe 地址。2022 年 2 月 11 日,由於投票設置的閾值較低導致提案通過,0x5a6ebe 地址的治理權限變更為了 0xdcc8A38A 地址。在獲取到治理權限後,攻擊者惡意鑄幣並耗盡了交易池的流動性。

建議:

DAO 合約應該設置合適的投票閾值,實現真正的去中心化治理,避免很少的投票數量就使得提案通過並成功執行,建議可以參考 openzeppelin 官方提供的治理合約的實現。

擴展閱讀:Build Finance 遭遇惡意治理接管,被洗劫一空!

案例三:Ronin6 億美元盜幣案 

背景:

3 月 23 日,Sky Mavis 的 Ronin 驗證器節點和 Axie DAO 驗證器節點遭到破壞,攻擊者使用被黑的私鑰來偽造假提款,獲利約 6.25 億美元。而 Ronin Network 直到 3 月 29 日才發現自己遭受到了攻擊。

詳情:

Sky Mavis 的 Ronin 鏈目前由 9 個驗證節點組成。為了識別存款事件或取款事件,需要九個驗證者簽名中的五個。攻擊者設法控制了 Sky Mavis 的四個 Ronin 驗證器和一個由 Axie DAO 運行的第三方驗證器。此後 Ronin 官方表示,所有證據都表明這次攻擊或與社會工程學相關。

Ronin 黑客洗錢過程(更新至 3 月 30 日)

建議:

1、注意簽名服務器的安全性;

2、簽名服務在相關業務下線時,應及時更新策略,關閉對應的服務模塊,並且可以考慮棄用對應的簽名賬戶地址;

3、多簽驗證時,多簽服務之間應該邏輯隔離,獨立對簽名內容進行驗證,不能出現部分驗證者能夠直接請求其它驗證者進行簽名而不用經過驗證的情況;

4、項目方應實時監控項目資金異常情況。

被盜資金流向分析

Tornado.Cash 或為黑客洗錢慣用途徑

80% 的情況裡,黑客在得手後,會立刻或幾天內將盜取資金轉入 Tornado.Cash 進行混幣。

10% 的情況裡,黑客會暫時將贓款留在自己地址,等待幾個月至幾年才將資金轉出。例如去年 12 月被盜的交易所 AscendEX,黑客等到今年 2 月、3 月才開始進行分批次洗錢。而今年 Ronin 的攻擊者目前依然在進行頻繁的洗錢操作。

有少部分黑客會歸還盜取資金。Cashio 的攻擊者在盜取 4800 萬美元的資金後,公開留言表示將向價值在 10 萬美元以下賬戶進行退還,並聲稱 “我的目的只是從不需要的人那裡拿錢,而不是從需要的人那裡拿錢”。

目前 Tornado.cash 依舊為黑客慣用的洗錢途徑。

項目審計情況分析

30% 未經審計的項目損失金額佔總量的 60%

項目審計情況:

70% 的被攻擊項目經過了第三方安全公司的審計;

30% 未審計的項目,損失金額達 7.2 億美元,佔第一季度總損失金額的 60%;

項目上線之前的審計依舊重要。在未審計的項目中,50% 的攻擊手法都為合約漏洞利用。因此,儘早審計和及時修復代碼漏洞,可以避免上線後項目被攻擊造成的嚴重損失。

項目審計情況及總損失金額

2022 年 Q1 結語

安全事件頻發,涉及金額大幅增加

2022 年第一季度,區塊鏈領域攻擊類安全事件造成的損失高達約 12 億美元,比 2021 年的任何一個季度損失的金額都要高。跨鏈橋項目被盜取金額巨大,DeFi 項目被攻擊頻次最高,這兩個領域今後或許也是黑客重點盯上的攻擊目標。

項目方應及時關注資金異常情況,成都鏈安 【鏈必應-區塊鏈安全態勢感知平台】可以讓項目方和用戶及時發現風險交易,從而快速採取措施。例如立刻暫停相關服務,或告知用戶取消授權等,避免後續更大的損失。

項目安全審計依舊重要,約 50% 的攻擊方式為合約漏洞利用,這其中絕大多數漏洞都可以通過安全審計及早發現和修復。

免責聲明:作為區塊鏈信息平台,本站所發布文章僅代表作者及嘉賓個人觀點,與 Web3Caff 立場無關。本文內容僅用於信息分享,均不構成任何投資建議及要約,並請您遵守所在國家或地區的相關法律法規。