xrpmoon Honeypot
What happened
xrpmoon is a BNB Smart Chain token whose transferFrom stores the recipient of the first call in a variable called newun, and from then on rejects every transfer or transferFrom addressed to that account with the message "please wait". Because a sale moves tokens to the liquidity pair, a pair captured as newun blocks selling while buying, which pays out from the pair, still works. The owner can overwrite newun at any time with transfernewun.
De.Fi's REKT database lists the token as an exit scam/honeypot, stating that the contract owner could disable the transfer function, which restricted users in selling their tokens.
How it happened
newunstarts as the zero address, andtransfernewun(address _newun)lets the owner set it to any address.- In
transferFrom, the lineif(from != address(0) && newun == address(0)) newun = to;runs on the first call: the recipient of that firsttransferFrombecomesnewunand that transfer goes through. - Every later
transferFromtakes theelse require(to != newun, "please wait");branch, andtransferhasrequire(to != newun, "please wait");, so any transfer whose recipient isnewunreverts. - If the captured recipient is the liquidity pair (as in a router-based liquidity add, where the router pulls tokens with
transferFrom), a holder's sale reverts. The balance is only debited after the check, so the revert leaves the holder's tokens untouched and unsellable. - Transfers to any other address, and transfers out of the pair, are not checked, so purchases are not blocked by this line.
- The owner can lift the block by pointing
newunat an unused address withtransfernewun, or re-arm capture by setting it back to the zero address, which makes the nexttransferFromcapture a new recipient. The file contains norenounceOwnership.
Protocol details
Evidence
- report Token Sniffer post cited as the De.Fi proof link (not accessible, 404 via fxtwitter; not relied on) twitter.com
- report Sourcify match of the same source repo.sourcify.dev
- address xrpmoon verified source on BscScan bscscan.com
- analysis Scam explained: BSC stealthy LP block cryptot3ddybear.gitlab.io
Build your security review skills
Work through hands-on labs covering real exploit mechanics, review techniques, and defensive patterns.