By:小白@慢霧安全團隊
2022 年 3 月 21 日,據慢霧區消息,OneRing Finance 存在嚴重漏洞遭到攻擊,黑客獲利約 1,454,672.244369 USDC(約 146 萬美元),慢霧安全團隊第一時間介入分析,并將結果分享如下:
相關信息
OneRing Finance 是一個去中心化應用程序(DApp),它支持加密貨幣的質押挖礦。用戶可以存入代幣來獲取收益。
以下是本次攻擊涉及的相關地址:
攻擊者地址:
0x12efed3512ea7b76f79bcde4a387216c7bce905e
攻擊交易:https://ftmscan.com/tx/0xca8dd33850e29cf138c8382e17a19e77d7331b57c7a8451648788bbb26a70145
攻擊合約:
0x6a6d593ed7458b8213fa71f1adc4a9e5fd0b5a58
去中心化AI集成初創公司AiONE完成100萬美元種子輪融資:4月16日消息,去中心化AI集成初創公司AiONE宣布完成100萬美元種子輪融資,一批私人投資者參投,新資金將用于加速AiONE平臺基礎設施建設、擴大生態系統并尋求更多戰略合作伙伴。
AiONE主要幫助企業、項目方將人工智能設計集成到各類業務開發流程中,該公司已推出了原生代幣AIONE,將用于基礎設施服務、人工智能驅動的購買、質押獎勵分配、參與社區治理投票等,其主網預計將在2023年內上線。(U.today)[2023/4/16 14:07:01]
被攻擊合約:
OneRingVault:0xc06826f52f29b34c5d8b2c61abf844cebcf78abf
攻擊核心點
OneRing 直接使用了 Pair 中的 reserves 參與 OShare 的價格計算,攻擊者利用 OneRingVault 正常的業務邏輯進行巨額的 Swap 操作產生的大滑點,使得 Pair 中的 reserves 非預期的增加,從而拉高了 OShare 的價格,導致相同數量的 OShare 可以取出更多的資金。
Block.One發布EOSIO v2.1.0穩定版本:官方消息,Block.One發布EOSIO v2.1.0穩定版本,包含功能,安全性,穩定性和其他更新。[2021/5/21 22:29:06]
具體細節分析
1. 攻擊者構造了攻擊合約,利用閃電貸從 Solidity 借出 80000000 個 USDC 到攻擊合約中
2. 接著通過 swap 函數將 1 個 USDC 兌換成 miMatic 代幣,這里可以看到當前代幣兌換率是 1:1.001109876698508218
3. 調用 depositSafe 函數將 79,999,997($80,079,997.00)個 USDC 充值進合約
Block.one:已有39個技術組織對EOS新資源模型提案作出回應:11月30日,Block.one官方發推稱,對于新的EOS新資源模型提案,已向EOS節點候選人發起請求,以幫助評估模型代碼。截至今日已有39個技術組織作出回應。此前9月初消息,Block.one邀請EOS社區測試新資源模型。該資源模型于2019年12月提出,為基于EOSIO的公共區塊鏈提供替代方案以解決資源問題。[2020/11/30 22:34:39]
這里 depositSafe 函數會內部調用 _deposit 函數,_deposit 函數會調用 _doHardWorkAll 函數,在該函數中會使用 for 循環將部分存入的 USDC 全部兌換成其他的代幣
動態 | 新加坡當局指控兩名男子參與推廣欺詐性加密貨幣OneCoin:據financemagnates報道,新加坡當局指控兩名男子參與推廣欺詐性加密貨幣OneCoin。據當地日報《商業時報》4月10日報道,這兩人都在使用多層次的營銷方案來推廣這種數字貨幣。[2019/4/10]
然后 depositSafe 將約 41,965,509.691846094312718922 個 OShare 代幣 mint 給攻擊者。此時我們可以看到 OShare 的價格是 1062758591235248117 這個值
從下面這張圖中可以看出在 swap 后攻擊者使用兩個 USDC 再次兌換 miMATIC 代幣時此時的兌換率已經產生巨大變化:
動態 | Block.one 新版本限制預定交易的處理時間:據引力觀察報道,Block.one 發布 EOSIO 1.4.6版本,1.5.4版本,1.6.0版本。這些版本更新了限制預定交易的處理時間,對EOS主網遇到的拒絕服務漏洞更新補丁。BB在電報群表示:我們的團隊加班加點地工作,以滿足需求,以及圍繞未來計劃的研發和實施,比如EOSIO從一開始就為跨鏈通信而設計。[2019/1/18]
4. 然后調用 withdraw 函數。我們可以看到 withdraw 函數也調用了getSharePrice 函數進行 OShare 的價格計算
我們來看 getSharePrice 函數:
這里調用了 balanceWithInvested 函數,繼續跟進發現調用了 investedBalanceInUSD 函數:
這里可以看到最終影響價格的是 getUSDBalanceFromUnderlyingBalance 函數
在 getUSDBalanceFromUnderlyingBalance 函數中我們可以看到,該函數使用合約中兩個代幣的數量? _reserves0 和 _reserves1 這兩個值進行計算,由于之前的 swap 導致大量的 USDC 留在池子中,所以導致池子中的 USDC 數量變大,從而使 _amount 變大,這就導致了 getSharePrice 函數獲取到的當前 OShare 的價格變大了
由下圖我們可以看到當前的 OShare 的價格為 1136563707735425848 這個值:
從下面的 withdraw 函數中可以看出最終的提現數量是通過 _withdraw 進行計算得出的
跟進去后發現 _toWithdraw 也是由 balanceWithInvested 計算得出的,這也就導致這個值變大
然后會在這一步將攻擊者持有的 41965509 個 OShare 兌換為 81534750101089 個 USDC
5. 攻擊者歸還閃電貸后獲利離場
MistTrack
據慢霧 MistTrack 分析,攻擊者將獲利的部分 USDC 換成 FTM、ETH,最后將 USDC、ETH 跨鏈到以太坊。同時,以太坊上黑客地址初始資金來自于 Tornado.Cash 轉入的 0.1 ETH,接著黑客將 521 ETH 轉入 Tornado.Cash。
截止目前,黑客以太坊地址仍有近 4.5 萬美元,包括 14.86 ETH 和 100.29 USDC。慢霧 MistTrack 將持續監控黑客地址。
總結
本次攻擊是由于在 MasterChefBaseStrategy 合約中的 getUSDBalanceFromUnderlyingBalance 函數實時儲備量進行計算導致攻擊者可以利用閃電貸制造巨大差值從而獲利。慢霧安全團隊建議在進行 share 的價格計算時不要使用實時儲備量進行計算,避免再次出現此類事故。
本文由公號"老雅痞"(laoyapicom)授權轉載在這個除夕夜,雅痞哥還在研究DAO,節日什么的都不重要,暴富才是,你說對不?今天咱們就來討論下DAO中治理結構的一些問題.
1900/1/1 0:00:00致力于挖掘Heco公鏈潛力項目,促進Heco生態繁榮。共同抵制無審計、合約代碼無開源的、虛假宣傳項目,維護良好Heco生態環境。對于故意宣傳抹黑友商項目、Heco品牌的讀者還請多擔待.
1900/1/1 0:00:00上篇我們介紹了DeFi挖礦的一些基礎原理及風險提示,本文的重點則是介紹具體的優質項目及實操。Maker、Aave、Compound、Pancake、Curve,是DeFi世界里面百億美元俱樂部的.
1900/1/1 0:00:00隨著區塊鏈市場的火熱,越來越多的項目開始涌現出來,但繁榮的市場下卻是魚龍混雜的景象,這使得很多人常常在雜亂無章的市場中無從下手.
1900/1/1 0:00:00期權產品現在在 DeFi 用戶中越來越受歡迎。它為投資者提供了一種獨特的獲益方式,其風險敞口與流動性挖礦或質押有所不同,它有獲得期權溢價的機會,而不必直接處理期權.
1900/1/1 0:00:00有人說 DAO 是世界第八大奇跡。 DAO 被認為是神奇的地方,那里的一切看起來都很酷,并且在 2022 年你必須成為其中的一部分.
1900/1/1 0:00:00