安全生產簡析下meerkat跑路事件
一、核心問題
1.AdminUpgradeabilityProxy天然的負面影響一代理的邏輯合約可以被替換
2.AdminUpgradeabilityProxy權限沒有移交timelock一項目方不受時間鎖約束,可以隨意使用1。所說的能力,替換邏輯合約最終項目方無限制地將正常合約替換成了攻擊合約,卷款跑路。
Beosin:sDAO項目遭受攻擊事件簡析:金色財經報道,根據區塊鏈安全審計公司Beosin旗下Beosin?EagleEye 安全風險監控、預警與阻斷平臺監測顯示,BNB鏈上的sDAO項目遭受漏洞攻擊,Beosin分析發現由于sDAO合約的業務邏輯錯誤導致,getReward函數是根據合約擁有的LP代幣和用戶添加的LP代幣作為參數來計算的,計算的獎勵與用戶添加LP代幣數量正相關,與合約擁有總LP代幣數量負相關,但合約提供了一個withdrawTeam的方法,可以將合約擁有的BNB以及指定代幣全部發送給合約指定地址,該函數任何人都可調用。而本次攻擊者向其中添加了LP代幣之后,調用withdrawTeam函數將LP代幣全部發送給了指定地址,并立刻又向合約轉了一個極小數量的LP代幣,導致攻擊者在隨后調用getReward獲取獎勵的時候,使用的合約擁有總LP代幣數量是一個極小的值,使得獎勵異常放大。最終攻擊者通過該漏洞獲得的獎勵兌換為13662枚BUSD離場。Beosin Trace追蹤發現被盜金額仍在攻擊者賬戶,將持續關注資金走向。[2022/11/21 7:53:09]
二、現場還原(以BUSD池為例)?
Beosin:SheepFarm項目遭受攻擊事件簡析:金色財經報道,根據區塊鏈安全審計公司Beosin旗下Beosin EagleEye 安全風險監控、預警與阻斷平臺監測顯示,BNB鏈上的SheepFarm項目遭受漏洞攻擊,Beosin分析發現由于SheepFarm合約的register函數可以多次調用,導致攻擊者0x2131c67ed7b6aa01b7aa308c71991ef5baedd049多次利用register函數增大自身的gems,再利用upgradeVillage函數在消耗gems的同時累加yield屬性,最后調用sellVillage方法把yield轉換為money后再提款。本次攻擊導致項目損失了約262個BNB,約7.2萬美元。Beosin Trace追蹤發現被盜金額仍在攻擊者賬戶,將持續關注資金走向。[2022/11/16 13:10:39]
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的障眼法)
尊敬的用戶: 幣虎創新區將于2021年3月9日18:00上線PWAY/USDT交易對,具體時間如下:1.開放充幣:2021年3月8日18:00;2.開放交易:2021年3月9日18:00;3.開.
1900/1/1 0:00:00一、觀點 加上今日,比特幣連續7天維持縮量震蕩走勢,在46300至52637區間上下游走,成交量未見顯著放大,但K線形態上卻出現了一條袋鼠尾:3月3日的上影線和前后兩天未能再次突破最高價的K線.
1900/1/1 0:00:00消息面: 1、據福建日報消息,3月5日,參加十三屆全國人大二次會議的福建代表團舉行全體會議,審議政府工作報告.
1900/1/1 0:00:00尊敬的ZT用戶:ZT將舉辦第四期“Freezone”投票上幣活動,用戶可通過ZTB參與投票,在投票票數符合要求的情況下,可成功上線ZT.
1900/1/1 0:00:00Gate.io“芝麻金融”已上線雙幣寶理財服務,現已推出BTC雙幣投資理財新品,持倉期限12天,掛鉤參考價格為52000-62000美元,到期結算本金和收益為BTC或USDT.
1900/1/1 0:00:00多言不可與謀,多動不可與久處,交易與其沖動,還不如一動不動!大家好,我是席幕楓。心存陽光必有詩與遠方,認識我老席何懼再遇荒涼?席幕楓:3.8以太坊行情分析以太坊,日線強勢反抽大陽結尾,昨日屢屢回.
1900/1/1 0:00:00