Infinite Mint Attacks: How Unbacked Tokens Get Minted
Quick answer. An infinite mint is a contract issuing tokens with nothing behind them. Either the mint logic fails (a missing check, forged bridge message, broken math or bad price) or an attacker takes a key allowed to mint.
Video transcript
An infinite mint is a contract issuing tokens with nothing behind them. The attacker sells them into real liquidity, and holders absorb the loss.
In March 2026, an attacker minted 80 million unbacked USR from Resolv. Within 17 minutes, it traded at two and a half cents on its most liquid Curve pool, The Block reported.
In a logic-based mint, the code mints when it should not. In a key-based mint, the code works, but an attacker holds a key it trusts.
Guardian's public audit reports hold an example of each logic failure: missing access control, unchecked message types, broken math and bad price inputs. All four are marked resolved.
At Resolv, attackers reached a signing key through a contractor's GitHub credential, Rekt reported. The contract only checked for a valid signature, with no onchain cap. Multisig approval to pause took about three hours.
Cap minting onchain per transaction and per period, and mint against assets actually received. Fuzz the invariant that supply never exceeds backing, keep mint roles on multisigs, and alert on every mint.
Guardian has audited Ethena's onchain minting contracts. On USDT0, Guardian flagged Polygon migration transactions that would have left more USDT0 circulating than USDT backing it. The issue was fixed before they ran.
Read the full article for all five incidents and every control, or talk to Guardian at guardian.security.
Every token with a mint function has to keep one promise: supply never outgrows what backs it.
An infinite mint breaks that promise. The attacker prints tokens, sells them into real liquidity, and holders absorb the loss.
On March 22, 2026, an attacker minted 80 million unbacked USR from Resolv. Within 17 minutes, USR traded at $0.025 on its most liquid Curve pool, The Block reported.
Where Mint Paths Hide
Start with an inventory. Most tokens have more ways to mint than the obvious mint function.
- Deposit to mint: stablecoins and vault shares minted against collateral.
- Bridge mints: a contract mints when a message says tokens left another chain.
- Signed orders: an offchain service signs a mint, and the contract executes it.
- Rewards: farming and staking contracts that mint as they pay out.
- Minter roles: addresses allowed to mint directly.
- Launch and upgrade paths: init calls, and functions an upgrade exposes again.
Ask the same question of each path: what must be true before this mints, and does the code check it?
Logic Bugs vs Stolen Keys
Infinite mints fall into two families.
In a logic-based mint, the code mints when it should not. In a key-based mint, the code works as written, and the attacker holds a key it trusts.
Four logic failures
Guardian's public audit reports hold an example of each. All four are marked resolved.
| Root cause | What goes wrong | Guardian finding |
|---|---|---|
| Missing access control | Anyone can call a mint path | Buttonwood C-02 |
| Unchecked message type | A withdrawal message credits a deposit | Orderly C-02 |
| Broken math | Scaling or overflow mints far too much | Olympus C-01 |
| Bad price inputs | An inflated price creates unbacked collateral | Veranta C-03 |
At Buttonwood, anyone could call a deploy callback with zero collateral and a huge borrow amount. The contract minted that amount in Consol tokens to the caller.
Our access control guide covers this pattern in depth.
At Orderly, a withdrawal could carry a deposit payload. The ledger then credited a deposit with no tokens behind it.
At Olympus, conversion scaled by the wrong decimals. With an 18-decimal reserve token, users would have received a billion times more OHM than intended.
At Veranta, a price update missing its exponent inflated prices by 1e8. Guardian's proof of concept turned a $1 deposit into over $20,000 of collateral.
Key-based mints
Here the code is fine, and the mint role is the weak point.
An attacker with a minter, signer or upgrade key can mint as much as the code allows, often without limit.
Two choices decide the damage: who holds the key, and whether anything onchain limits what it can mint.
Five Infinite Mint Incidents
| Incident | Date | Minted | Family |
|---|---|---|---|
| Cover Protocol | December 2020 | About 40.8 quintillion COVER | Logic: rewards math |
| Wormhole | February 2022 | 120,000 wETH | Logic: signature check |
| Gala Games | May 2024 | 5 billion GALA | Key: dormant minter |
| Truebit | January 2026 | Over 240 million TRU | Logic: overflow |
| Resolv | March 2026 | 80 million USR | Key, with no onchain cap |
Amounts are as reported at the time, before any recovery.
Cover Protocol, December 2020
On December 28, 2020, Cover's Blacksmith farming contract minted rewards without limit. Rekt traced it to a storage and memory issue, triggered with a 1 wei balance.
COVER's supply rose from 84,477 to about 40.8 quintillion. Rekt put the damage at $9.4 million, with $3.2 million recovered.
Wormhole, February 2022
Wormhole's Solana contract did not properly verify an account address used in its signature check. With a fake account, the attacker passed the check.
It then minted 120,000 wETH with no ETH behind it, about $326 million, per Rekt. Wormhole restored the 1:1 backing within a day.
Our bridge security guide covers how message checks fail.
Gala Games, May 2024
An attacker took control of a minter account on the GALA contract that "had not been used for 180 days," Rekt reported. It minted 5 billion GALA, nominally $216 million.
The attacker sold 592 million GALA for $21.8 million in ETH. Gala blocklisted the account 2 hours and 16 minutes later, and the funds were sent back the next day.
Truebit, January 2026
On January 8, 2026, an attacker hit Truebit's purchase contract. Its Solidity version "predates automatic overflow checks," Rekt noted.
An unguarded addition in getPurchasePrice overflowed, so huge mints cost almost nothing.
The attacker minted over 240 million TRU and burned them for 8,535 ETH, about $26.2 million, per Rekt.
Rekt notes that no supply cap or per-transaction limit stopped the loop.
Resolv, March 2026
USR minting relied on a privileged signing key stored in Resolv's cloud infrastructure, per Rekt. Attackers reached it through a GitHub credential linked to a contractor's account.
The contract checked only that a valid signature existed. Nothing onchain capped what the key could authorize, Rekt reported.
With two deposits of 100,000 USDC, the attacker minted 80 million USR. About $25 million was extracted, The Block and Rekt reported.
Pausing needed multisig approval, which took about three hours to assemble, according to Rekt.
Mint Caps and Controls
No single control stops every case. Together, they turn an infinite mint into a bounded one.
In the code
- Cap minting onchain, per transaction and per period, even for trusted signers.
- Check signed mint orders onchain: amount against deposit, price bounds and expiry.
- Mint against assets actually received, measured by balance change.
- Assert the real
totalSupplyafter setup mints (Clanker, High). - Require every price field, and bound every oracle input that values collateral.
- Write "supply never exceeds backing" as an invariant, and fuzz it from empty pools.
- Rate-limit bridge mints per route, sized to normal flow.
Keys and roles
- Put minter, signer and upgrade roles on multisigs or timelocks, never a single key.
- Remove unused minters. Gala's had sat idle for 180 days.
- Re-list every mint path after each upgrade (USDT0, Info).
- Let a single pauser key stop minting fast, and keep unpausing on a multisig.
Monitoring
- Alert on every mint, role change and upgrade, on every chain.
- Check total supply against the cap and against backing, on every chain.
- Pause automatically when supply and backing diverge.
Rekt quotes the lesson Chainalysis drew from Resolv: "Real-time monitoring and automated response mechanisms are now a necessity, not a luxury."
Our guide to onchain monitoring shows what to watch.
How Guardian Tests Mint Paths
A Guardian smart contract audit builds invariant suites around solvency and accounting. Senior researchers then attack privileged flows, oracles and upgrade paths.
Guardian's largest Ethena scope was its onchain minting contracts: the minting system, the xUSD OFT bridge and rate limiter, and oracle feeds, with invariant fuzzing over the bridge path.
Since February 2025, Guardian has verified every step of USDT0's omnichain rollout.
On Polygon in August 2025, the queued migration transactions would have left more USDT0 circulating than USDT backing it. Guardian flagged it (I-04), and it was fixed before they ran.
After launch, Managed Security monitors contracts on every block, including privileged calls, role changes, upgrades and large fund movements.
Frequently Asked Questions
What is an infinite mint attack?
An attack that makes a contract create tokens with nothing behind them, which the attacker then sells into real liquidity. It comes from a bug in the mint logic or from a stolen key that is allowed to mint.
What is the difference between logic-based and key-based infinite mints?
In a logic-based mint, the code mints when it should not, as at Wormhole and Truebit. In a key-based mint, the code works as written, but an attacker controls a key it trusts, as at Gala Games and Resolv.
How do you prevent infinite mint exploits?
Cap minting onchain per transaction and per period, check every input to a mint, and keep mint roles on multisigs. Fuzz a "supply never exceeds backing" invariant, and alert on every mint and supply change.
Why are bridges exposed to infinite mints?
A bridge mints on the destination chain when a message says tokens left the source chain. If it accepts a forged message, it mints tokens that nothing backs, as Wormhole did in 2022.
Sources
- The Block: Resolv's USR Stablecoin Depegs After Attacker Mints 80 Million Unbacked Tokens, Extracts Roughly $25 Million (March 22, 2026)
- Rekt: Resolv Labs, Rekt (April 7, 2026)
- Rekt: Cover Protocol, Rekt (December 29, 2020)
- Rekt: Wormhole, Rekt (February 3, 2022)
- Rekt: Gala Games, Rekt (May 21, 2024)
- Rekt: Truebit, Rekt (January 12, 2026)
- Guardian: Buttonwood Cash (October 1, 2025)
- Guardian: Orderly Cross-Chain Yield Vault (February 24, 2025)
- Guardian: Olympus Convertible Deposits (September 16, 2025)
- Guardian: Veranta V2 Review (October 26, 2026)
- Guardian: Clanker Protocol Review (August 5, 2026)
- Guardian: USDT0 IERC7802 Support (March 12, 2025)
- Guardian: USDT0 Polygon Deployment and Peer Verification (August 7, 2025)
- Guardian: USDT0 Deployment and Configuration Verification case study
- Guardian: Securing Ethena's Ecosystem, client story
- Guardian: Managed Security
Cap every path that can mint
Guardian maps every mint path in your contracts, fuzzes supply against backing, and checks every deployment and upgrade before it goes live.