返回博客

如何错误地验证签名——AssociationNFT案例

Code Auditing
2022年4月21日
阅读约 2 分钟

The Association NFT 是一个由 NBA 推出的 NFT。然而,我们发现该 NFT 销售合约存在严重的漏洞,允许攻击者在不支付任何代币的情况下铸造大量 NFT。

该漏洞的根本原因是签名验证的错误使用。基本上,合约未能确保签名只能由用户(且仅由用户)使用一次。在这种情况下,攻击者可以重复使用特权用户的签名,并将代币铸造给自己。

我们可以看到,在 verify 函数中,签名中不包含发送者的地址。此外,没有机制来包含一个 nonce 以确保签名只能使用一次。这些安全要求是软件安全课程中的基本知识。

我们很惊讶如此普遍的 NFT 项目中会出现这样的漏洞。整个社区都需要更加关注合约的安全性。

关于 BlockSec

BlockSec 是一家开创性的区块链安全公司,由一群全球杰出的安全专家于 2021 年创立。公司致力于提升新兴 Web3 世界的安全性和可用性,以促进其大规模采用。为此,BlockSec 提供智能合约和 EVM 链安全审计服务、用于安全开发和主动阻止威胁的 Phalcon 平台、用于资金追踪和调查的 MetaSleuth 平台,以及供 Web3 构建者在加密世界中高效冲浪的 MetaSuites 扩展。

迄今为止,公司已为 MetaMask、Uniswap Foundation、Compound、Forta 和 PancakeSwap 等 300 多家尊贵客户提供服务,并从 Matrix Partners、Vitalbridge Capital 和 Fenbushi Capital 等杰出投资者那里获得了两轮数千万美元的融资。

官方网站:https://blocksec.com/

官方 Twitter 账号:https://twitter.com/BlockSecTeam

订阅最新动态
约940万美元损失:Injective、Aquifer遭利用攻击 | BlockSec Weekly
Security Insights

约940万美元损失:Injective、Aquifer遭利用攻击 | BlockSec Weekly

过去一周(2026/08/31-2026/09/06),Injective、Solana、Ethereum和Flow EVM上发生四起安全事件,损失约940万美元。最大的是Injective漏洞,保险基金标识符与二元期权市场标识符冲突,结算路径未比较其面额,损失约480万美元;Solana上的Aquifer因交换路径调用未验证的调用者提供的Token Program,损失约247万美元;Ethereum上的Notional Finance V1因未检查的uint128转换将债务估值为零,损失约173万美元。Flow EVM上的Ankr FLOW因质押入口跳过暂停保护并按过时比率铸币,损失约41万美元。

超越智能合约:Web3中的域名与DNS运营安全
Security Insights

超越智能合约:Web3中的域名与DNS运营安全

合约审计只审合约本身。我们对DefiLlama TVL前100协议背后的100个域名进行了8项基于SEAL的DNS和注册商检查,共800项检查,只有一个域名全部通过。以下是大多数项目缺失的四项关键控制措施,以及它们在用户入口处为何至关重要。

Web3攻击面:渗透测试概览

Web3攻击面:渗透测试概览

加密机构承载所有传统攻击面,并叠加资金处理链。本文提供系统的实用抽象:应用、授权与签名、区块链交互、基础设施四组件模型,说明各自职责、代表实现及继承的攻击面,并将web3特有覆盖细分为五大攻击面:生产与自动化运维、签名意图、审批与提现链、资金逻辑及链上交易与已部署合约。

Web3 最佳安全审计方

在上线之前验证设计、代码与业务逻辑,对标业内最高安全标准。

BlockSec 审计