EDAO Rug Pull
What happened
EDAO is a BNB Chain token at 0x900882Be…0495c9, deployed on 18 February 2023 by 0x98F21362…bDEc76, whose deploy transaction (0x1ccfde17…b5cb81) credited the entire 20,000,000,000 EDAO supply to the deployer. The owner can switch buying off for everyone who is not fee-exempt with setSwap(), and sells depend on the owner-chosen fee address: once the contract holds 10,000 EDAO in fees, each sell tries to pull that address's USDT back into the contract with transferFrom, so the sell reverts if the fee address has not approved it. Trades with the pool pay a 3-10% fee set by the pool's LP supply, which the owner cannot change.
CertiK reported on 25 March 2023 that EDAO had dropped more than 99% and that about $39,300 in BSC-USD had been transferred to two externally owned accounts. De.Fi's REKT database lists it as a rug pull in which the project team spread the initial mint across several addresses and sold it on 25 March, citing swaps by 0x6fb985e3…c51cda and a swap hash given in truncated form as 0x2a446751547b0b6d22209aec4e6944f81daab2a770c72203e789a8de3ed40.
How it happened
- The constructor sets
_tOwned[msg.sender] = _tTotal(20,000,000,000 EDAO), makes the deployer the fee addressusdtOwner, exempts it from fees and creates the USDT pair. setSwap()isonlyOwnerand flipsisSwap. While it is true, every non-exempt purchase from the pair hitsrequire(!isSwap, "can not buy")and reverts; sales are not affected by this switch.- On a non-exempt sell, once the contract holds at least
minsell(10,000 EDAO) in fees,_doSwapAndDividendswaps them to USDT forusdtOwnerand then callsIERC20(usdt).transferFrom(usdtOwner, address(this), usdtAmount). IfusdtOwnerhas not approved the token contract, that call reverts and the holder's sale fails with it. The owner can changeusdtOwnerat any time withSetFeeAddress. - Holders that the owner marks with
excludeFromFeeskip the fee, the buy switch and the fee swap entirely. - CertiK reported a price drop of more than 99% and about $39,300 in BSC-USD moved to two EOAs; De.Fi's listing attributes this to the team selling tokens from the initial mint.
Protocol details
Evidence
- report @CertiKAlert incident report twitter.com
- report CertiK Alert: price slippage on EDAO, dropped more than 99% twitter.com
- transaction EDAO contract creation transaction bscscan.com
- transaction bscscan.com transaction 0x9008…95c9 bscscan.com
- address EDAO verified contract code on BscScan bscscan.com
- analysis Sourcify match for 0x900882Be74c5Cb53eF02D603fCF006CDEf0495c9 on BNB Chain repo.sourcify.dev
Build your security review skills
Work through hands-on labs covering real exploit mechanics, review techniques, and defensive patterns.