木星链 木星链
Ctrl+D收藏木星链

NFT:慢雾:XCarnival NFT借贷协议漏洞分析

作者:

时间:1900/1/1 0:00:00

原文作者:九九,慢雾安全团队

2022年6月27日,据慢雾区消息,XCarnival项目被曝出严重漏洞遭黑客攻击并盗走3,087个ETH。XCarnival是一个ETH链上的NFT借贷项目,目前项目团队正在修复漏洞并承诺会对受影响的用户提供解决方案。慢雾安全团队第一时间介入分析,并将结果分享如下:

相关信息

核心合约地址

P2Controller:

0x34ca24ddcdaf00105a3bf10ba5aae67953178b85

XNFT:

0x39360AC1239a0b98Cb8076d4135d0F72B7fd9909

xToken:

0x5417da20aC8157Dd5c07230Cfc2b226fDCFc5663

攻击者EOA地址

0xb7cbb4d43f1e08327a90b32a8417688c9d0b800a

Curve创始人通过OTC卖出750万CRV,目前持有8260万美元的贷款:金色财经报道,Lookonchain监测数据显示,Curve创始人Michael Egorov刚刚通过OTC又卖出了750 万CRV,并在Aave上偿还了300万美元 USDT。他目前持有8260万美元的贷款,分别为:Aave上 5124万 USDT;Abracadabra上 1200万 MIM;Fraxlend 上 919万 FRAX;Inverse 940万 DOLA;Silo上有 74万 XAI。[2023/8/3 16:14:40]

攻击合约地址

0xf70F691D30ce23786cfb3a1522CFD76D159AcA8d

0x234e4B5FeC50646D1D4868331F29368fa9286238

0x7B5A2F7cd1cc4eEf1a75d473e1210509C55265d8

新加坡央行已审查代币化和DeFi协议各个方面的可行性:金色财经报道,新加坡金融管理局提交了一份报告,总结了其与国际清算银行在Guardian项目上的工作。该计划旨在审查代币化和DeFi是否符合国际标准。作为该项目的一部分,参与者考虑了将协议整合到机构市场基础设施中的可能性。专家们测试了DeFi应用程序的“可行性”,以及在不危及全球金融稳定和完整性的情况下将实物资产转换为数字代币的选项。该论文揭示了开放且可互操作的私有区块链的案例,该区块链使用去中心化金融协议提供代币化资产的交换。该报告旨在介绍DeFi应用的最佳实践,这些应用可以监管股票、固定收益工具、外汇和投资基金等资产类别的交易。该文件介绍了允许类似工具交易的设计选项的通用结构。[2023/6/27 22:02:03]

0xc45876C90530cF0EE936c93FDc8991534F8A6962

漏洞核心点分析

1.攻击者通过XNFT合约中的pledgeAndBorrow函数来进行抵押NFT并借出xToken。

Morgan Creek CIO:反弹才刚刚开始,新一轮牛市或持续至明年:6月24日消息,Morgan Creek Capital创始人兼CIO Mark Yusko在接受CNBC采访时表示,比特币和加密市场正处于新一轮牛市的早期阶段,这一牛市可能会持续到明年,届时比特币将经历下一次减半。Mark Yusko还重申了他认为比特币最重要的用例,也就是比特币有望取代黄金成为货币的基础层。

Yusko表示,“比特币是一种永久、不可变的分类账,它将在未来成为新货币的基础层。我们将在此基础上构建未来的金融体系。除此之外的其他东西,比如以太坊或区块链技术的其他一些应用程序可能也会发挥作用。我认为以太坊更像是一种法定货币的替代品。”[2023/6/25 21:58:02]

Composable Finance首席技术官宣布离职:金色财经报道,Composable Finance首席技术官Karel Kubat表示,由于缺乏透明度,以及存在的 \"可疑交易\",他将离开公司。

他补充说,该公司的 \"财务报表没有提供给我或社区。社区和我目前对Composable Finance的财务健康状况没有任何了解。\"在另一条推文中,Kubat说,\"执行法律是由当局决定的。然而,我们是一个去中心化的社区,简单的、不道德的管理足以让我离开。\"[2023/2/21 12:18:38]

在pledgeInternal函数中转入NFT并生成订单:

GameStop终止与FTX.US的合作,并向客户退款:金色财经报道,视频游戏零售商GameStop(GME)计划结束与FTX.US的关系及其试点礼品卡营销合作,此前FTX.US申请了破产保护。

两家公司在9月宣布合作,以促进游戏和加密货币社区之间的互动,并表示某些GameStop商店将销售FTX礼品卡。周五GameStop的股票上涨了约5%。(coindesk)[2022/11/12 12:53:28]

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提走之后再利用之前生成的订单来借款而无需还款,以此来获利。针对此类漏洞,慢雾安全团队建议在进行借款操作时应做好订单状态中是否已经提走抵押品的判断,避免再次出现此类问题。

来源:金色财经

标签:NFTROWBORTOKEINFTEE价格ROWAN价格BORING币LianPai Token

火币APP下载热门资讯
BTC:GBTC 如何从「牛市发动机」变成「暴雷导火索」

无论是曾经的一线VC三箭资本,还是一度估值高达30亿美元的BlockFi皆踩坑灰度发行的比特币信托基金GBTC。熊市是流动性乐章的休止符.

1900/1/1 0:00:00
GAS:金色观察|L2的gas高吗?

昨天Arbitrum因gas费奇高被热议,流传出一个有趣的梗,“为什么l2比l1好,原来是因为gas费是l1的2倍。”这个梗指出的情况不常见,但确实指出了l2存在的问题.

1900/1/1 0:00:00
SYNC:ZKSync产品与生态:灵活组装的扩容捷径

随着Optimism发币、Arbitrum开启Odyssey羊毛大战,2022年下半年注定是L2百花齐放的阶段。此前,链茶馆已撰文详述过及,而作为ZK系的另一个代表项目,ZKSync也值得关注.

1900/1/1 0:00:00
WEB:熊市下逆周期扩招30%员工 欧易OKX凭什么

行情急转直下,市场渐入熊市。与日俱增的全体恐慌情绪,以及资金出逃趋势下,在牛市周期煊赫一时的众多头部玩家,自然无法独善其身,纷纷通过裁员手段应对寒冬.

1900/1/1 0:00:00
CARD:ADA的Vasil 硬分叉提案提交:倒计时开始

从7月3日起,应用程序开发人员和交易所测试即将到来的Cardano升级的为期4周的窗口开始,然后才发布到主网上.

1900/1/1 0:00:00
NFT:6 个新项目 CoinList 2022年夏季种子项目一览

6月23日,融资平台CoinList公布了2022年夏季种子项目,6个项目最终入围。CoinListSeed最早推出于2020,作为早期加密货币企业家与全球CoinList社区联系的平台.

1900/1/1 0:00:00