TokenFox Honeypot

Reported loss Not disclosed
BNB Chain
Honeypot

What happened

TokenFox is a BNB Chain token deployed on 12 May 2021 at 0xe1782478…7c5e50 with 1 quadrillion tokens (3 decimals) credited to the deployer. Its transferFrom stores the recipient of the first call in a variable named newun, and from then on every transfer to that address fails with "please wait". When liquidity is added through the PancakeSwap router, that first recipient is the trading pair, so holders can buy but every sell reverts.

The owner can repoint newun at any time with transfernewun, and ownership has not been given up. De.Fi's REKT database lists TokenFox as an exit scam and honeypot, describing it as a contract where the owner could stop holders from selling; its proof link is a write-up of this exact newun pattern on earlier tokens.

How it happened

  1. The constructor credits the whole supply to the deployer: balances[owner] = _totalSupply;.
  2. On the first transferFrom from a non-zero address, the contract saves the recipient: if(from != address(0) && newun == address(0)) newun = to;. Adding liquidity through the router makes this call from the owner to the pair, so the pair would become newun.
  3. Every later transferFrom runs else require(to != newun, "please wait");, and transfer runs require(to != newun, "please wait");. A PancakeSwap sell moves tokens to the pair, so it reverts, while buys (transfers out of the pair) are unaffected.
  4. The check has no owner exemption, but the owner controls the blocked address through function transfernewun(address _newun) public onlyOwner { newun = _newun; } and can reopen or move the block.
  5. The owner can also withdraw any BNB sent to the contract with clearCNDAO().

Protocol details

Classification Token
Protocol Type Exit Scam/Honeypot
Affected asset / contract TokenFox

Build your security review skills

Work through hands-on labs covering real exploit mechanics, review techniques, and defensive patterns.