ZELDASWAP Honeypot

Reported loss Not disclosed
BNB Chain
Honeypot

What happened

ZELDASWAP (ZELDA) is a BEP-20 token on BNB Chain whose transfer function contains an owner-controlled sell block. Every transfer runs calculateFeesBeforeSend, which reverts with "Error: Can not sell this token" whenever the recipient is flagged in the PanCakeSwapReciever mapping. The owner can flag any address, such as the PancakeSwap pair, with setPanCakeSwapReciever, and nothing in the code limits or locks that setter.

Once the pair is flagged, holders can still buy but any sale into the pool reverts. De.Fi's REKT database lists the token as an exit scam/honeypot; no transaction evidence of losses was found.

How it happened

  1. The constructor mints 10,000,000,000 ZELDA to the deployer, who is also the owner.
  2. The owner can call setPanCakeSwapReciever(address, true) on any address. Unlike the fee whitelist setters, this function is not gated by canWhitelist, so renounceWhitelist does not disable it.
  3. Every transfer and transferFrom goes through _transfer, which calls calculateFeesBeforeSend. That function reverts with "Error: Can not sell this token" if PanCakeSwapReciever[recipient] is true.
  4. If the liquidity pair is flagged, a sale, which sends ZELDA to the pair, reverts for every sender, while buys, which send ZELDA from the pair to the buyer, still succeed.
  5. The txFee setter seTxFee has no effect on transfers, because calculateFeesBeforeSend always returns the full amount and a zero fee; the flagged-recipient revert is the only trading control.

Protocol details

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

Build your security review skills

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