Q DAO Governance token v2.0 Honeypot
What happened
Q DAO Governance token v2.0 (QDAO) is a BNB Chain token deployed on 26 March 2021 at 0xa219a553…b686f2 by 0x865027ad…104511. Its transferFrom stores the recipient of the first transferFrom call in a variable called newun and then rejects every later transferFrom or transfer to that address with the message "please wait". Adding liquidity through the PancakeSwap router is normally that first call, so newun becomes the pair: buyers can receive QDAO from the pool, but any sale into the pool reverts.
The owner can also point newun at any address with transfernewun. De.Fi's REKT database lists QDAO as a honeypot with $2,544 lost and says the deployer added liquidity in transaction 0x31fa716c…c54e14 and removed it in 0x3ae83336…b0c2ea. A researcher documented the same newun code in other BSC honeypot tokens in April 2021.
How it happened
- The constructor credits the full 30,000 QDAO supply to the deployer, who is
owner;newunstarts as the zero address. - In
transferFrom, the lineif(from != address(0) && newun == address(0)) newun = to;saves the recipient of the firsttransferFromasnewun. When the owner adds liquidity through the router, the router moves tokens withtransferFrom(owner, pair, ...), so the pair becomesnewun. - Every later
transferFromrunselse require(to != newun, "please wait");, andtransferstarts withrequire(to != newun, "please wait");. A PancakeSwap sale sends tokens to the pair throughtransferFrom, so it reverts, while buys, where the pair sends tokens out withtransfer, still work. transfernewun(address _newun)isonlyOwner, so the owner can change which address is blocked at any time. The contract has norenounceOwnership; ownership can only move throughtransferOwnershipandacceptOwnership.- Removing liquidity does not send QDAO to the pair, so the LP holder can still withdraw the pool's BNB. De.Fi reports that the deployer did so.
Protocol details
Evidence
- report @Token_Sniffer incident report twitter.com
- transaction QDAO contract creation transaction bscscan.com
- transaction bscscan.com transaction 0x31fa…4e14 bscscan.com
- transaction bscscan.com transaction 0x3ae8…c2ea bscscan.com
- address Q DAO Governance token v2.0 (QDAO) verified contract code on BscScan bscscan.com
- analysis Scam explained: BSC stealthy LP block cryptot3ddybear.gitlab.io
- analysis Sourcify match for 0xa219a55344ed4ffc16c4e3c84de24a3b21b686f2 on BNB Chain repo.sourcify.dev
- analysis De.Fi REKT database listing for QDAO de.fi
Understand the attack patterns
Build your security review skills
Work through hands-on labs covering real exploit mechanics, review techniques, and defensive patterns.