Back to Blog

当“安全铸造”不再安全:“HypeBears”安全事件的经验教训

Code Auditing
February 3, 2022

2月3日上午(+8时区),我们的系统报告了一笔针对 HypeBears NFT合约的攻击交易 0xfa97c3476aa8aeac662dae0cc3f0d3da48472ff4e7c55d0e305901ec37a2f704。经过调查,我们发现这是由ERC721的_safeMint函数引起的一次重入攻击。

根本原因

该项目对一个账户可以铸造的NFT数量有限制。基本上,它有一个addressMinted映射,用于记录一个账户是否已经铸造了NFT。

在铸造NFT时,代码使用了OZ参考实现的_safeMint函数。这个函数是“安全”的,因为它会检查接收方是否能够接收ERC721代币。这可以防止NFT被铸造到无法处理ERC721代币的合约中。根据文档:

如果to指向一个智能合约,它必须实现IERC721Receiver.onERC721Received,该函数在安全转账时会被调用。以下代码显示了OZ实现_safeMint函数的代码。

然而,这个外部函数调用会产生一个安全漏洞。具体来说,攻击者可以在onERC721Received回调函数中执行重入调用。例如,在易受攻击的HypeBears合约中,攻击者可以在onERC721Received回调函数中再次调用mintNFT函数(因为addressMinted尚未更新)。

攻击

下图显示了攻击交易

教训

安全研究人员已经讨论过SafeMint带来的风险链接1 链接2。然而,我们仍然可以看到易受攻击的代码和现实中的攻击。正如在QBridge安全事件中的safeTransfer所示,使用一个**安全的函数并不保证一个安全**的合约 😃。

Sign up for the latest updates
Tether Freezes $6.76M USDT Linked to Iran's IRGC & Houthi Forces: Why On-Chain Compliance is Now a Geopolitical Battlefield
Security Insights

Tether Freezes $6.76M USDT Linked to Iran's IRGC & Houthi Forces: Why On-Chain Compliance is Now a Geopolitical Battlefield

Looking ahead, targeted freezing events like this $6.76M USDT action will only become more common. On-chain data analysis is improving. Stablecoin issuers are also working closely with regulators. As a result, hidden illicit financial networks will be exposed.

Weekly Web3 Security Incident Roundup | Mar 2 – Mar 8, 2026
Security Insights

Weekly Web3 Security Incident Roundup | Mar 2 – Mar 8, 2026

During the week of March 2 to March 8, 2026, seven blockchain security incidents were reported with total losses of ~$3.25M. The incidents occurred across Base, BNB Chain, and Ethereum, exposing critical vulnerabilities in smart contract business logic, token deflationary mechanics, and asset price manipulation. The primary causes included a double-minting logic flaw during full token deposits that allowed an attacker to exponentially inflate their balances through repeated burn-and-mint cycles, a price manipulation vulnerability in an AMM-based lending market where artificially inflated vault shares created divergent price anchors to incorrectly force healthy positions into liquidation, and a flawed access control implementation relying on trivially spoofed contract interfaces that enabled attackers to bypass authorization to batch-mint and dump arbitrary tokens.

Weekly Web3 Security Incident Roundup | Feb 23 – Mar 1, 2026
Security Insights

Weekly Web3 Security Incident Roundup | Feb 23 – Mar 1, 2026

During the week of February 23 to March 1, 2026, seven blockchain security incidents were reported with total losses of ~$13M. The incidents affected multiple protocols, exposing critical weaknesses in oracle design/configuration, cryptographic verification, and core business logic. The primary drivers included oracle manipulation/misconfiguration that led to the largest loss at YieldBloxDAO (~$10M), a crypto-proof verification flaw that enabled the FOOMCASH (~$2.26M) exploit, and additional token design and logic errors impacting Ploutos, LAXO, STO, HedgePay, and an unknown contract, underscoring the need for rigorous audits and continuous monitoring across all protocol layers.