ShibaElonMars Honeypot
What happened
ShibaElonMars (SEM) at 0x874506cb…e0941e is a BNB Smart Chain token whose code blocks transfers into one stored address, which in a normal pool setup is the liquidity pair. The first transferFrom call from a non-zero address writes its recipient into 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 becomes
ownerand receives the whole supply (balances[owner] = _totalSupply;, 1000000000000000 units withdecimals = 0). - The variable
newunstarts at the zero address. IntransferFrom,if(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. - After that,
transferrunsrequire(to != newun, "please wait");andtransferFromtakes theelse require(to != newun, "please wait");branch. A sell through a router callstransferFrom(holder, pair, amount), so it reverts beforebalances[from]is reduced and the holder keeps their tokens but cannot exit through the pair. - Buys are transfers from the pair to the buyer (
tois the buyer, notnewun), so they succeed, as do wallet-to-wallet transfers. The pair is the only destination that is blocked. transfernewun(address _newun)isonlyOwnerand overwritesnewun. Pointing it at an unused address lifts the block; setting it to the zero address would let the nexttransferFromcapture a new recipient. The contract hastransferOwnership/acceptOwnershipbut no renounce function. 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 (_owner.transfer(address(this).balance);); it does not touch token balances or pool liquidity.
Protocol details
Evidence
- report @Token_Sniffer incident report twitter.com
- address BscScan verified source for ShibaElonMars (SEM) 0x874506cba7e8050a5291b9dbba83f5f2a7e0941e bscscan.com
- analysis Scam explained: BSC stealthy LP block cryptot3ddybear.gitlab.io
- analysis Sourcify match for chain 56 contract 0x874506cba7e8050a5291b9dbba83f5f2a7e0941e repo.sourcify.dev
Build your security review skills
Work through hands-on labs covering real exploit mechanics, review techniques, and defensive patterns.