Crypto Security 2026

Wallet Drainer Attacks in 2026: How They Work and How to Revoke Approvals Before They Strike

Wallet drainers have stolen over $400M in 2025–2026 using approval and permit exploits. Learn exactly how they operate, how to revoke malicious approvals, and the security habits that keep your crypto safe.

Jump to section: How drainers work Revoke approvals Permit signature attacks Prevention FAQ

Loading...

Wallet drainer attacks are the most common and devastating crypto security threat in 2026. Unlike exchange hacks or private key brute‑forcing, drainers exploit a feature you use every day: token approvals. When you connect your wallet to a DeFi app or swap site, you grant permission for that contract to move your tokens. A malicious site can request unlimited approval — and then drain every token you own. This guide explains how approval‑based drainers work, how to detect and revoke dangerous approvals using tools like Revoke.cash, the insidious EIP‑2612 permit signature attack that bypasses approval revocation, and a practical security routine that prevents theft even if you accidentally connect to a phishing site.

$412M
Lost to wallet drainers (2025–2026)
87%
Of drainer victims had unlimited approvals active
15 min
Average time to drain after approval

🕳️ How Approval‑Based Wallet Drainers Work

A wallet drainer is a malicious smart contract or script that, once your wallet approves it, can transfer your tokens out. The attack chain is simple but devastating:

  1. Lure – You click a phishing link (fake airdrop, fake site that looks like Uniswap, OpenSea, or a new DeFi protocol). The site asks you to "connect wallet".
  2. Approval request – Instead of a standard connection, the site requests a token approval transaction (ERC‑20 approve function) for a large or unlimited amount.
  3. Signature – You sign the approval transaction in your wallet (MetaMask, Trust Wallet, etc.). Because the request looks similar to a regular transaction, many users approve without reading the details.
  4. Drain – The attacker’s contract calls transferFrom() using the approval you granted, moving your tokens to the attacker’s address. This can happen instantly or be delayed to avoid suspicion.

The key is the approve() function in ERC‑20 tokens. When you set spender to a contract address and amount to 2^256-1 (max uint256), that contract can take any amount of that token from your wallet at any future time. Most drainer attacks use exactly this — an unlimited approval.

Real attack: Fake airdrop drains $2.5M

In January 2026, a phishing site impersonating a popular L2 airdrop asked users to "claim tokens" by approving a malicious contract. Over 1,200 wallets approved unlimited spending on USDC and ETH. The drainer script ran two days later, stealing $2.5M before victims realised. All victims had active unlimited approvals.

🛡️ Revoke.cash: How to Audit and Revoke Dangerous Approvals

Approvals are permanent until revoked. If you’ve ever used a DeFi protocol, a swap aggregator, or an NFT marketplace, you likely have active approvals sitting on the blockchain. Revoke.cash is the industry standard tool to see and cancel them.

How to use Revoke.cash (step by step):

  1. Go to revoke.cash (always verify the URL – phishing clones exist).
  2. Connect your wallet (Ledger, Trezor, MetaMask, Rabby, etc.).
  3. The dashboard displays all active token approvals across Ethereum, BSC, Polygon, Arbitrum, Optimism, and 30+ other chains.
  4. For each approval, you see: token, spender contract address, approved amount (e.g., "Unlimited" or "1,000 USDC"), and last used date.
  5. Click "Revoke" next to any approval you don’t recognise or no longer need. You’ll pay a gas fee (approx $2–$10 depending on network congestion).

Best practice: run Revoke.cash every 2–4 weeks, especially after interacting with new protocols. Remove all unlimited approvals to contracts you don’t use daily.

🛠️ Approval Revocation Tools (2026)
ToolChains supportedBatch revokeGas estimation
Revoke.cash30+ EVM chainsYesYes
Etherscan Token ApprovalsEthereum onlyNoNo
Rabby Wallet built-inAll EVMYesYes
Unrekt.net10+ chainsLimitedYes

For a deeper understanding of wallet security, read our hardware wallet setup guide – using a hardware wallet (Ledger/Trezor) does not automatically protect you from approval drainers, but it adds an extra physical confirmation step that can stop blind signing.

✍️ EIP‑2612 Permit Signature Attacks: The Approval Bypass

In 2025–2026, a new generation of drainers uses EIP‑2612 (permit) signatures. This standard allows a user to approve a spender via an off‑chain signature, without sending an on‑chain approval transaction. The attacker only needs you to sign a message – no gas, no approval transaction visible in your wallet history. The signature is then submitted on‑chain by the attacker, and your tokens are drained instantly.

How it works:

  • You visit a phishing site and connect your wallet.
  • The site shows a pop‑up requesting a signature (often disguised as "login" or "verify wallet").
  • The signature is a permit message for a specific token (USDC, DAI, UNI, etc.) granting unlimited spending.
  • Because permit signatures are off‑chain, your wallet may not show a clear warning. Many users sign without realising they’ve granted approval.
  • The attacker broadcasts the signed permit to the network, and the token is transferred out.

Permit attacks are dangerous because they leave no on‑chain approval to revoke – the drain happens instantly after the signature. The only protection is to never sign messages from untrusted sites and to use wallets that decode permit requests clearly (Rabby wallet does this well).

How to spot a permit signature attack

If a site asks you to sign a message that contains "Permit", "EIP‑2612", "approve", or a token address, treat it as highly suspicious. Legitimate permit signatures are used by some DeFi protocols (e.g., Uniswap permit2), but only from sites you fully trust. Always verify the domain and the exact message content in your wallet’s detailed view.

🕵️ How to Detect Phishing Sites and Drainers Before Connecting

Prevention is better than revocation. Train yourself to recognise drainer infrastructure:

  • Check the URL carefully – Drainers use homoglyphs (e.g., “unlswap.com” instead of “uniswap.org”) or very long subdomains. Bookmark official sites.
  • Use Ethereum Name Service (ENS) verification – Major protocols have ENS names (uniswap.eth, aave.eth). Verify the ENS before connecting.
  • Scan with Token Sniffer or GoPlus – Before approving any contract, paste its address into GoPlus or Token Sniffer. They flag known malicious contracts.
  • Test with a burner wallet – For high‑risk interactions (new airdrops, unaudited projects), use a separate wallet with minimal funds.
  • Check social media and GitHub – Real protocols have active communities and verified code. Phishing sites often have broken social links and no GitHub history.

For a broader view of crypto scams, see our complete guide to crypto scams in 2026 – it covers pig butchering, fake exchange impersonation, and 8 other common schemes.

🔐 Security Hygiene: How to Never Get Drained

Adopt these habits to make drainer attacks ineffective against you:

  • Use a hardware wallet + Revoke.cash routine – Hardware wallets don’t prevent approval abuse, but they require physical confirmation. Combined with monthly revokes, you minimise exposure.
  • Set approval limits, not unlimited – Many DeFi protocols allow you to set a custom approval amount (e.g., approve only 1,000 USDC instead of unlimited). Use this feature whenever possible. Wallets like Rabby and Zerion highlight unlimited approvals and warn you.
  • Revoke approvals after each use – For high‑value tokens, revoke the approval immediately after swapping or providing liquidity. Gas fees are worth the safety.
  • Use a separate wallet for high‑value storage – Keep 90%+ of your crypto in a wallet that never interacts with dApps or signs any message. Only use a “hot wallet” for DeFi and trading.
  • Enable wallet security features – MetaMask: turn on “Enhanced Gas Fee UI” and “Show Conversion”. Rabby: enable “Security Alert” for permit signatures. Block wallets that don’t decode transactions clearly.
  • Never sign messages from pop‑ups – Legitimate dApps rarely ask for random signatures. When in doubt, reject and verify the request on the project’s official Discord or Twitter.
Advanced protection
Multisig Wallets for Crypto in 2026: How They Work, When to Use Them and the Best Options

For high‑net‑worth individuals or DAOs, multisig (e.g., Safe) requires multiple approvals for any transfer – completely immune to single‑key drainer attacks.

If you suspect you’ve already approved a drainer contract, revoke immediately on Revoke.cash. Then move any remaining funds to a new wallet with a new seed phrase. Do not just revoke – the attacker may have already queued transactions.

❓ Frequently Asked Questions

Partially. A hardware wallet requires physical confirmation for every transaction, including approvals. If you verify each approval on the device screen and reject unlimited approvals, you are safe. However, many users blindly approve on hardware wallets too – the device cannot read the contract’s intent, only the raw transaction data. Always check the spender address and approval amount on your Ledger/Trezor screen.
Standard approval is an on‑chain transaction that costs gas and appears in your wallet history. Permit (EIP‑2612) is an off‑chain signature that the attacker submits on‑chain later. Permit attacks are harder to detect because you never send an approval transaction – you only sign a message. The drain happens instantly after the attacker broadcasts the signature.
For active DeFi users, revoke unlimited approvals every 2 weeks. For casual users, once per month is sufficient. Always revoke after using a new or unaudited protocol. You can also set approval limits (e.g., 500 USDC) instead of unlimited – then revocation is less urgent.
No. Approval‑based drainers can only move tokens for which you have granted approval to the malicious contract. They cannot steal tokens from other chains or tokens that you never approved. However, a malicious site might request approvals for multiple tokens at once (e.g., USDC, ETH, DAI) – so always check what you’re approving.
Yes, Revoke.cash is open‑source and non‑custodial. It never has access to your private keys. It simply reads your approval data from the blockchain and broadcasts revocation transactions that you sign with your wallet. However, always verify the URL – phishing clones exist. The official domain is revoke.cash.
First, revoke all approvals on Revoke.cash to stop further losses. Second, move any remaining funds to a completely new wallet (generate a new seed phrase). Third, do not interact with any “recovery” services – they are almost always scams. Finally, report the incident to the chain’s block explorer (e.g., Etherscan) and to the FBI’s IC3 if the amount is significant.