Back to Blog

Wenn "SafeMint" unsicher wird: Lehren aus dem HypeBears-Sicherheitsvorfall

Code Auditing
February 3, 2022

Am Morgen des 3. Februar (Zeitzone +8) meldete unser System eine Angriffstransaktion 0xfa97c3476aa8aeac662dae0cc3f0d3da48472ff4e7c55d0e305901ec37a2f704 auf den HypeBears NFT-Vertrag. Nach der Untersuchung stellten wir fest, dass es sich um einen Reentrancy-Angriff handelte, der durch die Funktion _safeMint von ERC721 verursacht wurde.

Die Grundursache

Das Projekt hat eine Beschränkung für die Anzahl von NFTs, die ein Konto prägen kann. Im Wesentlichen gibt es eine Map addressMinted, die protokolliert, ob ein Konto NFTs geprägt hat.

Beim Prägen von NFTs verwendet der Code die _safeMint-Funktion der OZ-Referenzimplementierung. Diese Funktion ist "sicher", da sie prüft, ob der Empfänger ERC721-Token empfangen kann. Dies kann verhindern, dass ein NFT an einen Vertrag geprägt wird, der keine ERC721-Token verarbeiten kann. Laut der Dokumentation:

Wenn an an einen Smart Contract verwiesen wird, muss dieser IERC721Receiver.onERC721Received implementieren, die bei einer sicheren Übertragung aufgerufen wird. Der folgende Code zeigt die OZ-Implementierung der Funktion _safeMint:

Diese externe Funktionsaufruf schafft jedoch eine Sicherheitslücke. Insbesondere kann der Angreifer einen Reentrant-Aufruf innerhalb des onERC721Received-Callbacks durchführen. Zum Beispiel kann der Angreifer in dem verwundbaren HypeBears-Vertrag die Funktion mintNFT im onERC721Received-Callback erneut aufrufen (da addressMinted noch nicht aktualisiert wurde).

Der Angriff

Der folgende Screenshot zeigt die Angriffstransaktion.

Lektionen

Das von SafeMint ausgehende Risiko wurde von Sicherheitsexperten diskutiert Link1 Link2. Dennoch sehen wir immer noch verwundbaren Code und Angriffe in der Praxis. Wie bei safeTransfer im QBridge-Sicherheitsvorfall gezeigt, garantiert die Verwendung einer sicheren Funktion keinen sicheren Vertrag 😃.

Sign up for the latest updates
Drift Protocol Incident: Multisig Governance Compromise via Durable Nonce Exploitation
Security Insights

Drift Protocol Incident: Multisig Governance Compromise via Durable Nonce Exploitation

On April 1, 2026 (UTC), Drift Protocol on Solana suffered a $285.3M loss after an attacker exploited Solana's durable nonce mechanism to delay the execution of phished multisig approvals, ultimately transferring administrative control of the protocol's 2-of-5 Squads governance with zero timelock. With full admin privileges, the attacker created a malicious collateral market (CVT), inflated its oracle price, relaxed withdrawal protections, and drained USDC, JLP, SOL, cbBTC, and other assets through 31 rapid withdrawals in approximately 12 minutes. This incident highlights how durable nonce-based delayed execution can decouple signer intent from on-chain execution, bypassing the temporal assumptions that multisig security implicitly relies on.

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

Weekly Web3 Security Incident Roundup | Mar 23 – Mar 29, 2026

This BlockSec weekly security report covers eight DeFi attack incidents detected between March 23 and March 29, 2026, across Ethereum and BNB Chain, with total estimated losses of approximately $1.53M. Incidents include a $679K flawed burn mechanism exploit on the BCE token, a $512K spot-price manipulation attack on Cyrus Finance's PancakeSwap V3 liquidity withdrawal, a $133.5K flash-loan-driven referral reward manipulation on a TUR staking contract, and multiple integer overflow, reentrancy, and accounting error vulnerabilities in DeFi protocols. The report provides detailed vulnerability analysis and attack transaction breakdowns for each incident.

Newsletter -  March 2026
Security Insights

Newsletter - March 2026

In March 2026, the DeFi ecosystem experienced three major security incidents. Resolv Protocol lost ~$80M due to compromised privileged infrastructure keys, BitcoinReserveOffering suffered ~$2.7M from a double-minting logic flaw, and Venus Protocol incurred ~$2.15M following a donation attack combined with market manipulation.

Best Security Auditor for Web3

Validate design, code, and business logic before launch. Aligned with the highest industry security standards.

BlockSec Audit