安全生產簡析下meerkat跑路事件
一、核心問題
1.AdminUpgradeabilityProxy天然的負面影響一代理的邏輯合約可以被替換
2.AdminUpgradeabilityProxy權限沒有移交timelock一項目方不受時間鎖約束,可以隨意使用1。所說的能力,替換邏輯合約最終項目方無限制地將正常合約替換成了攻擊合約,卷款跑路。
Beosin:SEAMAN合約遭受漏洞攻擊簡析:金色財經報道,根據區塊鏈安全審計公司Beosin旗下Beosin EagleEye 安全風險監控、預警與阻斷平臺監測顯示,2022年11月29日,SEAMAN合約遭受漏洞攻擊。Beosin分析發現是由于SEAMAN合約在每次transfer函數時,都會將SEAMAN代幣兌換為憑證代幣GVC,而SEAMAN代幣和GVC代幣分別處于兩個交易對,導致攻擊者可以利用該函數影響其中一個代幣的價格。
攻擊者首先通過50萬BUSD兌換為GVC代幣,接下來攻擊者調用SEAMAN合約的transfer函數并轉入最小單位的SEAMAN代幣,此時會觸發合約將能使用的SEAMAN代幣兌換為GVC,兌換過程是合約在BUSD-SEAMAN交易對中將SEAMAN代幣兌換為BUSD,接下來在BUSD-GVC交易對中將BUSD兌換為GVC,攻擊者通過多次調用transfer函數觸發_splitlpToken()函數,并且會將GVC分發給lpUser,會消耗BUSD-GVC交易對中GVC的數量,從而抬高了該交易對中GVC的價格。最后攻擊者通過之前兌換的GVC兌換了50.7萬的BUSD,獲利7781 BUSD。Beosin Trace追蹤發現被盜金額仍在攻擊者賬戶(0x49fac69c51a303b4597d09c18bc5e7bf38ecf89c),將持續關注資金走向。[2022/11/29 21:10:04]
二、現場還原(以BUSD池為例)?
Beosin:ULME代幣項目遭受黑客攻擊事件簡析:金色財經報道,10月25日,據Beosin EagleEye 安全預警與監控平臺檢測顯示,ULME代幣項目被黑客攻擊,目前造成50646 BUSD損失,黑客首先利用閃電貸借出BUSD,由于用戶前面給ULME合約授權,攻擊者遍歷了對合約進行授權的地址,然后批量轉出已授權用戶的BUSD到合約中,提高價格ULME價格,然后黑客賣掉之前閃電貸借出的ULME,賺取BUSD,歸還閃電貸獲利離場。Beosin安全團隊建議用戶用戶取消BUSD對ULME合約的授權并及時轉移資金減少損失。[2022/10/25 16:38:21]
1.項目方故意“坦誠”給出合約的timelock轉移權限記錄,展示的確執行了changeAdmin方法移交權限給timelock地址,用于混淆視聽
Grim Finance 被黑簡析:攻擊者通過閃電貸借出 WFTM 與 BTC 代幣:據慢霧區情報,2021 年 12 月 19 日,Fantom 鏈上 Grim Finance 項目遭受攻擊。慢霧安全團隊進行分析后以簡訊的形式分享給大家。
1. 攻擊者通過閃電貸借出 WFTM 與 BTC 代幣,并在 SpiritSwap 中添加流動性獲得 SPIRIT-LP 流動性憑證。
2. 隨后攻擊者通過 Grim Finance 的 GrimBoostVault 合約中的 depositFor 函數進行流動性抵押操作,而 depositFor 允許用戶指定轉入的 token 并通過 safeTransferFrom 將用戶指定的代幣轉入 GrimBoostVault 中,depositFor 會根據用戶轉賬前后本合約與策略池預期接收代幣(預期接收 want 代幣,本次攻擊中應為 SPIRIT-LP)的差值為用戶鑄造抵押憑證。
3. 但由于 depositFor 函數并未檢查用戶指定轉入的 token 的合法性,攻擊者在調用 depositFor 函數時傳入了由攻擊者惡意創建的代幣合約地址。當 GrimBoostVault 通過 safeTransferFrom 函數調用惡意合約的 transferFrom 函數時,惡意合約再次重入調用了 depositFor 函數。攻擊者進行了多次重入并在最后一次轉入真正的 SPIRIT-LP 流動性憑證進行抵押,此操作確保了在重入前后 GrimBoostVault 預期接收代幣的差值存在。隨后 depositFor 函數根據此差值計算并為攻擊者鑄造對應的抵押憑證。
4. 由于攻擊者對 GrimBoostVault 合約重入了多次,因此 GrimBoostVault 合約為攻擊者鑄造了遠多于預期的抵押憑證。攻擊者使用此憑證在 GrimBoostVault 合約中取出了遠多于之前抵押的 SPIRIT-LP 流動性憑證。隨后攻擊者使用此 SPIRIT-LP 流動性憑證移除流動性獲得 WFTM 與 BTC 代幣并歸還閃電貸完成獲利。
此次攻擊是由于 GrimBoostVault 合約的 depositFor 函數未對用戶傳入的 token 的合法性進行檢查且無防重入鎖,導致惡意用戶可以傳入惡意代幣地址對 depositFor 進行重入獲得遠多于預期的抵押憑證。慢霧安全團隊建議:對于用戶傳入的參數應檢查其是否符合預期,對于函數中的外部調用應控制好外部調用帶來的重入攻擊等風險。[2021/12/19 7:49:04]
2.0x7E0c621Ea9F7aFD5b86A50B0942eAee68B04A61Cproxy合約,changeAdmin方法內部調用追蹤到304行,實際寫入key為ADMIN_SLOT,但讀取key卻為ADMIN_SLOT。即O(歐)和0(零)的一個細微差異,讓changeAdmin方法完全失效,從而達到了已經移交權限的假象
三、結論和經驗
1.高度警惕任何包含proxy方式合約的項目,若未經timelock約束,合約有被瞬間替換的風險
2.nevertrust,alwaysverify!不要相信項目方給出的timelock“證據”,對于未經審計的fork項目,務必逐個contract做好與原項目的diff(如果你做到了,就可以躲過meerkat的障眼法)
這位達拉斯小牛隊的老板為NFT熱潮和NBATopShot打下了堅實的基礎,盡管這會給人們帶來風險、危險信號和精神障礙。簡單來說億萬富翁NBA球隊老板馬克·庫班最近無法獲得足夠的NFT捐款.
1900/1/1 0:00:002018年的時候,我們以為Layer2近在眼前。三年過去了,我們卻發現它依舊離“改變區塊鏈”這個目標有著不短的距離.
1900/1/1 0:00:00來源:券商中國 作者:時謙 原標題:《比特幣又瘋了,俄羅斯軍方竟成幕后玩家?價格漲破56000美元.
1900/1/1 0:00:00根據加密媒體Decrypt,最近一項由倫敦加密貨幣基金公司NickelDigitalAssetManagement完成的調查發現.
1900/1/1 0:00:00本文作者是Messari分析師RyanWatkins 還記得算法穩定幣嗎? 在2020年第4季度的小小炒作一番之后,它們很多都陷入了崩潰,并且“失寵”了.
1900/1/1 0:00:00一位名為“Neitherconfirm”的加密藝術家最近列出了在OpenSea數字市場上出售的26個非同質化代幣.
1900/1/1 0:00:00