Ordinals Finance Rug Pull
What happened
Ordinals Finance promoted a lending and staking protocol for Bitcoin Ordinals but launched its OFI token on Ethereum, at 0x419e35e3…0497dc, deployed on 19 February 2023 by 0x905BB314…fC7f6E. On 24 April 2023 CertiK reported an exit scam costing users about $1 million: according to Cointelegraph's account of CertiK's findings, the developer pulled 256 million OFI out of the OEB staking contract with a safuToken function and 13 million OFI out of the OFI staking contract with ownerRewithdraw, swapped them for ETH and consolidated the funds at 0x34eA9952…D25cCF. OFI fell about 94% within an hour, and the project deleted its website and social media accounts.
The token contract adds a 3% liquidity tax and a 3% treasury tax on pool trades. The ETH from the treasury tax and the LP tokens from automatic liquidity both go to treasuryWallet, initially the externally owned address 0x524570E6…fa058a; the owner can point it at any other address with the owner-only setTreasuryWallet(newWallet), and nothing locks the LP tokens it receives.
De.Fi's REKT database names the deployer as the scammer address and 0xa14AdAA4…591550 and 0x524570E6…fa058a as two related EOAs that drained the WETH/OFI Uniswap V2 pools, and says 551 ETH went to Tornado Cash (Cointelegraph reported over 85.5 ETH). The transactions the listing cites show:
- 0xe513b843…85694c (listed as the deployer's liquidity removal): the deployer sells 16,283,982.9885 OFI into the OFI/WETH Uniswap V2 pool for 16.6159 WETH through the Uniswap Universal Router.
- 0xaaabf697…d0775d: the treasury wallet 0x524570E6…fa058a calls
removeLiquidityETHWithPermiton the Uniswap V2 router, burning OFI/WETH LP tokens and receiving 28,787,578.3284 OFI and 3.54948 WETH. - 0xc6b60395…6ae46b: 0x34eA9952…D25cCF deposits 100 ETH into the Tornado Cash router.
How it happened
- The OFI constructor mints 1,000,000,000 OFI (9 decimals) to the deployer, and
treasuryWalletstarts as 0x524570E6…fa058a; the owner can replace it withsetTreasuryWallet(newWallet). - On pool trades,
_transferkeeps 3% for liquidity and 3% for the treasury. When enough accumulates,_addLiquiditycallsaddLiquidityETH(..., treasuryWallet, block.timestamp), so the new LP tokens are sent to that address, and treasury ETH is sent withpayable(treasuryWallet).send(address(this).balance). - Tokens staked by users sat in separate staking contracts. According to Cointelegraph, citing CertiK, the developer called
safuTokenon the OEB staking contract to remove 256 million OFI andownerRewithdrawon the OFI staking contract to remove 13 million OFI. - On 24 April 2023 the deployer sold 16,283,982.9885 OFI into the OFI/WETH pool for 16.6159 WETH (0xe513b843…85694c), and the treasury wallet removed pool liquidity with
removeLiquidityETHWithPermit(0xaaabf697…d0775d). - The proceeds were consolidated at 0x34eA9952…D25cCF, which CertiK named, and that address deposited 100 ETH into Tornado Cash (0xc6b60395…6ae46b). Users lost about $1 million, and OFI's market cap fell from about $2.3 million to about $143,000.
- The project then deleted its website and social media accounts.
Protocol details
Evidence
- report @CertiKAlert incident report twitter.com
- report CertiK Skynet Alert: @ordinalsfinance exit scam, $1 million loss (24 April 2023) twitter.com
- transaction OFI contract creation transaction etherscan.io
- transaction Etherscan transaction 0xe513b84364dc1b1937fb2328b1fde303781f6aba0b202bc7f69b045cd585694c etherscan.io
- transaction Etherscan transaction 0xaaabf69734b14c87632050f6b7d7f4fcefa6685ca4fe82ac5f8f2adf8fd0775d etherscan.io
- transaction Etherscan transaction 0xc6b603957651ea5e976cf33df9b219fb80c4ce22017c5fdef8f2a7697f6ae46b etherscan.io
- address Ordinals Finance (OFI) verified contract code on Etherscan etherscan.io
- address etherscan.io address 0x5245…058a etherscan.io
- address etherscan.io address 0x905b…7f6e etherscan.io
- address etherscan.io address 0xa14A…1550 etherscan.io
- analysis Ordinals Finance carries out $1M exit scam (CryptoSlate) cryptoslate.com
- analysis Sourcify match for 0x419e35e3515c2fdb652c898bf7a0b21fb20497dc on Ethereum repo.sourcify.dev
- analysis Ordinals Finance has conducted a $1M rug pull: CertiK (Cointelegraph) cointelegraph.com
- analysis De.Fi REKT database listing for Ordinals Finance (text imported into the record) de.fi
Build your security review skills
Work through hands-on labs covering real exploit mechanics, review techniques, and defensive patterns.