By:九九@慢霧安全團隊
2022 年 03 月 27 日,據慢霧區消息,Revest Finance 的 Revest 合約遭到黑客攻擊,黑客盜取了近 770 萬枚 ECO、579 枚 LYXe、近 7.15 億枚 BLOCKS 以及超 35 萬枚 RENA。慢霧安全團隊第一時間介入分析,并將結果分享如下:
相關信息
Revest Finance 提出了一種新協議,用于將可替代的 ERC-20 代幣作為不可替代的代幣化金融工具進行打包、轉移和存儲,利用 ERC-1155 非可替代代幣(NFT)標準來簡化訪問和商業通用性。使用該產品,資產的所有權可以以不影響資產價值的方式進行交易,從而形成一個新的商業模式。通過有針對性的用例發現該協議的機制、治理和貨幣化。
以下是本次攻擊涉及的相關地址:
攻擊者地址:
https://etherscan.io/address/0xef967ece5322c0d7d26dab41778acb55ce5bd58b
攻擊合約:
https://etherscan.io/address/0xb480ac726528d1c195cd3bb32f19c92e8d928519
交易員在Curve、Uniswap拋售大量USDT,USDT跌破1美元:金色財經報道,鏈上數據顯示,交易員似乎在Curve Finance 和Uniswap的主要穩定幣池中大量拋售USDT ,導致池子陷入嚴重失衡。Curve 3池中的USDT余額飆升至62% ,該池由USDT、 USDC和DAI穩定幣組成,而USDC和DAI約占池中所有資產的19-19%。Uniswap的USDT-USDC 交易池是該平臺上流動性最強的貨幣對之一,其中 USDT余額為1.054億美元,而USDC余額僅為 650萬美元。這種不平衡表明,交易員傾向于持有DAI或USDC,而不是USDT,因為池中有更多的USDT賣家。
根據CoinDesk和CoinMarketCap 的數據,由于拋售壓力,USDT在美股日間交易時段一直低于1美元,一度跌至99.76美分。截至發稿時,拋售的原因尚不確定。[2023/8/4 16:17:47]
被攻擊合約:
https://etherscan.io/address/0x2320a28f52334d62622cc2eafa15de55f9987ed9#code
攻擊交易:
https://etherscan.io/tx/0xe0b0c2672b760bef4e2851e91c69c8c0ad135c6987bbf1f43f5846d89e691428
DAI超越BUSD市值成為第三大穩定幣:6月16日消息,Coingecko數據顯示,目前穩定幣BUSD市值已跌至43.4億美元,略低于DAI市值43.87億美元。DAI現已成為僅次于USDC的第三大穩定幣。此外,BUSD市值已較年初的165.7億美元下降近74%,DAI市值已較年初的50.6億美元下降13%。[2023/6/16 21:42:19]
https://etherscan.io/tx/0x613b2de3bb9043884a219296eeb1ada8c47b5a0262b9c68ca06ffd2de3a5d9f5
https://etherscan.io/tx/0x0251c2b8012a61567ec5855010d29618ada066642e4a2866755d58337c2866d9
https://etherscan.io/tx/0x19b10c6d38f0b911fdc0e722d681a70a56699d70559eefef3d4d6fe88276c813
攻擊核心點
在被攻擊的 Revest 合約中,用戶調用 mintAddressLock 函數來將一定數量的 ERC-20 代幣存入 Revest Smart Vault 時,就會創建 FNFT。該 NFT 代表了用戶擁有的代幣資產數額,后續可以調用 withdrawFNFT 函數將代幣贖回。
Ledger與Deadfellaz達成合作:金色財經報道,Ledger與Deadfellaz達成合作,Ledger是安全可靠的加密硬件錢包的領導者,宣布了他們與Deadfellaz持續合作的新篇章,這個品牌創造了帶有黑暗元素的獨特街頭服飾。他們的目標是發布限量版Deadfellaz Ledger Nano X。[2023/4/23 14:22:19]
攻擊核心點就在于攻擊者利用 ERC1155 標準鑄造 NFT 時會調用接受者地址的 onERC1155Received 函數,因此攻擊者利用該點回調重入了 Revest 合約中的 depositAdditionalToFNFT 函數,該函數會鑄造一個新的 NFT,接著會調用 tokenVault 合約的 handleMultipleDeposits 函數記錄新的 NFT 的信息,而 handleMultipleDeposits 函數中缺少了對該新鑄造的 NFT 是否存在的判斷,故此攻擊者利用重入修改了已經鑄造過的 NFT 的信息,而用戶鑄造 NFT 打入 ERC20 資產代幣的流程是在重入操作之前的,故此用戶無需打入 ERC20 代幣就成功鑄造了代表自己具有 360001 枚 ERC20 代幣資產的 NFT。
具體細節分析
澳大利亞證券投資委員會吊銷幣安澳大利亞分部衍生品金融服務許可證:金色財經報道,澳大利亞證券投資委員會(ASIC)吊銷了 Binance 澳大利亞分部衍生品金融服務許可證。澳大利亞證券投資委員會(ASIC)表示,吊銷牌照后,從 4 月 14 日起,Binance 澳大利亞客戶將無法增加衍生品頭寸或使用 Binance 開設新頭寸。此外,Binance 澳大利亞將要求客戶在 2023 年 4 月 21 日之前關閉所有現有衍生品頭寸。[2023/4/6 13:48:11]
此處拿獲取 RENA 代幣的攻擊進行分析,其他幾個攻擊手法一致,不做過多贅述。
1. 攻擊者首先從 uniswap 池子中閃電貸借出 2 枚 RENA 代幣
2. 接著調用 Revest 合約中的 mintAddressLock 函數,傳入 quantities 為 2,該函數進行加鎖操作后會調用 doMint 函數來鑄造 NFT
Klaytn宣布1inch、Krosslab、Sygnum加入其治理委員會:8月12日消息,韓國區塊鏈平臺Klaytn宣布去中心化聚合交易平臺1inch、新加坡區塊鏈公司Krosslab、數字資產銀行Sygnum加入其治理委員會(GC),使GC成員的數量達到36個。1inch最近完成與Klaytn的集成,Krosslab將通過基礎設施和服務的開發,Sygnum將通過機構數字資產銀行業務、投資專業知識和服務為Klaytn生態系統做出貢獻。[2022/8/12 12:21:25]
在 doMint 函數中,會調用 tokenVault 合約的 createFNFT 函數記錄所鑄造的 NFT 函數信息,接著用戶給 tokenVault 合約轉賬相應的 ERC20 代幣,最后調用 FNFTHandler 合約中的 mint 函數來發放 NFT
所鑄造的 NFT 的 fnftId 為 1027, 所記錄的該 NFT 相關信息如下:
因為 depositAmount 為 0,故此 NFT 代表用戶擁有的 ERC20 代幣資產為 0,故無需轉相關資產代幣給合約
3. 再次調用 Revest 合約中的 mintAddressLock 函數,傳入 quantities 為 360000,與上面相同的步驟調用 doMint 進行鑄造 NFT,所鑄造的 NFT 的 fnftId 為 1028,記錄的 NFT 信息如下:
因為 depositAmount 為 0,故仍然無需轉賬代幣資產給 tokenVault,但是與之前不同的是,這一次鑄造 NFT 的操作中,因為在調用 FNFTHandler 合約的 mint 函數時會調用 _doSafeTransferAcceptanceCheck 函數
該函數會調用攻擊合約的 onERC1155Received 函數,故此攻擊者利用攻擊合約中的重寫的 onERC1155Received 函數回調重入了 Revest 合約的 depositAdditionalToFNFT 函數
在 depositAdditionalToFNFT 函數需要傳入指定的 fnftId(此處是 1027)、NFT 數量 quantity(此處是 1)與單個 NFT 中需要存款的資產數額 amount(此處是 1),該函數會 burn 掉傳入的 fnftId 的指定數量的 NFT,接著用戶轉入指定數量的 ERC20 代幣資產并 mint 新的 NFT,需要轉賬的數量是 quantity *? amount 為 1,最后調用 tokenVault 合約中的 handleMultipleDeposits?記錄新的 NFT 的存款數量為上面傳入指定 fnftId 的 NFT 的 depositAmount 值 + 傳入的 amount 的值
而在 handleMultipleDeposits 函數 mint 新的 NFT 時沒有判斷該 NFT 的信息是否在 tokenVault 合約中存在,故此攻擊者利用該問題直接修改了 1028 號 NFT 的信息,使得該 NFT 雖然在 doMint 操作時第一次記錄的 depositAmount 為 0,但是在重入后卻修改成了 1
4. 最后調用 withdrawFNFT 函數進行提取 NFT 中所代表的 ERC20 代幣資產
該函數燃燒掉指定的 NFT 后,會調用 tokenVault 合約中的 withdrawToken 函數進行提款
因為 depositAmount 在回調后被修改了為了 1,故此最后提款的 RENA 數量計算出來約為 360000 枚
5. 攻擊者歸還閃電貸后獲利離場
總結
本次攻擊事件是由于在 tokenVault 合約中的 handleMultipleDeposits 函數中沒有判斷該新鑄造的 NFT 是否存在,故此攻擊者利用該點直接修改了已經鑄造過的 NFT 的信息,并且在 Revest 合約中關鍵的函數沒有做重入鎖的限制,導致了被回調利用。慢霧安全團隊建議在進行鑄造 NFT 等敏感操作時需增加對 NFT 是否已經存在的判斷,且在合約關鍵函數中必須添加重入鎖的限制,避免再次出現此類問題。
如果你急切地等待NFT到達Instagram,那么這一刻已經到來。您可以在源、快拍和消息中共享 NFT.
1900/1/1 0:00:00前幾天,DeFi生態遭受了一次史上金額最大的被盜事件,Poly網絡上知名頭部協議O3遭黑客攻擊并盜取價值6億美元的代幣,給整個行業敲響了警鐘.
1900/1/1 0:00:00近期,數字資產市場的宏觀變化,也對 NFT 市場帶來了沖擊。根據 NFTGo.io 數據,目前,NFT 市場情緒較為冷淡.
1900/1/1 0:00:00去中心化金融(DeFi)正在重新定義金融的未來,為金融應用提供動力的底層基礎設施正在發生重大轉變,它正在改變我們對權限和控制、透明度和風險的思考方式.
1900/1/1 0:00:00作者:NEST愛好者_CryptoData2020 年 2 月 6 日,以太坊 DeFi 生態中鎖定的 ETH 和 ERC-20 代幣的總價值超過 10 億美金.
1900/1/1 0:00:00致力于挖掘Heco公鏈潛力項目,促進Heco生態繁榮。共同抵制無審計、合約代碼無開源的、虛假宣傳項目,維護良好Heco生態環境。對于故意宣傳抹黑友商項目、Heco品牌的讀者還請多擔待.
1900/1/1 0:00:00