Wallet Drainer Explained 2026 โ How They Steal $200M+ Per Year
Wallet drainers are smart contracts designed to drain victim wallets after a single malicious signature. The most active drainer family in 2024-2025 (Inferno Drainer, later replaced by various successors) stole $200M+ before partial law-enforcement disruption. The attack works because of how Ethereum's token approval system was designed โ to be permissionless and gasless for future transfers. Once you sign an approval, the attacker can transfer the token any time, even years later. This guide explains the exact mechanism, the attack flow from initial click to drained wallet, and the 5 specific behaviors that prevent drainer losses.
By the end you'll understand approval drainers, Permit2 drainers, the new EIP-7702 account-abstraction risks, and which transactions are safe to sign vs which to absolutely refuse. Drainers exploit user behavior, not code bugs โ defense is therefore behavioral.
Updated May 2026. Includes EIP-7702 delegation drainer patterns observed in 2025.
What is a wallet drainer?
A drainer is a smart contract deployed by attackers, designed to: (1) trick the victim into signing a specific transaction; (2) use that signature to transfer the victim's tokens to the attacker. The drainer doesn't break encryption or steal seed phrases โ it exploits standard token approval mechanisms.
Modern drainers (Inferno, Pink Drainer, Angel) are sold as 'malware-as-a-service' โ anyone can rent a drainer contract, deploy a fake DApp, and start hunting. The drainer operator takes 20-30% of stolen funds; the affiliate keeps the rest.
How approval drainers actually work โ step by step
- Attacker deploys a malicious smart contract โ the drainer โ on Ethereum mainnet. The contract has standard token-transfer functions that look harmless to casual inspection.
- Attacker creates a fake DApp โ maybe cloned from Uniswap, OpenSea, or a project announcing an 'airdrop'.
- Victim visits the fake DApp via a search ad, compromised Twitter post, or Telegram link.
- Victim clicks 'connect wallet' (which gives the site read-only access to the address โ that part is safe).
- Victim clicks 'mint NFT' or 'claim airdrop'. MetaMask shows a signature request.
- The signature request, when decoded, is actually an ERC-20 approve() call granting the drainer contract unlimited spending permission on a specific token (often USDC, USDT, or WETH).
- Victim signs. The approval is now stored on-chain forever.
- Hours, days, or weeks later, the drainer contract calls transferFrom() to move the approved tokens from the victim's wallet to the attacker's wallet. No further victim interaction needed.
Why approval drainers are so hard to spot
Standard MetaMask signature requests show raw hex data plus a token name and amount. To a non-technical user, an approval signature for $1,000,000 of USDC looks similar to a routine approval for swapping $50 of USDC.
The fake DApp also obscures intent: 'Click to claim free NFT' bears no surface connection to 'sign a token approval'. The attack flow is socially engineered to maximize signature without comprehension.
Permit2 drainers โ the gasless variant
Permit2 is Uniswap's gasless approval system, designed to make trading cheaper. A single off-chain signature can authorize spending across many tokens. Drainers abuse this: a fake Uniswap interface gets you to sign a Permit2 signature that looks like a routine swap, but actually authorizes unlimited spending of every major token in your wallet.
Permit2 signatures are particularly dangerous because they don't show up in standard approval-list tools โ they're off-chain until the attacker submits them. Defense requires extra vigilance: don't sign Permit2 messages on sites you haven't deeply verified.
EIP-7702 drainers โ the 2025 frontier
EIP-7702 (live on Ethereum mainnet since 2025) allows externally-owned accounts (EOAs) to temporarily behave like smart-contract accounts. Used legitimately: better UX, batched transactions, gas sponsorship. Abused: attackers craft 7702 delegations that give a malicious contract control over your account for the duration of a single transaction โ long enough to drain everything.
Defense: don't sign 7702 delegations on unfamiliar sites. Modern wallets (Rabby, MetaMask 12+) show explicit warnings for 7702 signatures. Treat them as high-risk by default.
The 5 rules that prevent drainer attacks
- Bookmark every DApp. Always navigate to Uniswap, OpenSea, Aave via bookmark โ never search ads or social links.
- Use Rabby or wallet with transaction simulation. Rabby shows 'You will lose 1,000 USDC' before you sign. MetaMask shows hex. Switch to Rabby.
- Revoke approvals quarterly. Visit etherscan.io/tokenapprovalchecker or revoke.cash. Remove any approval you don't actively need.
- Read EVERY signature before approving. If you can't explain what the signature does in one sentence, don't sign.
- Hardware wallet for >$5,000 holdings. Even drainer signatures get filtered through the device screen โ you have one more chance to read what you're approving.
What to do if you've been drained
- Immediately move remaining funds to a fresh wallet with a new seed phrase. The drained wallet is permanently compromised โ any tokens with approvals to the drainer are at risk.
- Revoke all outstanding approvals on the compromised wallet via revoke.cash. This costs gas but prevents additional draining.
- Document the transaction hashes โ these are needed for tax loss claims and law enforcement reports.
- Report to IC3.gov (US), Action Fraud (UK), or your jurisdiction's equivalent. Slim chance of recovery but creates evidence.
- Report the drainer contract address to Etherscan, MetaMask phishing list, and security firms (ScamSniffer, GoPlus).
- Do not pay 'recovery services'. They are second-stage scams targeting drainer victims. Real recovery is via law enforcement, not paid services.
Why centralized exchanges don't have this problem
When you trade on Binance or Coinbase, you don't sign approval transactions for the exchange to move your funds โ the exchange holds the keys to your custodied account. The trade-off: you trust the exchange not to lose or freeze your funds (counterparty risk), but you don't expose yourself to approval drainer attacks.
Self-custody (MetaMask, hardware wallet) is the answer to exchange counterparty risk. Approval-drainer awareness is the cost of self-custody. Both models have risks; understanding them lets you balance.
Frequently asked questions
+Can a drainer steal my entire wallet from one signature?
Usually one signature drains one specific token (whatever was approved). But sophisticated drainers chain multiple permissions โ Permit2 signatures can authorize many tokens at once. Worst case: a single Permit2 signature drains every major token in your wallet.
+How do drainers find me?
Mostly by waiting for you to come to them. Fake DApp ads + compromised announcement posts attract victims. Some drainers also target wallets with substantial balances via spear-phishing โ fake job offers, fake support DMs.
+Can I undo an approval after I've signed?
Yes โ revoke it via revoke.cash or Etherscan's token approval checker. But there's a race condition: if the drainer has already executed the transfer between your signature and your revocation, you've already lost. Faster you revoke, better.
+Do hardware wallets prevent drainers?
Partially. Hardware wallets sign whatever you ask them to. They prevent your seed phrase from being stolen but don't prevent you from signing a drainer transaction. The device screen does give you one more chance to read what you're signing.
+What's Inferno Drainer?
The most successful drainer-as-a-service in 2023-2024, stealing $80M+. Partially shut down by law enforcement in late 2024. Successors (Pink Drainer, Angel) continue operating with similar mechanics.
+Is Permit2 inherently unsafe?
No โ it's a legitimate improvement when used correctly. The abuse is on fake DApps creating malicious Permit2 messages. Same approval mechanism, same abuse pattern, just gas-optimized.
+Are mobile wallets safer against drainers?
Slightly โ mobile wallets show fewer signature prompts in raw form, but the underlying approval mechanism is identical. Drainers work on mobile via in-app browsers same as desktop.
+Should I create a separate 'hot' wallet?
Yes โ best practice. Daily 'hot' wallet with small balance (under $500) for DeFi interactions; cold wallet (hardware) for everything else. If hot wallet is drained, loss is bounded.
Related articles