India Pale Ale Honeypot
What happened
India Pale Ale (IPA) is a BEP-20 token on BNB Chain whose transfer and transferFrom both revert with "please wait" for any transfer to an address stored in the newun variable. The first transferFrom call while newun is empty stores its recipient in newun, so whichever address first receives tokens through transferFrom (typically how a router moves tokens into a liquidity pair) becomes a destination nobody can send tokens to. The contract owner can also overwrite newun with transfernewun.
De.Fi's REKT database lists the token as an exit scam/honeypot on 2021-05-03 and describes the owner as able to disable the transfer function so users could not sell; no loss amount is listed.
How it happened
- The owner deploys
TokenBEP20with the nameIndia Pale Ale, symbolIPA, 9 decimals and a supply of 100000000000000000 base units, all credited to the owner.newunstarts as the zero address. - In
transferFrom, the lineif(from != address(0) && newun == address(0)) newun = to;stores the recipient of the firsttransferFromasnewun. Nothing is checked on that first call, so it goes through. - From then on, every
transferFromtakes theelse require(to != newun, "please wait");branch, andtransferrunsrequire(to != newun, "please wait");. Any transfer whose recipient isnewunreverts, and neither check has an exception for the owner or any other address. - A holder can still receive tokens from
newunand move them elsewhere, but cannot send tokens to it. Ifnewunis the liquidity pair, that blocks selling into the pool while buying continues to work. The source does not say which addressnewunholds; that depends on who made the firsttransferFromcall, which would need a transaction to confirm. - The owner controls the block through
function transfernewun(address _newun) public onlyOwner { newun = _newun; }. Pointing it at an unused address lifts the block. Setting it to the zero address instead re-arms capture, because the nexttransferFromwould overwrite it again. The source has no function that renounces ownership.
Protocol details
Evidence
- report De.Fi REKT database listing (as imported: proof links Token Sniffer tweet and a CryptoT3ddyBear blog post) twitter.com
- report India Pale Ale (IPA) source copy, Sourcify repo.sourcify.dev
- address India Pale Ale (IPA) verified source, BscScan bscscan.com
- analysis Scam explained: BSC stealthy LP block (CryptoT3ddyBear) cryptot3ddybear.gitlab.io
Build your security review skills
Work through hands-on labs covering real exploit mechanics, review techniques, and defensive patterns.