Fake Ethena Labs Rug Pull
What happened
This "Ethena Labs" (ENA) token on BNB Chain copied the name and ticker of Ethena's token but was not issued by Ethena. Its contract does not keep balances on its own: on every transfer it asks a separate contract, whose address was passed in at deployment and whose code is not part of this verified source, what the sender's balance should be, and stores whatever that contract returns. Whoever controls that contract can therefore give an address a balance it never received or leave a holder unable to sell.
On 29 March 2024 PeckShield reported a loss of 480 BNB (about 290,000 USD) on the token, and Decurity replied that it was a scam token created 17 hours earlier, not the real Ethena. De.Fi's REKT database lists it as an exit scam in which the deployer dumped tokens on PancakeSwap.
How it happened
- The constructor stores an address taken from a deployment argument:
IWFIpAVOYnOUOnOIEopbM = (address(uint160(aqzxkwg)));. The obfuscated names hide that this is an external controller contract. - In
_transfer, before any balance check, the sender's balance is overwritten with the controller's answer:_balance[jurbnshafrom] = _4b5600ccc(jurbnshafrom, ynziirggto, amount, _balance[jurbnshafrom]);, and_4b5600cccsimply callsa1c29f34eb3c(sender, to, amount, balance)on the controller. - Because the stored balance is replaced rather than checked, the controller can return a huge balance for its own addresses, letting them sell tokens that were never minted, or return less than the amount for any other holder so the next line,
require(_balance[jurbnshafrom] >= amount, ...), reverts their sale. approvealso calls the controller with the owner and spender throughqamrasfd(sender, to), so the controller is told every time a holder approves a router to sell.- The
Ownableowner reads as the zero address today, but that does not remove any of this: none of these paths useonlyOwner, and the controller address cannot be changed or disabled. - On 29 March 2024, about 17 hours after deployment, a sale on PancakeSwap (0x577e978e…272d90) took about 480 BNB from the market, which PeckShield first reported as an exploit of "$ENA (Ethena Labs)".
Protocol details
Evidence
- report Decurity reply: the victim is a scam token, not Ethena twitter.com
- report PeckShield Alert: $ENA (Ethena Labs) on BNB Chain, 480 BNB twitter.com
- transaction bscscan.com transaction 0x577e…2d90 bscscan.com
- address TOKEN (Ethena Labs, ENA) verified source code bscscan.com
- address bscscan.com address 0x7dae…312e bscscan.com
- analysis Sourcify match for 0xc2902f4b0c0b7ebae02ad1d85676c3afbb3d25b9 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.