Internet Computer Honeypot
What happened
Internet Computer (ICP) at 0x30969b71…788ba9 is a BNB Smart Chain token whose code blocks transfers into one address, which in a normal pool setup is the liquidity pair. The first transferFrom call from a non-zero address stores its recipient in newun, and every later transfer or transferFrom to that address reverts with "please wait". Buying from the pair still works, while selling (which moves tokens into the pair) fails.
De.Fi's REKT database lists the token as an exit scam/honeypot in which the owner could disable the transfer function and stop users from selling.
How it happened
- The deployer creates the token (
symbol = "ICP",name = "Internet Computer") and the full supply1000000000000000000000is credited toowner. The source header claims a Binance listing, a locked LP and a 50% burn; none of this is enforced in code. - The variable
newunstarts as the zero address. IntransferFrom, the lineif(from != address(0) && newun == address(0)) newun = to;stores the recipient of the first such call. When liquidity is added through a router, that recipient is the trading pair. - From then on, both transfer paths refuse to send tokens to
newun:require(to != newun, "please wait");intransfer, and the samerequirein theelsebranch oftransferFrom. A sell through a router callstransferFrom(holder, pair, amount), so it reverts. A holder's balance is never debited because the revert happens beforebalances[from]is reduced. - Transfers from the pair to buyers go through
transferwith the buyer asto, which is allowed, and wallet-to-wallet transfers are unaffected. Holders can therefore acquire and move tokens but cannot sell into the pair. transfernewun(address _newun)isonlyOwnerand can overwritenewun. Pointing it at an unused address would lift the block; setting it to the zero address would let the nexttransferFromcapture a new recipient. Ownership has norenounceOwnership, onlytransferOwnership/acceptOwnership. No transaction showing the owner callingtransfernewunwas opened, so what the owner actually did is not established here.clearCNDAO()lets the owner send the contract's own BNB balance to themselves. It does not move token balances or pool liquidity.
Protocol details
Evidence
- report @Token_Sniffer incident report twitter.com
- address BscScan verified source for Internet Computer (ICP) 0x30969b71b2414772b70740fbb1139cd83c788ba9 bscscan.com
- analysis Scam explained: BSC stealthy LP block cryptot3ddybear.gitlab.io
- analysis Sourcify full match for chain 56 contract 0x30969b71b2414772b70740fbb1139cd83c788ba9 repo.sourcify.dev
Build your security review skills
Work through hands-on labs covering real exploit mechanics, review techniques, and defensive patterns.