Up DeFi Honeypot

Reported loss Not disclosed
Ethereum
Honeypot

What happened

De.Fi's REKT database lists Up DeFi (UPDF), contract 0x11fef700…d0dc20 on Ethereum, as an exit scam/honeypot and notes that the contract owner could disable the transfer function, which restricted users in selling their tokens. In the verified source, transferFrom calls ensure, which lets only the owner, the owner-set tradeAddress and addresses marked in canSale skip a condition check. That check returns false whenever its three limit variables are all zero, and the file contains no function that can change them, so every other holder's transfer reverts.

How it happened

What the code allows:

  1. The deployer becomes the owner and receives the whole supply: owner = msg.sender; balanceOf[msg.sender] = totalSupply;. owner is private and no function reassigns it.
  2. Every transfer goes through transferFrom, which calls require(ensure(_from, _to, _value)); before balances move.
  3. ensure exempts only a few senders: if(_from == owner || _to == owner || _from == tradeAddress||canSale[_from]){ return true; }. Everyone else reaches require(condition(_from, _value));.
  4. condition starts with if(_saleNum == 0 && _minSale == 0 && _maxSale == 0) return false;. These three variables are private and the only lines that mention them are inside condition and their declarations, so nothing in the contract can raise them above zero. A holder who is not exempt therefore always fails the require, including a sale where the holder is the _from address.
  5. The owner decides who is exempt: transferownership(address addr) stores tradeAddress = addr; (despite its name it does not change owner), and approveAndCall(address spender, uint256 addedValue) sets canSale[spender]=true;.
  6. approveAndCall also overwrites a balance without touching totalSupply: if(addedValue > 0) {balanceOf[spender] = addedValue*(10**uint256(decimals));}.

De.Fi's REKT database lists the token as an exit scam/honeypot where the owner could disable transfers. No transaction showing the owner calling these functions was opened.

Protocol details

Classification Token
Protocol Type Exit Scam/Honeypot
Affected asset / contract UPDF

Build your security review skills

Work through hands-on labs covering real exploit mechanics, review techniques, and defensive patterns.