NFT合约安全风险分析:6起典型事件剖析及5大常见问题解读

NFT合约安全性分析:典型事件与常见问题

2022年上半年,NFT领域安全事件频发,造成重大经济损失。据数据平台监测,该期间共发生10起主要安全事件,损失总额约6490万美元。攻击方式主要包括合约漏洞利用、私钥泄露和钓鱼等。同时,Discord服务器遭受频繁攻击,导致个人用户因点击钓鱼链接而蒙受损失的情况屡见不鲜。

上半年NFT安全事件分析:哪些典型案列值得我们警惕?

典型安全事件分析

TreasureDAO事件

2022年3月3日,TreasureDAO交易平台遭黑客入侵,致使100多个NFT被盗。事件根源在于TreasureMarketplaceBuyer合约的逻辑漏洞。合约在buyItem函数中未对代币类型进行判断,直接用_quantity与_pricePerItem相乘计算totalPrice,导致攻击者可在ERC-20代币支付额为0的情况下购买代币。这一问题源于ERC-1155和ERC-721代币混用引发的逻辑混乱,ERC-721代币本无数量概念,但合约却用数量计算价格,且转账实现中未进行逻辑分离。

APE Coin空投事件

2022年3月17日,黑客通过闪电贷获取超6万APE Coin空投。AirdropGrapesToken空投合约存在逻辑漏洞,仅用alpha.balanceOf()和beta.balanceOf()判断调用者对BAYC/MAYC NFT的所有权。这种方式只能获取用户对NFT所有权的瞬时状态,而该状态可被闪电贷操控。攻击者借此漏洞,通过闪电贷借入BAYC NFT并获得相应空投。

Revest Finance事件

2022年3月27日,Revest Finance遭黑客攻击,损失约12万美元。Revest合约中存在ERC-1155重入漏洞。当用户使用depositAdditionalToFNFT()追加FNFT抵押资产时,合约需先销毁原FNFT,再铸造新FNFT。然而,min()函数未检查待铸造FNFT是否已存在,且fnftId自增在_mint()后执行。_min()中的_doSafeTransferAcceptanceCheck()外部调用导致重入漏洞。

NBA薅羊毛事件

2022年4月21日,NBA项目遭黑客攻击。The_Association_Sales合约在使用签名验证白名单时存在签名冒用和复用两大问题。签名复用是由于合约未存储已使用签名,导致攻击者可重复使用;签名冒用则因vData memory参数info传参时未校验msg.sender。

Akutar事件

2022年4月23日,Akutar项目的AkuAuction合约因智能合约漏洞,导致11539ETH(约3400万美元)被锁死。合约存在两个逻辑漏洞:一是退款函数processRefunds使用call函数退款,并将结果作为require判定条件,攻击者可在fallback中恶意revert阻止退款;二是退款函数中的判断条件未考虑用户可投标多个NFT的情况,使后续退款操作无法执行。

XCarnival事件

2022年6月24日,NFT借贷协议XCarnival遭攻击,黑客获利3087枚以太坊(约380万美元)。XNFT合约的pledgeAndBorrow函数在质押NFT时未检查xToken地址是否在白名单中,且借贷时未检测抵押记录状态,使攻击者可反复使用无效抵押记录借贷。

上半年NFT安全事件分析:哪些典型案列值得我们警惕?

NFT合约审计常见问题

  1. 签名冒用和复用:

    • 签名数据缺少重复执行验证,可重复使用签名数据铸造NFT
    • 签名检查不合理,任意用户可通过检查进行铸币
  2. 逻辑漏洞:

    • 管理员可通过特殊方式铸币而不受总量限制,导致NFT实际量超预期
    • 拍卖NFT时,获胜者可通过交易顺序依赖攻击修改竞拍价格,低价获取NFT
  3. ERC721/ERC1155重入攻击:

    • 使用转账通知功能时,NFT合约向目标合约发送调用可能导致重入攻击
  4. 授权范围过大:

    • 质押或拍卖时要求_operatorApprovals授权,可能导致NFT被盗风险
  5. 价格操控:

    • NFT价格依赖某合约代币持有量,攻击者可利用闪电贷拉高价格,导致质押NFT异常清算

鉴于NFT合约安全事件频发,且审计中常见漏洞在实际中屡被利用,寻求专业安全公司对NFT合约进行全面审计十分必要。

上半年NFT安全事件分析:哪些典型案列值得我们警惕?

此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 9
  • 分享
评论
0/400
SerumDegenvip
· 07-26 15:03
又一天又一场黑客攻击……经典的web3无奈摇头
查看原文回复0
0x复利型人格vip
· 07-26 10:33
这些合约bug 都是纸老虎啊
回复0
熊市抄底人vip
· 07-26 08:12
小白白亏五万
回复0
DeFi老顽童vip
· 07-25 07:36
玩这圈子十年了 见过多少韭菜被割 难道就活该这么亏
回复0
TokenSleuthvip
· 07-23 15:36
合约都这么多漏洞 谁敢买
回复0
pumpamentalistvip
· 07-23 15:36
又有鱼被钓到咯
回复0
SelfCustodyBrovip
· 07-23 15:31
防护做的这么烂 怎么还敢上链
回复0
狗狗币单身汉vip
· 07-23 15:23
真就玩不起啊!
回复0
地板价观察员vip
· 07-23 15:11
NFT真暴击 谁买谁倒霉
回复0
查看更多
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)