背景概述
2022年8月3日,Solana公鏈上發生大規模盜幣事件,大量用戶在不知情的情況下被轉移SOL和SPL代幣。慢霧安全團隊第一時間介入分析,并在Slope團隊的邀請下對Slope錢包應用進行分析,分析表明:Slope錢包在2022年6月24日及之后發布的版本存在向第三方應用監控服務發送私鑰或助記詞信息的現象。但從對Slope錢包應用進行調查到現在,無法明確證明此次事件的根源就是Slope錢包的問題,于是慢霧安全團隊開始對Slope的服務器進行分析取證。分析過程
事件發生之后各方的關注點主要聚焦在調查本次事件的根源以及資金的追蹤和挽救的可能性。于是慢霧安全團隊制定相關的計劃,開始從鏈下和鏈上兩個部分著手調查和分析。在事件根源調查這個方向上,慢霧安全團隊重點專注在對Slope服務器的分析取證。這里面有大量且復雜的工作需要推進,也需要有更多明確的證據來解釋這次的大規模盜幣事件的根源。資金追蹤和挽救的可能性這部分工作,慢霧安全團隊主要依靠MistTrack的追蹤分析能力、標簽數據能力并結合情報能力,盡最大的努力識別和追蹤黑客的鏈上行為。并且也和Slope團隊溝通交流挽救的可能性,Slope團隊也在嘗試與黑客溝通希望通過發布漏洞賞金的方式,鼓勵黑客歸還資產,共同維護Solana這個生態的健康發展。本篇僅向社區用戶同步階段性的調查情況,還有很多的分析工作正在進行,并且不斷推進。各方人員不僅是慢霧,還有其他第三方安全團隊,以及一些特殊力量也在努力幫忙調查中,希望這次事件最終能夠有相對明確的結論。注:本文所提到的Sentry服務指的是Slope團隊私有化部署的Sentry服務,并非使用Sentry官方提供的接口和服務。一些疑問點
在同步分析的情況之前,我們先來回答上篇文章的分析過程中的一些疑問點:1.Sentry的服務收集用戶錢包助記詞的行為是否屬于普遍的安全問題?答:Sentry主要用于收集相關應用服務在運行狀態時出現的異常或者錯誤日志信息,在配置錯誤的情況下,可能會收集到預期之外的數據,如:私鑰或助記詞等信息,因此并非普遍存在的安全問題。開發人員在使用第三方應用監控服務切記不能在生成環境中開啟Debug模式。2.Phantom使用了Sentry,那么Phantom錢包會受到影響嗎?答:雖然Phantom使用了第三方應用監控服務但是慢霧安全團隊通過對Phantom錢包歷史各版本的監測,并未明顯發現Sentry上傳私鑰/助記詞的行為。3.SolanaFoundation提供的調研數據顯示本次事件近60%被盜用戶使用Phantom錢包,30%左右地址使用Slope錢包,其余用戶使用TrustWallet等,那這60%被盜用戶被黑的原因是什么呢?答:經過比對發現服務器上的私鑰和助記詞派生出來的地址與受害者地址有交集的有5個ETH地址和1388個Solana地址。目前的調查情況看,還沒有明確的證據能夠解釋另外部分用戶錢包被黑的原因。4.Sentry作為一個使用非常廣泛的服務,會不會是Sentry官方遭遇了入侵?從而導致了定向入侵加密貨幣生態的攻擊?答:目前暫無證據表明Sentry官方遭到了入侵和攻擊,Slope錢包使用的Sentry是內部搭建的服務,因此和官方服務被入侵無直接關系。鏈下分析部分
慢霧:從Multichain流出的資金總額高達2.65億美元,分布在9條鏈:金色財經報道,自7月7日以來,從 Multichain 流出的資金總額高達 2.65 億美元,分布在 Ethereum、BNB Chain、Polygon、Avalanche、Arbitrum、Optimism、Fantom、Cronos、Moonbeam 鏈。其中 6582 萬美元已經被 Circle 和 Tether 凍結,1,296,990.99 ICE(約 162 萬美元) 被 Token 發行方 Burn。流出的資金中,包括:
1)從 Multichain: Old BSC Bridge 轉出的 USDT;
2)從 Multichain: Fantom Bridge 轉出的 USDC、DAI、LINK、UNIDX、USDT、WOO、ICE、CRV、YFI、TUSD、WETH、WBTC;
3)從 Anyswap: Bridge Fantom 轉出的 BIFI;
4)從 Multichain: Moonriver Bridge 轉出的 USDC、USDT、DAI、WBTC;
5)從 MultiChain: Doge Bridge 轉出的 USDC;
6)從 Multichain: Executor 轉出的 DAI、USDC、BTCB、WBTC、WETH、Dai.e、WBTC.e、Bridged USDC、BTC、fUSDT、ETH 等;
7)從被 Etherscan 標記為 Fake_Phishing183873 的 0xe1910...49c53 轉出的 WBTC、USDT、ETH,同時我們認為該標記(Fake Phishing183873)或許是 Etherscan 上的虛假標記,地址可能以前屬于 Multichain 官方賬戶。[2023/7/11 10:48:30]
鏈下部分慢霧安全團隊主要聚焦排查鏈下服務器、相關后臺等被入侵的可能性,工作的重點是對Slope服務器進行外圍服務器資產風險排查,服務器的入侵痕跡排查,Sentry數據庫分析,服務器鏡像分析,DNS劫持的可能性分析。如下是排查和分析的情況:1.外圍服務器資產風險排查
慢霧:警惕 Honeyswap 前端被篡改導致 approvals 到惡意地址風險:據慢霧區消息,Honeyswap官方推特發文,Honeyswap 前端錯誤導致交易到惡意地址 “0xD3888a7E6D6A05c6b031F05DdAF3D3dCaB92FC5B” ,目前官網仍未刪除該惡意地址,請立即停止使用Honeyswap進行交易,到revoke.cash排查是否有approvals 交易到惡意地址,避免不必要的損失。[2022/5/10 3:03:22]
Slope團隊知道Slope錢包回傳助記詞和私鑰信息之后,第一時間就關停了Slope錢包相關的服務。因此Slope錢包相關的服務已經不能通過直接訪問,慢霧安全團隊依靠互聯網搜索引擎等工具對Slope外圍服務器資產進行信息收集,包括slope.finance域名下的子域名和IP等進行模擬滲透測試分析,排查從外圍可能存在的入侵風險點,通過分析和滲透測試并未發現存在可被直接入侵的風險點。2.服務器的入侵痕跡排查
主要對第三方應用監控服務器進行內部排查,包括服務器登錄日志,系統歷史操作命令,可疑進程,可疑網絡連接,可疑系統計劃任務,數據刪除和獲取操作等,服務器內部還有5個Docker服務也進行同樣的入侵痕跡排查。排查發現幾個可疑登錄IP為:113.*.*.*,114.*.*.*,153.*.*.*,這些IP是在06.24之前訪問過第三方應用監控服務的后臺。雖然這發生在回傳私鑰和助記詞的時間之前,但是仍然存在可疑。3.PostgreSQL數據庫分析
由于助記詞和私鑰被Slope錢包的第三方應用監控服務回傳到服務器上,所以慢霧安全團隊也對服務器中可能存在私鑰或助記詞的位置進行了分析,分析發現私鑰或助記詞較大可能會留存在如下位置:Sentry的數據庫表中PostgreSQL的數據庫日志中鏡像磁盤已刪除的數據中Docker運行時的數據文件中在分析過程中發現第三方應用監控服務采用了PostgreSQL數據庫,其中nodestore_node表的data字段里發現存在第三方應用監控服務采集的私鑰和助記詞數據。經過分析調查得到以下信息:私鑰和助記詞數據內容在nodestore_node表的數據庫記錄時間為2022.7.28-2022.8.5。慢霧安全團隊通過對數據解密和分析,發現私鑰或助記詞數據內容中記錄的最早是2022.6.29上傳的數據,也就是說Sentry在6月29號采集的數據延遲了一個月的時間才在2022.7.28開始陸續被存儲到了PostgreSQL數據庫的nodestore_node表,但是這部分延時的數據占較少,大部分的私鑰和助記詞采集的時間是集中在2022.07.28-2022.08.05。進一步排查數據庫操作日志,發現在7.28之前nodestore_node表存在SQL語句執行失敗的記錄,原因是鍵值沖突,經過深入排查和溝通發現是由于Kafka服務出錯導致沒有進行數據寫入。由于部分數據在日志記錄和數據恢復的時候暫時不能恢復出完整的數據,需要進一步對數據進行修復,因此優先解密可以被完整恢復的數據,解密出來的地址數量為189個ETH地址和4914個Solana地址,有5073組助記詞,而鏈上黑客事件的錢包地址有42個ETH地址和9231個Solana地址,經過比對發現服務器上的私鑰和助記詞派生出來的地址與受害者有交集的地址有5個ETH地址和1388個Solana地址。在數據庫操作日志中還發現另一個內部測試的應用com.slope.game在3月份也存在私鑰和助記詞的上報數據,該內部測試應用并未對外發布。4.服務器鏡像分析
慢霧:警惕 Terra 鏈上項目被惡意廣告投放釣魚風險:據慢霧區情報,近期 Terra 鏈上部分用戶的資產被惡意轉出。慢霧安全團隊發現從 4 月 12 日開始至 4 月 21 日約有 52 個地址中的資金被惡意轉出至 terra1fz57nt6t3nnxel6q77wsmxxdesn7rgy0h27x30 中,當前總損失約 431 萬美金。
經過慢霧安全追蹤分析確認,此次攻擊為批量谷歌關鍵詞廣告投放釣魚,用戶在谷歌搜索如:astroport,nexus protocol,anchor protocol 等這些知名的 Terra 項目,谷歌結果頁第一條看似正常的廣告鏈接(顯示的域名甚至是一樣的)實為釣魚網站。 一旦用戶不注意訪問此釣魚網站,點擊連接錢包時,釣魚網站會提醒直接輸入助記詞,一旦用戶輸入并點擊提交,資產將會被攻擊者盜取。
慢霧安全團隊建議 Terra 鏈上用戶保持警惕不要隨便點擊谷歌搜索出來的鏈接或點擊來歷不明的鏈接,減少使用常用錢包進行非必要的操作,避免不必要的資損。[2022/4/21 14:37:55]
慢霧安全團隊對Sentry的云服務器的鏡像進行分析,并對服務器磁盤已刪除的數據進行恢復,并在恢復后的數據中發現了私鑰和助記詞信息。5.DNS劫持的可能性分析
慢霧安全團隊通過各方的能力以及全球情報資源,包括對DNS解析數據查詢和分析,目前暫無明確證據能夠證明域名o7e.slope.finance曾經發生過DNS劫持事件。鏈下調查和分析的階段性結論:就現階段的調查和分析的情況看,未發現外圍服務器可以直接被入侵的風險點;未發現服務器被入侵的痕跡但是對可疑IP仍需要繼續調查;DNS劫持的可能性較小;已在數據庫表、數據庫日志文件、磁盤已刪除文件恢復后的數據中發現了私鑰和助記詞信息。鏈上分析部分
慢霧:Avalanche鏈上Zabu Finance被黑簡析:據慢霧區情報,9月12日,Avalanche上Zabu Finance項目遭受閃電貸攻擊,慢霧安全團隊進行分析后以簡訊的形式分享給大家參考:
1.攻擊者首先創建兩個攻擊合約,隨后通過攻擊合約1在Pangolin將WAVAX兌換成SPORE代幣,并將獲得的SPORE代幣抵押至ZABUFarm合約中,為后續獲取ZABU代幣獎勵做準備。
2.攻擊者通過攻擊合約2從Pangolin閃電貸借出SPORE代幣,隨后開始不斷的使用SPORE代幣在ZABUFarm合約中進行`抵押/提現`操作。由于SPORE代幣在轉賬過程中需要收取一定的手續費(SPORE合約收取),而ZABUFarm合約實際接收到的SPORE代幣數量是小于攻擊者傳入的抵押數量的。分析中我們注意到ZABUFarm合約在用戶抵押時會直接記錄用戶傳入的抵押數量,而不是記錄合約實際收到的代幣數量,但ZABUFarm合約在用戶提現時允許用戶全部提取用戶抵押時合約記錄的抵押數量。這就導致了攻擊者在抵押時ZABUFarm合約實際接收到的SPORE代幣數量小于攻擊者在提現時ZABUFarm合約轉出給攻擊者的代幣數量。
3.攻擊者正是利用了ZABUFarm合約與SPORE代幣兼容性問題導致的記賬缺陷,從而不斷通過`抵押/提現`操作將ZABUFarm合約中的SPORE資金消耗至一個極低的數值。而ZABUFarm合約的抵押獎勵正是通過累積的區塊獎勵除合約中抵押的SPORE代幣總量參與計算的,因此當ZABUFarm合約中的SPORE代幣總量降低到一個極低的數值時無疑會計算出一個極大的獎勵數值。
4.攻擊者通過先前已在ZABUFarm中有進行抵押的攻擊合約1獲取了大量的ZABU代幣獎勵,隨后便對ZABU代幣進行了拋售。
此次攻擊是由于ZabuFinance的抵押模型與SPORE代幣不兼容導致的,此類問題導致的攻擊已經發生的多起,慢霧安全團隊建議:項目抵押模型在對接通縮型代幣時應記錄用戶在轉賬前后合約實際的代幣變化,而不是依賴于用戶傳入的抵押代幣數量。[2021/9/12 23:19:21]
鏈上部分主要聚焦于風險資金評估、被盜資金轉移和黑客痕跡分析,重點梳理分析了以下幾點內容:1.風險資金評估
慢霧:Cover協議被黑問題出在rewardWriteoff具體計算參數變化導致差值:2020年12月29日,慢霧安全團隊對整個Cover協議被攻擊流程進行了簡要分析。
1.在Cover協議的Blacksmith合約中,用戶可以通過deposit函數抵押BPT代幣;
2.攻擊者在第一次進行deposit-withdraw后將通過updatePool函數來更新池子,并使用accRewardsPerToken來記錄累計獎勵;
3.之后將通過_claimCoverRewards函數來分配獎勵并使用rewardWriteoff參數進行記錄;
4.在攻擊者第一次withdraw后還留有一小部分的BPT進行抵押;
5.此時攻擊者將第二次進行deposit,并通過claimRewards提取獎勵;
6.問題出在rewardWriteoff的具體計算,在攻擊者第二次進行deposit-claimRewards時取的Pool值定義為memory,此時memory中獲取的Pool是攻擊者第一次withdraw進行updatePool時更新的值;
7.由于memory中獲取的Pool值是舊的,其對應記錄的accRewardsPerToken也是舊的會賦值到miner;
8.之后再進行新的一次updatePool時,由于攻擊者在第一次進行withdraw后池子中的lpTotal已經變小,所以最后獲得的accRewardsPerToken將變大;
9.此時攻擊者被賦值的accRewardsPerToken是舊的是一個較小值,在進行rewardWriteoff計算時獲得的值也將偏小,但攻擊者在進行claimRewards時用的卻是池子更新后的accRewardsPerToken值;
10.因此在進行具體獎勵計算時由于這個新舊參數之前差值,會導致計算出一個偏大的數值;
11.所以最后在根據計算結果給攻擊者鑄造獎勵時就會額外鑄造出更多的COVER代幣,導致COVER代幣增發。具體accRewardsPerToken參數差值變化如圖所示。[2020/12/29 15:58:07]
根據Solana鏈、ETH鏈、BSC鏈的被盜資金情況,慢霧安全團隊將風險資金分為以下兩類:風險資金:黑客具有地址權限的資金。疑似風險資金:黑客可能具有地址權限的資金。根據以下地址列表進行風險資金評估:被盜地址助記詞映射到其他鏈的地址被盜地址助記詞通過派生路徑推導出來的地址排除風險資金地址列表,根據以下地址列表進行疑似風險資金評估:Slope服務器上存在助記詞/私鑰記錄的地址Slope服務器上存在的助記詞映射到其他鏈的地址Slope服務器上存在的助記詞通過派生路徑推導出來的地址未發現大額可轉移風險的資金和可能存在風險的資金。2.被盜資金統計
為了避免一些垃圾幣對被盜資金的影響,我們在統計過程中只統計主流幣種的被盜資金:Solana鏈:SOL、USDC、USDT、BTC和ETH。ETH鏈:ETH、USDT、USDC和PAXG。被盜幣種價值取被盜當日價格。1SOL=$38.541BTC=$22,846.511ETH=$1,618.871PAXG=$1,759.641BNB=$298.36
對Slope服務器上的已解密的私鑰和助記詞對應派生出來的地址與鏈上統計的受害者地址進行分析,有交集的地址有5個ETH地址和1388個Solana地址,對這些存在交集的地址做被盜資金統計如下,此部分被盜資金占到總被盜資金的31.42%。
3.資金轉移分析
Solana鏈:資金截止發文時間未進一步轉移。ETH鏈:21,801USDT轉移到個人錢包地址。慢霧安全團隊正在與各方溝通配合努力追查黑客的身份。剩余大部分資金兌換為ETH后轉移到Tornado.Cash。
BSC鏈:資金截止發文時間未進一步轉移。4.黑客鏈上時間線分析
根據黑客鏈上行為梳理出時間線如下圖:
5.黑客痕跡分析
黑客地址列表如下:
疑似黑客地址列表如下:
第一筆轉入Solana鏈黑客錢包1、2、3和4的鏈上第一筆轉入交易都是來自Solana鏈疑似黑客錢包的0.1SOL的轉賬。根據對鏈上痕跡的分析,評估Solana鏈疑似黑客錢包可能是黑客地址,也存在更大可能是受害者地址。黑客洗錢過程中使用工具TransitSwapUniswapMetaMaskSwap黑客洗錢變現方式轉移到疑似OTC個人錢包地址。轉移到Tornado.Cash。黑客地址與交易所/平臺的關聯直接關聯:TRON鏈,黑客8月5日存款USDT到Binance存款地址:TE4bkS2PYqWxijgh5eqEz9A5jLn7HcS6fn存款交易:b6615bf10b2e619edc9315a08f89732664adc9d385c980f77caa6e82872fe376TRON鏈,黑客8月5日從Binance提款TRX提款交易:0e012643a7db1b8c5d1f27447b16e313d4b3f89efaa22b3661188fe399cd2d0eETH鏈,黑客8月5日從Binance提款ETH提款交易:0xd035e009173e968d8f72de783f02655009d6f85ef906121e5b99b496a10283ddETH鏈,黑客8月8日從Binance提款USDC提款交易:0xff60f24f8ebd874a1e5da8eae44583af554af9a109a9bd7420da048f12c83cdcETH鏈,黑客8月10日從Binance提款USDC提款交易:0xc861c40c0e53f7e28a6f78ec9584bfb7722cec51843ddf714b9c10fc0f311806TRON鏈,黑客8月10日從Binance提款USDT提款交易:10c4186e4d95fb2e4a1a31a18f750a39c0f803d7f5768108d6f219d3c2a02d26間接關聯:Solana鏈疑似黑客錢包1月8日從Binance提款SOL提款交易:668jpJec7hiiuzGDzj4VQKSsMWpSnbzt7BLMGWQmrGvHVQQbNGc3i1g8dCj2F5EAxFT8oDG5xWPAeQUMEMBTjhZsSolana鏈疑似黑客錢包存在與SolrazrIDOprogram交互的鏈上痕跡交易:2LxLhL7oAiTyHGrAXCZEJyazQQLM7veaKvqUZL6iPkonL4wPLHcwV66MFX3ERyWvJtdd2wFdKfgKUuT1oAv2XepK疑似OTC個人錢包地址與Binance、Kucoin和OKX多個交易所存在存款和提款關系
疑似OTC個人錢包地址的情報關聯根據慢霧獲取到的相關情報,疑似OTC個人錢包地址與國內多個案件洗錢有關,其中包括電話詐騙案、USDT被盜案和TRC20被盜案等。附-鏈上分析數據源黑客Solana鏈交易記錄匯總表Sentry回傳問題導致可能暴露的Slope地址被盜交易表原地址
BoredApes和CryptoPunks的爆火為其收藏者創造了大量財富。NFT已現在擠進數十億美元的資產類別。問題在于,如何讓你手頭上的NFT獲得流動性。這是一場孤注一擲的游戲.
1900/1/1 0:00:00讓加密貨幣和區塊鏈應用程序對普通用戶可用的最大挑戰之一是安全性:我們如何防止用戶的資金丟失或被盜?丟失和盜幣是一個嚴重的問題,經常使無辜的區塊鏈用戶損失數千美元.
1900/1/1 0:00:007月28日,隱私計算網絡OasisNetwork開發商OasisLabs宣布與Meta建立合作伙伴關系.
1900/1/1 0:00:00俄烏戰爭是2022年最具黑天鵝性質的事件。戰爭的爆發催生了包括糧食、能源等多重大宗商品的供應危機,而美元在新冠暴虐時期的大放水所帶來的高通脹風險也因此顯現出來.
1900/1/1 0:00:00去中心化自治組織在熊市當中艱難成長,繼續面臨著諸多挑戰。DAO治理目前仍存在明顯的局限性,最近的一個例子是8月19日Fei協議開發背后的實體組成協議之一FeiLabs發起關閉TrideDAO的提.
1900/1/1 0:00:00經Odaily星球日報不完全統計,8月1日-8月7日當周公布的海內外區塊鏈融資事件共30起,較前一周有一定減少;已披露融資總額約為2.7億美元,較前一周有大幅降低.
1900/1/1 0:00:00