Risk level: Critical
Target audience: DeFi users, swap traders, BSC users
Meet Chioma
Chioma is a 26-year-old DeFi trader active on Binance Smart Chain (BSC). She trades regularly on PancakeSwap, looking for yield opportunities and token swaps. She’s comfortable with wallets, knows what approvals are, and has been using DeFi for about a year. One afternoon, she sees a post on Twitter about a new token “OptiMoon” that’s launching on PancakeSwap. The chart looks bullish, and early traders are sharing screenshots of trades. She wants to buy some. She searches “PancakeSwap” in Google and clicks what appears to be the official link.What Happened
Step 1: The Clone Site
The site Chioma lands on looks like PancakeSwap:- Same color scheme (purple and green)
- Same layout
- Same token search functionality
- Same trading interface
pancakeswap.financeFake:
pancakswap-finance.io
The attacker removed an “e” from “pancake,” making it “pancak.” It’s easy to miss, especially on mobile.
The site is fully functional. It even connects to a real blockchain backend (for transparency and to avoid suspicion). But the swap interface routes trades through a hidden drainer contract.
Step 2: The First Swap Attempt
Chioma connects her MetaMask wallet to what she thinks is PancakeSwap. She searches for “OptiMoon” token and finds a trading pair: OptiMoon/BUSD. She wants to buy ₦500,000 worth of OptiMoon. She enters the amount and clicks “Approve” to allow PancakeSwap to spend her BUSD. MetaMask pops up:“Do you want to give permission for spending your BUSD? Spender: 0x1234abcd… (Token Spend Approval) Amount: Unlimited”Chioma notices the amount is “Unlimited” instead of the specific ₦500,000 she requested. This is already a red flag, but it’s common for dApps to request unlimited approvals. She’s seen this before. She clicks “Approve.”
Step 3: The Hidden Trap
What Chioma doesn’t realize is that the “spender” contract address is not PancakeSwap’s router. It’s a custom drainer contract controlled by the attacker. By clicking “Approve,” she’s granted unlimited spending rights to the attacker’s contract, not to PancakeSwap. The fake site processes the approval and then displays:“Swap confirmed. You will receive OptiMoon tokens in 1-2 minutes.”But that’s a lie. No swap is happening. Instead, the attacker’s script immediately uses the approval to drain her wallet: Transaction 1: Move all BUSD to attacker’s address
Transaction 2: Move all USDC to attacker’s address
Transaction 3: Move all ETH to attacker’s address
Transaction 4: Move any other tokens to attacker’s address Within 90 seconds, Chioma’s wallet—which had ₦2.8 million across various tokens—is empty.
Step 4: The Realization
Chioma’s wallet notifications show multiple outbound transactions she didn’t initiate. She realizes the fake site drained her. She checks BscScan and sees her address has been the target of unauthorizedtransferFrom() calls using the approval she signed.
She lost ₦2.8 million, mostly BUSD and USDC stablecoins that she had been holding as operational capital.
This is the exact pattern of wallet drainer scams that exploded in 2023-2024. The attack is simple: clone a popular dApp, trick users into approving a malicious contract, then drain everything.
Where the Scammer Won
What Chioma Could Have Done (Prevention)
Before Connecting Your Wallet
pancakeswap.finance. Fake: pancakswap-finance.io (missing “e”, different TLD).Before Approving Any Contract
Best Practice: Verification Workflow
Verify the Domain
Check the SSL Certificate
Use Transaction Simulation
Check the Contract Address
Test with Small Amount
Keep Most Funds in Cold Storage
Red Flags Chioma Missed
If You Already Approved a Malicious Contract
Revoke the Approval Immediately
Move Remaining Funds to a New Wallet Immediately
Preserve Evidence
Report
Do Not Engage with Recovery Services
How Wallet Drainers Work (Technical Breakdown)
A drainer attack follows this sequence:Step 1: Site Creation
Step 1: Site Creation
Step 2: Contract Deployment
Step 2: Contract Deployment
transferFrom() or transferFromBatch() functions.Step 3: Approval Request
Step 3: Approval Request
Step 4: Automated Drainage
Step 4: Automated Drainage
Step 5: Laundering
Step 5: Laundering
Notable Drainer Example
MS Drainer (2023)
Action Steps
Prevention
Use Browser Bookmarks
Use Browser Bookmarks
Type Domains Manually
Type Domains Manually
Use Wallet Transaction Simulation
Use Wallet Transaction Simulation
Verify Contract Addresses
Verify Contract Addresses
Approve Specific Amounts
Approve Specific Amounts
Test with Small Amounts
Test with Small Amounts
Keep Hot Wallet Balance Minimal
Keep Hot Wallet Balance Minimal
If Drained
Revoke Approvals
Create New Wallet
Report
Preserve Evidence
Related Resources
Grant Phishing + Wallet Drainer
NFT Mint Drainer
Hacks Category
Check Your Wallet
References
- Wallet drainer case study: MS Drainer, $59M stolen
- Transaction simulation tools: Rabby Wallet, Fire Wallet, MetaMask Snaps
- Token approval verification: BscScan, EtherScan, Revoke.cash
- Domain verification: SSL certificates, manual typing, bookmarks