Iwr token Rug Pull
What happened
Iwr token (IWR) is a BNB Chain token deployed on 11 April 2023 at 0xB9934562…DcbFda by 0x1e3ab5c4…08e244, which is still its owner. Its owner can set the buy and sell taxes to any value with no cap, blacklist any address, and set a kill window during which every token bought from the pair is sent to the owner's address instead of the buyer. A sell tax above 100% makes every taxed sale revert, and a tax of exactly 100% credits none of the sold tokens to the pair, so the swap has nothing to sell.
CertiK reported on 12 April 2023 that a high sell tax prevented holders from selling and that the deployer removed about $34,000 from the liquidity pool. De.Fi's REKT database lists the liquidity removal transactions as 0x3f1b412d…e599b9 and 0x17d54b1e…8838c6, and says the deployer also sold tokens and the price fell by about 90%.
How it happened
- The constructor credits the whole supply to the
ownerargument and creates a pair against theusdtoken; the owner and the contract are excluded from fees and from the transaction and wallet limits. setSelTaxesandsetBuyTaxesareonlyOwnerand store any value with no upper bound, andsetSellDestFee/setBuyDestFeeadd a further uncapped burn fee.- On a sale,
_transferfirst debits the seller's full amount, thentakeFeecomputesamount.mul(_totalTaxIfSelling.sub(_sellDestroyFee)).div(100)and returnsamount.sub(feeAmount.add(destAmount).add(airdropAmount)). A total above 100% underflows and reverts the sale; exactly 100% sends the whole amount to the contract as fee and credits the pair with zero tokens. multipleBotlistAddresslets the owner flag any list of addresses, and_transferreverts when the sender or the recipient is flagged, so a flagged holder cannot sell or move tokens.setKingsetskillwith no limit; forkillblocks after liquidity is first added, every transfer out of the pair is redirected with_basicTransfer(sender, receiveAddress, amount), so buyers pay but the tokens go to the owner.- CertiK reported that a high sell tax stopped holders from selling and that the deployer removed about $34,000 from the pool.
Protocol details
Evidence
- report @CertiKAlert incident report twitter.com
- report CertiK Alert: large liquidity removal on Iwr token (IWR) twitter.com
- transaction IWR contract creation transaction bscscan.com
- transaction bscscan.com transaction 0x17d5…38c6 bscscan.com
- transaction bscscan.com transaction 0x3f1b…99b9 bscscan.com
- address iwr (IWR) verified contract code on BscScan bscscan.com
- address bscscan.com address 0x1e3a…e244 bscscan.com
- analysis Sourcify match for 0xB9934562D37E5a6C883dE7ce54d6fEBB36DcbFda on BNB Chain repo.sourcify.dev
Build your security review skills
Work through hands-on labs covering real exploit mechanics, review techniques, and defensive patterns.