The LendingPool's liquidation mechanism requires the StabilityPool to liquidate a borrower's entire debt position at once, rather than allowing partial liquidations. This creates a significant risk when large borrowers become liquidatable, as the StabilityPool must have sufficient funds to cover the entire debt position.
In LendingPool.sol, the finalizeLiquidation() function forces the StabilityPool to liquidate the entire debt position of a user:
The StabilityPool must have enough funds to cover the entire userDebt amount, which could be very large for whale positions.
StabilityPool may be unable to liquidate large underwater positions due to insufficient funds
Creates systemic risk if large positions cannot be liquidated
Leads to protocol insolvency if bad debt accumulates
Manual review
Modify the liquidation mechanism to allow partial liquidations
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.