原文作者:九九,慢霧安全團隊
2022年6月27日,據慢霧區消息,XCarnival項目被曝出嚴重漏洞遭黑客攻擊并盜走3,087個ETH。XCarnival是一個ETH鏈上的NFT借貸項目,目前項目團隊正在修復漏洞并承諾會對受影響的用戶提供解決方案。慢霧安全團隊第一時間介入分析,并將結果分享如下:
相關信息
核心合約地址
P2Controller:
0x34ca24ddcdaf00105a3bf10ba5aae67953178b85
XNFT:
0x39360AC1239a0b98Cb8076d4135d0F72B7fd9909
xToken:
0x5417da20aC8157Dd5c07230Cfc2b226fDCFc5663
Binance.US:SEC起訴訟毫無根據,將積極為自己辯護:6月6日消息,Binance.US在其社交媒體發表官方聲明,表示SEC的起訴訟毫無根據,將積極為自己辯護,并表示,SEC的起訴“無論是基于事實、法律還是委員會自身的先例,都是不合理的”,將尋求國會介入,通過兩黨立法,為數字資產創造一個可行的監管體系。
此外,Binance.US還表示,在過去的兩年半時間里,Binance.US一直與SEC進行真誠的接觸交往,我們接觸的目標一直保持一致:積極合作,制定一個明確、實用的監管框架,使我們這樣的企業能夠發展壯大,創造就業,為美國消費者提供安全的數字資產訪問。[2023/6/6 21:17:42]
攻擊者EOA地址
0xb7cbb4d43f1e08327a90b32a8417688c9d0b800a
攻擊合約地址
過去一周Celsius錢包轉移近9億美元的ETH:金色財經報道,Arkham監測顯示,在過去的一周里,Celsius錢包一直很活躍,轉移了近9億美元的ETH。其中,他們已經將大約 2000 萬美元的 ETH 轉移到 Wintermute OTC 和 Custody Withdrawals。之后,將約 5700 萬美元的 ETH 抵押給了 Figment,并取消了他們在 Lido 抵押的 7.79 億美元的 ETH。[2023/5/17 15:08:59]
0xf70F691D30ce23786cfb3a1522CFD76D159AcA8d
0x234e4B5FeC50646D1D4868331F29368fa9286238
0x7B5A2F7cd1cc4eEf1a75d473e1210509C55265d8
Illuvium Labs發布Overworld私人測試版:金色財經報道,澳大利亞Illuvium Labs發布Overworld私人測試版,這是Illuvium Labs迄今為止發布的第二款游戲。該游戲處于私人測試階段。其聯合創始人兼游戲總監Aaron Warwick表示,“我們的使命是打造Web3歷史上第一個真正的AAA體驗”。(The Block)[2022/12/13 21:39:57]
0xc45876C90530cF0EE936c93FDc8991534F8A6962
漏洞核心點分析
1.攻擊者通過XNFT合約中的pledgeAndBorrow函數來進行抵押NFT并借出xToken。
調查:76%的西班牙人了解加密貨幣:金色財經報道,一項調查發現,76% 的接受調查的西班牙人了解加密貨幣——幾乎三分之一的人知道該國如何監管代幣的詳細信息。
該調查還描繪了典型的國內加密投資者的熟悉畫面:大多數表示投資加密貨幣的人是受過大學教育的(幾乎一半)、中上階層(64%)、月收入超過 3,000 美元(41%)和男性(66%)。超過三分之一的人年齡在 35 至 44 歲之間,中位年齡為 38 歲零 7 個月。
幾乎一半的投資者表示他們將不到 5% 的總資本投入到加密資產中,盡管相當一部分 (4.5%) 表示他們已將一半或更多的價值投資于比特幣 (BTC ) 和其他代幣。(cryptonews)[2022/8/13 12:22:37]
在pledgeInternal函數中轉入NFT并生成訂單:
2.接著調用withdrawNFT函數提取出質押的NFT,其中首先判斷該訂單是否被清算狀態,如果不是則判斷該訂單的狀態是否為NFT還未被提取且借款金額為0,如果通過即可提取抵押的NFT。
3.以上為攻擊前生成訂單的準備操作,接著攻擊者開始利用生成的訂單直接調用xToken合約中的borrow函數進行借款。
在borrowInternal函數中,會外部調用controller合約中的borrowAllowed函數來判斷是否可以借款。
可以看到在borrowAllowed函數會調用orderAllowed函數進行訂單相關信息的判斷,但是在這兩個函數中均沒有進行_order.isWithdraw狀態的判斷。因此攻擊者可以利用之前生成的訂單來調用XToken的borrow函數來借款,而因為抵押的NFT在之前已經被提出,故攻擊者可以不用還款來實現獲利。
攻擊交易分析
此處僅展示其中一筆攻擊交易的細節,其余攻擊交易的手法均一致,不再贅述。
攻擊前準備——生成訂單的交易:
0x61a6a8936afab47a3f2750e1ea40ac63430a01dd4f53a933e1c25e737dd32b2f
1.首先攻擊者將NFT轉入攻擊合約并進行授權,接著調用xNFT合約中的pledgeAndBorrow函數在進行抵押NFT生成訂單并借款的操作,此處需要注意一點是該函數可以控制傳入的xToken,攻擊者傳入了自己構造的xToken合約地址,并且讓借款數量為0,目的是為了滿足后續能成功提出NFT時的不被清算且負債為0的條件。
2.攻擊者緊接著調用withdrawNFT函數來進行提取抵押的NFT:
正式攻擊交易:
0x51cbfd46f21afb44da4fa971f220bd28a14530e1d5da5009cfbdfee012e57e35
攻擊者調用xToken合約的borrow函數,傳入之前生成的訂單的orderID,重復了該操作22次,而因為NFT在準備階段已經提走,估計無需還款以此來獲利。
總結
本次漏洞的核心在于借款的時候,沒有進行訂單中NFT是否被提走的狀態的判斷,導致攻擊者可以在把NFT提走之后再利用之前生成的訂單來借款而無需還款,以此來獲利。針對此類漏洞,慢霧安全團隊建議在進行借款操作時應做好訂單狀態中是否已經提走抵押品的判斷,避免再次出現此類問題。
來源:金色財經
Tags:NFTBORROWXTOKENSantas War NFT EpicBork InuCrown SovereignDextoken
這10條投資原則,幫助指導你的加密之旅。撰文:MilesDeutscher 編譯:Kyle 你想成為一個成功的加密投資者嗎?那么你必須了解這10條投資原則,幫助指導您的加密之旅.
1900/1/1 0:00:00業內有句廣為人知的話: 如果你想讓全世界都知道你對比特幣的一無所知,最好的方法,一是使用“郁金香泡沫”作比喻,二是說比特幣是一種“龐氏騙局”。今天,我們就來聊一聊為什么比特幣不是“龐氏騙局”.
1900/1/1 0:00:00比特幣在6月份進入略高于31,600美元的水平。不久之后,BTC跌至30,000美元區間,以維持該水平一周時間。這讓交易者猜測比特幣7月的表現會如何.
1900/1/1 0:00:00PANews6月29日消息,Terra研究員FatMan發推文稱,加密借貸公司Hodlnaut內部人員向其發布了一些信息.
1900/1/1 0:00:00作者|鄧建鵬 鄧建鵬,馬文潔.虛擬貨幣整治的法治思考與優化進路——兼論對金融科技的“禁令型”監管.陜西師范大學學報:哲學社會科學版,2022,51:86-97.金融科技是技術驅動的金融創新.
1900/1/1 0:00:00比特幣: 今天比特幣再次出現大幅下跌,上午的時候一度跌破2萬,短期行情底部到底在哪里,行情是否還要繼續還要繼續暴挫?首先大家看一下日線圖,目前在日線上價格一直運行在布林線中軌和下軌區域.
1900/1/1 0:00:00