The Stability Pool processes deposits and withdrawals at a fixed 1:1 ratio. However, deposited funds are used for liquidation in the Lending Pool, reducing the actual contract balance. This creates a scenario where withdrawals continue at a 1:1 ratio even when the Stability Pool does not have sufficient funds to cover all withdrawals, potentially leading to insolvency and user fund loss.
The Stability Pool allows users to deposit funds and withdraw at a fixed 1:1 ratio with deToken
. However, deposited funds are utilized for liquidations, which means that the actual available balance decreases over time. Despite this, the pool still processes withdrawals at the original 1:1 ratio, which can result in users withdrawing more than what is available.
Users deposit funds and receive deToken
at a 1:1 ratio.
The Stability Pool utilizes some deposited funds for liquidations in the Lending Pool, decreasing the contract’s actual balance.
Users request withdrawals and are still processed at a 1:1 ratio, even though there are insufficient funds to cover all withdrawals.
Some users may be able to withdraw more than their fair share, leading to a depletion of available funds, leaving later users unable to withdraw anything.
The Stability Pool effectively becomes insolvent as withdrawals exceed available liquidity.
Protocol Insolvency: The Stability Pool may run out of funds, preventing full withdrawals for later users.
Implement Dynamic Exchange Rate for Deposits and Withdrawals
Instead of a fixed 1:1 ratio, introduce an exchange rate that adjusts based on available liquidity.
Example Fix:
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.