DeFi protocol C.R.E.A.M Finance (BSC) is being drained of all liquidity

oldschripp
5 min readAug 18, 2022

--

Previously I wrote about the fact that liquidity of major assets on the Cream Finance Protocol is being removed through extensive borrowing. Read more about it here: What is happening on C.R.E.A.M Finance (BSC)?

So far, it has only been going worse. Liquidity across most asset classes has been reduced to almost nothing:

Liquidity on Cream Finance

Notice how USDT, BUSD and USDC practically have liquidity left. EOS is completely drained. Barely any BTCB or ETH is left. Some assets still have some liquidy left.

TWT currently has about $900,000 left. This is by far the most liquidity any single asset can currently provide on Cream Finance. The total amount of value currently available on the platform is about $1,170,000.

Total Supply vs. Total Borrow

So if you want to withdraw liquidity your best chance would be in TWT because besides TWT, there is only about $270,000 left in other assets.

Are loans really overcollateralized?

What is more disturbing is the fact that the total supply and total borrow almost match. Loans on Cream Finance are supposed to be overcollateralized. In this case that would mean you can only borrow 75% of the value in USD that you supplied in the first place, maximum. But total borrows far surpass that threshold. We are currently at about 95% of all assets being borrowed.

If you look at all the market smart contracts you can see that there are practically no liquidation attempts. Someone tried recently to liquidate some USDC but that failed.

So there are no liquidations. Either liquidation does not work or someone managed to borrow more funds than they supplied.

But here is the catch. Even if you supplied enough funds to liquidate a position, since your supply is already borrowed by someone you cannot use it. So you would have to provide more liquidity to the protocol.

Why are there no liquidations?

Imagine the protocol was drained of all assets. That means all supply is borrowed. How do you liquidate a position that has surpassed its borrow limit?

So we want to liquidate a borrow of USDC. The borrower provided BTCB. In order to get their BTCB at a discount, you have to provide USDC. You pay back some portion of their USDC borrowed and seize some of their BTCB. But in reality, you are seizing their crBTCB. crBTCB is the share of the supply pool the borrower received for providing BTCB as collateral.

Now you have their crBTCB. But you CANNOT redeem those crBTCB for BTCB since there are no BTCB left in the pool. So all you would have done is provide some liquidity in the form of USDC which now someone else can redeem. But you will still be stuck with your crBTCB unless someone else provides BTCB to the protocol.

What would an attacker gain from this?

What I still struggle to understand is this: Alright so you borrow everything you can from the protocol. That drives up the interest rate for all assets. Sometimes past 200% APY. But you would have to supply more assets in the first place… Even though your position will not be liquidated, you still should have lost 25% of your initial investment.

You provide $10,000 worth of BTCB and borrow $7,500 worth of USDC. Then all liquidity is being drained, so the APY of USDC rises higher than the APY of BTCB, because the protocol is configured that way.

Sometime in the future you may then owe, lets say $10,000 USDC. You have by far surpassed the 75% threshold for your loan, but for reasons I showed earlier you will not get liquidated. You can be happy. But what is the point? You still only have $7,500 worth of USDC. And you cannot redeem your $10,000 worth of BTCB. So you effectively lost then. You have spoiled the party for everyone, but also for yourself.

I am still struggling to find an explanation for that. Unless of course someone really is exploiting the smart contracts and found a way to borrow more than they provided. But then I should expect all assets to be drained within a few minutes, right?

Who did this?

Doing some research and the Cream Finance Markets I found this transaction: 0x4c26f76e8bf47c7de59f84ad30c252fd3eb15699dcd814677e9fcebade96b286. It was initiated from a wallet at 0x2c78b4b5e40f78f5bfa6fce0b277d2c59ccf8545. In the transaction you can see that they borrowed $650,000 BUSD. Which was almost all available liquidity at the time. Since then the wallet has been fairly active. I even found some calls to smart contracts where the contract initiated a liquidation call.

So it could just be that the initial attacker is indeed out to get as many big players liquidated as possible. You can also go through their transaction history and you will find that most borrowed assets to Binance and are later returned to the wallet in the form of BNB.

There some smart contract calls which I haven’t gotten a full picture of yet, but this wallet seems to be doing all the draining. Currently they have about $6,100,000 worth of tokens in their wallet. Most of them are supplied tokens to the Venus protocol.

The attack continues though…

And still no one seems to be reporting. I still haven’t found articles in the major crypto news outlets mentioning the attack. We are on day three.

Are you affected?

Are your funds effectively locked on C.R.E.A.M Finance (BSC)? Here are some things you can try.

  • If you are paying huge interest on a loan, try to take out a loan on a more stable platform like Venus and repay the loan an CREAM.
  • Is your supply locked because of lacking liquidity? You could taking out a loan with an asset that still has some liquidity left. Borrow that asset, sell that asset for your supplied asset. At this point you would admit defeat but limit the damage.
  • Make some noise. Currently no one is trying to help, the Price of CREAM actually hasn’t tanked yet, as you would expect.

There are also some positive signs

Whatever the attacker is doing, it may not work with every coin. For instance: a whole lot of CAKE were returned to the protocol and have not been taken out yet. Though that may well happen in the near future.

Stay safe everyone and good luck. Let me know your thoughts on this.

Conclusion

I have been looking at this for quite some time now. Unfortunately, I had some investments in Cream Finance. Some of them I managed to remove. However, some of them just seem lost at this point. If this article was of any value to you please consider supporting with some crypto:

  • BTC: bc1qxeyx2c74u8efx8nhnz6ugjxuwpne84mlxc5y2c
  • ETH / BNB: 0x353f8a8860310A035e645De06772496342f47f96
  • ADA: addr1qy34mhmy6chuce08adntplusyqzywdhfl4clzpgc6tks0vanwvdsmzaaydzz5fc3w2fgqj4tq6d09c9n8m9ddteymulq8j8cad
  • LTC: ltc1qg6qgrnkegrr225ramamfa9fmpfmt03skjk0cpu

Thank you very much! Hope everyone gets out of this soon!

Thank you!

--

--

oldschripp

I am trying to build a life financed by passive income while still growing wealth and knowledge. I pursue various investment ideas and look at multiple assets.