Cellframe Network 因閃電貸操控池子比例遭受攻擊事件分析
2023-06-01 15:05 Numen Cyber
根據 Numen 鏈上監控,2023年6月1日10點7分55秒(UTC+8),Cellframe Network(@cellframenet)在 Binance Smart Chain 上因爲流動性遷移過程中代幣數量計算問題遭到黑客攻擊,黑客從中獲利76112美元。
事件分析
黑客地址:
https://bscscan.com/address/0x2525c811ecf22fc5fcde03c67112d34e97da6079
攻擊交易:
https://bscscan.com/tx/0x943c2a5f89bc0c17f3fe1520ec6215ed8c6b897ce7f22f1b207fea3f79ae09a6
預先調用交易:https://bscscan.com/tx/0xe2d496ccc3c5fd65a55048391662b8d40ddb5952dc26c715c702ba3929158cb9
根本原因
流動性遷移中計算出現問題。
攻擊流程
1.首先,攻擊者通過 DPP 的 flashloan 獲得了1000個 BNB,然後利用 Pancake v3 的閃電貸功能獲取了50萬個 New Cell 代幣。
接下來,他們將所有的 New Cell 代幣換成了 BNB,導致池中的 BNB 數量接近爲0。
最後,攻擊者用900個 BNB 兌換成了 Old Cell 代幣。
2.需要注意的是,攻擊者在攻擊之前添加了 Old Cell 和 BNB 的流動性,獲得 Old lp。
3.接着,攻擊者調用流動性遷移函數。此時的狀態是新池子中幾乎沒有 BNB,老池子中幾乎沒有 Old Cell 代幣。
遷移的過程涉及以下步驟:
首先,移除舊流動性,並將對應數量的代幣返回給用戶;接着,按照新池子的比例添加新的流動性。
由於舊池子中基本沒有 Old Cell 代幣,因此在移除流動性時獲得的 BNB 數量會增加,而 Old Cell 代幣的數量會減少。
Resoul 中的數值變大,Token1 的數值也變大。
用戶只需添加少量的 BNB 和少量的 New Cell 代幣即可獲取流動性,並將多余的 BNB 和 Old Cell 代幣返回給用戶。
然後,重復進行遷移操作。
4.最後,攻擊者移除新池子的流動性,並將遷移返回的 Old Cell 代幣兌換成 BNB。
此時,老池子中有大量的 Old Cell 代幣,但沒有 BNB,攻擊者將 Old Cell 代幣重新兌換成 BNB,從而完成盈利。
總 結
遷移流動性時應該多重考慮新池子和舊池子兩種代幣的數量的變化或者當前的代幣價格,直接取交易對兩個幣種數量計算容易被操控。
此外,代碼上线前應做好全面的安全審計。
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。
標題:Cellframe Network 因閃電貸操控池子比例遭受攻擊事件分析
地址:https://www.sgitmedia.com/article/1475.html
相關閱讀:
- IntoTheBlock 聯創:Web3基礎設施正在被過度建造 我們正在盲目行事 2024-12-20
- 國際清算銀行最新提出的央行數字貨幣框架究竟是什么? 2024-12-20
- SOL 質押完整指南:從機制和收益等方面解析 Solana 質押生態 2024-12-20
- 特朗普正式獲得總統職位 BTC儲備競賽即將开啓 2024-12-20
- 預防量子計算威脅實用指南 2024-12-20
- 特朗普兩年時間通過加密貨幣賺了多少錢? 2024-12-20
- Chainalysis:朝鮮黑客從加密平台竊取的錢都幹什么了? 2024-12-20
- 估值45億美元,OpenAI和谷歌大佬聯手創立的AI Agent公司爲何這么牛? 2024-12-20