By:小白@慢霧安全團隊
2022 年 3 月 21 日,據慢霧區消息,OneRing Finance 存在嚴重漏洞遭到攻擊,黑客獲利約 1,454,672.244369 USDC(約 146 萬美元),慢霧安全團隊第一時間介入分析,并將結果分享如下:
相關信息
OneRing Finance 是一個去中心化應用程序(DApp),它支持加密貨幣的質押挖礦。用戶可以存入代幣來獲取收益。
以下是本次攻擊涉及的相關地址:
攻擊者地址:
0x12efed3512ea7b76f79bcde4a387216c7bce905e
攻擊交易:https://ftmscan.com/tx/0xca8dd33850e29cf138c8382e17a19e77d7331b57c7a8451648788bbb26a70145
攻擊合約:
0x6a6d593ed7458b8213fa71f1adc4a9e5fd0b5a58
某Smartmoney錢包地址1小時前將約313萬枚DYDX轉入幣安:金色財經報道,據Lookonchain監測,1小時前,某DYDX Smartmoney錢包地址將3,132,004枚DYDX轉移至幣安,價值約430萬美元。[2022/12/21 21:57:42]
被攻擊合約:
OneRingVault:0xc06826f52f29b34c5d8b2c61abf844cebcf78abf
攻擊核心點
OneRing 直接使用了 Pair 中的 reserves 參與 OShare 的價格計算,攻擊者利用 OneRingVault 正常的業務邏輯進行巨額的 Swap 操作產生的大滑點,使得 Pair 中的 reserves 非預期的增加,從而拉高了 OShare 的價格,導致相同數量的 OShare 可以取出更多的資金。
具體細節分析
1. 攻擊者構造了攻擊合約,利用閃電貸從 Solidity 借出 80000000 個 USDC 到攻擊合約中
Monero(XMR)已完成硬分叉升級:金色財經報道,門羅幣Monero(XMR)已完成硬分叉升級,旨在通過一系列新的隱私保護功能增強網絡,其中包括每筆交易的環形簽名的簽名者數量已從11個增加到16個、Bulletproofs算法升級為“Bulletproofs+”等。(CoinDesk)[2022/8/14 12:24:17]
2. 接著通過 swap 函數將 1 個 USDC 兌換成 miMatic 代幣,這里可以看到當前代幣兌換率是 1:1.001109876698508218
3. 調用 depositSafe 函數將 79,999,997($80,079,997.00)個 USDC 充值進合約
針對OneCoin騙局參與者Mark Scott的判決被推遲至7月14日:涉嫌參與OneCoin加密貨幣騙局的美國律師Mark Scott再次被推遲宣判。紐約南區法院法官 Edgardo Ramos批準了Mark Scott的請求,將對他的判決推遲到2020年7月14日。Mark Scott被指控犯有合謀洗錢和合謀銀行欺詐罪。由于各種各樣的原因,判決已經被重新安排了好幾次。此次延誤歸咎于斯科特“需要接受進一步的醫學檢查”。 Scott被發現為OneCoin設立運營欺詐性投資基金,洗錢約4億美元,獲得5000萬美元報酬。(FinanceFeeds)[2020/4/25]
這里 depositSafe 函數會內部調用 _deposit 函數,_deposit 函數會調用 _doHardWorkAll 函數,在該函數中會使用 for 循環將部分存入的 USDC 全部兌換成其他的代幣
動態 | 參與OneCoin騙局的美國律師Mark Scott正尋求無罪釋放:參與OneCoin詐騙案的美國律師Mark Scott正尋求無罪釋放。此前,美國一家法院裁定美國檢方對他提出的指控成立。在最近的一份法庭文件中,Scott的律師對檢察官提到的證人之間的關系提出了質疑,認為檢察官提供的證據不足以定罪。此前消息,Mark Scott因幫助OneCoin加密貨幣騙局洗錢在11月被定罪,并面臨50年監禁。(Financemagnates)[2020/2/4]
然后 depositSafe 將約 41,965,509.691846094312718922 個 OShare 代幣 mint 給攻擊者。此時我們可以看到 OShare 的價格是 1062758591235248117 這個值
動態 | 紐約檢察官已逮捕OneCoin領導者:據coindesk報道,紐約檢察官逮捕了OneCoin項目的“最高領導者”。紐約南區(SDNY)檢察官已經起訴Ruja Ignatova和Konstantin Ignatov,指控其電匯欺詐、證券欺詐和洗錢,兩者通過欺詐性加密貨幣從投資者處騙取了“數十億美元”。根據一份新聞稿,檢察官聲稱OneCoin是一個金字塔計劃,成員可以通過招募其他人加入該項目而獲得傭金。這些新成員需要購買加密貨幣“套裝”。據報道,OneCoin聲稱目前在全球擁有300萬會員。[2019/3/9]
從下面這張圖中可以看出在 swap 后攻擊者使用兩個 USDC 再次兌換 miMATIC 代幣時此時的兌換率已經產生巨大變化:
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 的價格計算時不要使用實時儲備量進行計算,避免再次出現此類事故。
近期,杭州互聯網法院公布了國內NFT侵權第一案,然而,對于NFT是什么,法院在同一個案子中卻有不同的兩種判定:“數字商品”(虛擬財產)和“作品上鏈的憑證”.
1900/1/1 0:00:00DeFi 收益聚合器 Dot.Finance 遭受閃電貸攻擊,PeckShield「派盾」第一時間定位并分析發現,此次攻擊是 PancakeBunny 的同源攻擊.
1900/1/1 0:00:00“?如果未來,全人類有機會使用各種自由開放的DeFi服務的時候,應該感謝在過去歷次黑客攻擊事件中受損的DeFi用戶,以及各位孜孜不倦,不忘初心的DeFi開發者們.
1900/1/1 0:00:00近期Kucoin被盜,okex不能提幣事件中,也已經充分暴露出中心化交易所的風險。 脆弱的中心化的交易所: 1. 技術風險 服務器軟件漏洞、配置不當、DDoS攻擊、服務端Web程序漏洞(包括技術.
1900/1/1 0:00:00據澳大利亞兩部委3月18日聯合發布的一份新聞稿稱,澳大利亞公布了一項國家區塊鏈戰略和路線圖,其中聯邦政府將進一步提供10萬澳元(約71200美元)的資助.
1900/1/1 0:00:00美國證券交易委員會(SEC)周一提交的一份文件顯示,其再次推遲了對VanEck SolidX的比特幣交易所交易基金(ETF)提案的決定時間.
1900/1/1 0:00:00