前言
北京時間2022年5月16日,知道創宇區塊鏈安全實驗室監測到多鏈DeFi協議FEG遭到閃電貸攻擊,攻擊者竊取144ETH和3280BNB,損失約130萬美元。
5月17日,多鏈DeFi協議FEG再次受到攻擊,攻擊者竊取291ETH和4343BNB,損失約190萬美元,其中BSC130萬美元,以太坊鏈60萬美元。
分析
該協議在BSC和Ether上都被攻擊了,下面的圖分別是兩鏈上的攻擊事件交易哈希。本次攻擊事件主要原因是swapToSwap()函數中path地址可被攻擊者控制。
巨鯨地址在過去兩天內買入超6.3萬枚RPL:5月3日消息,據 Spot On Chain 數據顯示,域名為 rethwhale.eth 的巨鯨在過去兩天內以均價 47.63 美元的價格買入 6.377 萬枚 RPL(合計 304 萬美元)。最近一筆交易是 13 小時前,該巨鯨將 700 枚 ETH 交易為 2.7 萬枚 RPL,持有量在 RPL 持有者之中排 22 名。[2023/5/3 14:40:13]
基礎信息
攻擊合約:0x9a843bb125a3c03f496cb44653741f2cef82f445
攻擊者地址:0x73b359d5da488eb2e97990619976f2f004e9ff7c
漏洞合約地址:
BSC:0x818e2013dd7d9bf4547aaabf6b617c1262578bc7
Ether:0xf2bda964ec2d2fcb1610c886ed4831bf58f64948
攻擊tx:
BSC:0x77cf448ceaf8f66e06d1537ef83218725670d3a509583ea0d161533fda56c063
GameStop的NFT市場交易量在兩天內超過Coinbase NFT市場交易量:7月14日消息,美國游戲零售商GameStop新NFT市場公開測試版僅上線兩天交易量已達3167枚ETH(約合350萬美元),雖然與OpenSea相比微不足道,但其已接近Coinbase NFT市場歷史交易量的兩倍,而GameStop尚未開始提供其視為市場計劃核心產品的游戲NFT。
Dune Analytics數據顯示,Coinbase的NFT市場自推出以來交易量總計1704枚ETH,約合180萬美元。(Decrypt)[2022/7/14 2:12:29]
Ether:0x1e769a59a5a9dabec0cb7f21a3e346f55ae1972bb18ae5eeacdaa0bc3424abd2
攻擊流程
1.攻擊者0x73b3調用事先創建好的攻擊合約0x9a84從DVM中閃電貸借出915.842WBNB,接著將其中的116.81WBNB兌換成115.65fBNB。
以太坊在兩天內銷毀了新幣發行量的36%:金色財經報道,自以太坊改進提案(EIP)1559激活以來,該網絡已從流通中移除或“銷毀”了超過5000枚ETH,價值約1400萬美元,占同期新幣發行總量的36%。[2021/8/7 1:39:59]
2.攻擊者0x73b3通過攻擊合約0x9a84創建了10個合約以便后面利用漏洞。
3.攻擊者0x73b3將第一步中兌換得到的fBNB通過函數depositInternal()抵押到FEGexPRO合約0x818e中。
4.攻擊者0x73b3調用depositInternal()和swapToSwap()函數使得FEGexPRO合約0x818e授權fBNB給第二步創建好的合約,重復多次調用授權fBNB給創建的10個合約。
Dash通過新預算周期提案 將在兩天內支付5311.95 DASH:11月26日,Dash官方發推宣布,已成功通過一個Dash預算周期提案,5311.95 DASH將在2天內支付給所有在DAO項目中投票的相關方。[2020/11/26 22:10:12]
5、由于上一步中已經將攻擊者0x73b3創建的10個合約都已授權,攻擊者用這些已被授權的合約調用transferFrom()函數將FEGexPRO合約0x818e每次轉走113.452fBNB。
6、攻擊者0x73b3又從PancakePair的LP交易對0x2aa7中借出31217683882286.007的FEG和423WBNB并重復上面的第三步、第四步和第五步,最終獲得。
主力數據:主力兩天內買入超過252萬枚HT:AICoin PRO版K線主力大單跟蹤顯示:過去2天,火幣HT/USDT大額委托頻繁出現并成交。其中,買單一共成交了34筆,共計252.15萬枚HT;賣單成交了20筆,共計36.31萬枚HT,成交差215.42萬枚。[2020/9/17]
7、最后歸還閃電貸,將上面攻擊獲得的所有WBNB轉入攻擊合約0x9a84中。
細節
查看FEGexPRO合約,我們能看到depositInternal()函數和swapToSwap()函數的具體邏輯。其中depositInternal()函數進行質押,用戶的余額受到合約當前代幣余額的影響,第一次攻擊者正常質押后balance也正常增加,而由于當前合約代幣余額沒變,后面的質押只需要傳入最小值調用即可。
通過調用swapToSwap()函數傳入惡意的path地址參數,當前合約代幣余額并不會受到影響,IERC20(address(Main)).approve(address(path),amt);這樣就能給path地址進行當前合約fBNB的授權。
攻擊者通過反復調用depositInternal()和swapToSwap()就可以讓FEGexPRO合約將fBNB反復授權給攻擊者傳入的惡意合約path地址。其他地址轉走的代幣數量就是攻擊者第一次質押的代幣數量減去手續費的數量。通過查看Debugger中的信息,我們可以發現傳入的path地址參數都是攻擊流程中創建的合約地址。
后續
在16日的攻擊之后,次日攻擊者又進行了一次攻擊,但更換了攻擊地址。
攻擊合約:0xf02b075f514c34df0c3d5cb7ebadf50d74a6fb17
攻擊者地址:0xf99e5f80486426e7d3e3921269ffee9c2da258e2
漏洞合約:0xa3d522c151ad654b36bdfe7a69d0c405193a22f9
攻擊tx:
BSC:0xe956da324e16cb84acec1a43445fc2adbcdeb0e5635af6e40234179857858f82
Ether:0c0031514e222bf2f9f1a57a4af652494f08ec6e401b6ae5b4761d3b41e266a59
由于R0X漏洞合約0xa3d5未開源,我們試著從Debugger中進行分析,發現和第一次的攻擊流程類似,但還用了BUY()輔助存入和SELL()函數進行輔助提取。
總結
該次攻擊的主要原因是未驗證swapToSwap()函數中path地址參數,導致可以被攻擊者任意傳入使得FEGexPRO合約將自身代幣授權給攻擊者傳入的所有惡意path地址。建議合約在開發時要對所有傳入的參數進行校驗,不要相信攻擊者傳入的任何參數。
作為全球最受歡迎的公鏈之一,波場TRON自創立以來始終保持高速發展,生態建設全面開花,各項數據突飛猛進。我們整理了波場TRON取得的輝煌成就,與大家共同見證波場TRON的發展歷程.
1900/1/1 0:00:00Solana上的穩定幣項目Nirvana創建了一種新型的AMM機制,解決了算法穩定幣在流動性上的問題,同時不斷抬升其地板價.
1900/1/1 0:00:00TRONSCAN最新數據顯示,7月10日至7月16日,波場TRON賬戶數新增100萬,總數達到103,114,838,正式突破1.03億.
1900/1/1 0:00:00當朋友讓你為他介紹一款理財產品你會推薦什么?是基金?股票?還是最近火爆全球的NFT?我們知道NFT利用了區塊鏈和加密技術,在虛擬世界中令其產品變得獨一無二,從而賦予產品價值.
1900/1/1 0:00:00據最新消息,截至5月26日,波場去中心化算法穩定幣USDD發行總額為575,498,101美元,突破5.7億美元,對應TRX銷毀量為7,275,883,764TRX,超72億枚.
1900/1/1 0:00:00電影《西紅柿首富》中,曾有過一句經典臺詞,“世界上最貴的午餐不是看吃什么,而是和什么人吃”。在該電影中,一夜暴富的王多魚為了能夠盡快完成破產的小目標,曾壕擲五千萬拍下與拉斐特共進午餐的機會.
1900/1/1 0:00:00