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
紅杉資本高層改組 兩名合伙人離職:金色財經報道,紅杉資本對其高層進行了改組,這是該公司領導人Roelof Botha在動蕩時期重塑這家傳奇風投公司的最新跡象。紅杉資本發言人證實,該公司周三對有限合伙人表示,長期合伙人Michael Moritz將離開公司,專注于公司獨立的財富管理業務——紅杉傳承基金(Sequoia Heritage)。與此同時,據一位知情人士透露,自2016年以來一直在該公司工作、專注于早期創業公司的合伙人Mike Vernal也將離開該公司。 (The Information)[2023/7/20 11:05:20]
被攻擊合約:
https://etherscan.io/address/0x2320a28f52334d62622cc2eafa15de55f9987ed9#code
攻擊交易:
https://etherscan.io/tx/0xe0b0c2672b760bef4e2851e91c69c8c0ad135c6987bbf1f43f5846d89e691428
https://etherscan.io/tx/0x613b2de3bb9043884a219296eeb1ada8c47b5a0262b9c68ca06ffd2de3a5d9f5
IEEE委員會主席李鳴:區塊鏈技術能從四大關鍵要素支持元宇宙發展:9月20日消息,在由萬向區塊鏈實驗室主辦的第八屆區塊鏈全球峰會上,現任IEEE計算機協會區塊鏈和分布式記賬技術標準委員會主席李鳴發表《元宇宙研究與探索》主題演講。在演講中,李鳴闡述了元宇宙發展的背景,并表示NFT作為數字資產憑證逐漸走向大眾,極大地促進了元宇宙的發展。從其價值來看,NFT有助于內容資產化、資產確權、知識產權保護等。此外,李鳴還表示,元宇宙的關鍵要素包括組織、身份、資產和活動四個方面,而區塊鏈恰好能夠從這四個方面支持元宇宙的發展。[2022/9/20 7:08:11]
https://etherscan.io/tx/0x0251c2b8012a61567ec5855010d29618ada066642e4a2866755d58337c2866d9
https://etherscan.io/tx/0x19b10c6d38f0b911fdc0e722d681a70a56699d70559eefef3d4d6fe88276c813
攻擊核心點
在被攻擊的 Revest 合約中,用戶調用 mintAddressLock 函數來將一定數量的 ERC-20 代幣存入 Revest Smart Vault 時,就會創建 FNFT。該 NFT 代表了用戶擁有的代幣資產數額,后續可以調用 withdrawFNFT 函數將代幣贖回。
數據:過去24小時全網爆倉5.29億美元:金色財經消息,據Coinglass數據顯示,過去24小時全網爆倉逾5.29億美元,其中以太坊爆倉3.01億美元,占全網爆倉總額的56%。比特幣爆倉1.22億美元。[2022/7/19 2:21:56]
攻擊核心點就在于攻擊者利用 ERC1155 標準鑄造 NFT 時會調用接受者地址的 onERC1155Received 函數,因此攻擊者利用該點回調重入了 Revest 合約中的 depositAdditionalToFNFT 函數,該函數會鑄造一個新的 NFT,接著會調用 tokenVault 合約的 handleMultipleDeposits 函數記錄新的 NFT 的信息,而 handleMultipleDeposits 函數中缺少了對該新鑄造的 NFT 是否存在的判斷,故此攻擊者利用重入修改了已經鑄造過的 NFT 的信息,而用戶鑄造 NFT 打入 ERC20 資產代幣的流程是在重入操作之前的,故此用戶無需打入 ERC20 代幣就成功鑄造了代表自己具有 360001 枚 ERC20 代幣資產的 NFT。
具體細節分析
此處拿獲取 RENA 代幣的攻擊進行分析,其他幾個攻擊手法一致,不做過多贅述。
特朗普:馬斯克不會收購推特:金色財經消息,據Watcher.Guru發布特朗普演說視頻,視頻中特朗普稱馬斯克不會收購推特。[2022/7/10 2:02:57]
1. 攻擊者首先從 uniswap 池子中閃電貸借出 2 枚 RENA 代幣
2. 接著調用 Revest 合約中的 mintAddressLock 函數,傳入 quantities 為 2,該函數進行加鎖操作后會調用 doMint 函數來鑄造 NFT
在 doMint 函數中,會調用 tokenVault 合約的 createFNFT 函數記錄所鑄造的 NFT 函數信息,接著用戶給 tokenVault 合約轉賬相應的 ERC20 代幣,最后調用 FNFTHandler 合約中的 mint 函數來發放 NFT
前門羅幣主要開發者Riccardo Spagni將于7月5日向美國法警局自首:金色財經消息,據周四提交給田納西州中區的法庭文件,門羅幣(Monero)前主要開發者、表情符號用戶名項目Yat聯合創始人Riccardo Spagni將于7月5日向美國司法部下屬部門法警局自首,以便被引渡到南非,他將在南非面臨欺詐指控。南非官員指控Spagni對他的前雇主Cape Cookies進行了10萬美元的發票欺詐。在2021年初面臨審判時,Riccardo Spagni從南非逃往美國,隨后于8月份在田納西州Nashville被捕。(cointelegraph)[2022/7/1 1:43:20]
所鑄造的 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 是否已經存在的判斷,且在合約關鍵函數中必須添加重入鎖的限制,避免再次出現此類問題。
在DeFi生態系統中,保險仍然是利基市場。但是,隨著保險領域的成熟以及機構參與者的加入,保險可能會成為DeFi的最大支柱之一.
1900/1/1 0:00:00“我有個朋友也玩比特幣”,有個當年和你還算熟的同學湊了過來說:“現在再買比特幣以太坊什么的,雖然也還有得賺,但是可能沒法跟以前那樣暴富了”。說的時候,他的余光瞟了眼窗外停車場的那輛保時捷.
1900/1/1 0:00:00隨著年中的將近,我們開始回顧過去NFT產業的增長。那么本周NFT產業有怎樣有趣的新聞呢?讓我們來回顧一下過去一周NFT市場的重要新聞。最初作為Meme的Goblin已成為本周最熱門的NFT收藏.
1900/1/1 0:00:00導語:一個上線72小時,資金存借超4億美金的Defi項目是什么概念?不懂的人還在觀望,讀懂的人已經去空手套白狼了。本文科普LendHub,手把手教你如何去火幣薅羊毛.
1900/1/1 0:00:00王瑋,區塊鏈資深從業者 我們今天來聊一聊殺豬盤,哦不,龐氏這件事。“龐氏”(ponzi scheme)這件事,現實世界中我們已經見過很多次了.
1900/1/1 0:00:00預言機在DeFi的應用:Price Feeds并不簡單在 DeFi 中被廣泛采用的預言機主要有兩種.
1900/1/1 0:00:00