An issue was identified in the LendingPool.sol
contract where the liquidation process lacks incentives for liquidators. The initiateLiquidation()
function allows anyone to trigger liquidation if a borrower's health factor falls below the threshold. However, since liquidators must pay gas fees without any reward, there is little motivation to liquidate undercollateralized borrowers. This could lead to the accumulation of bad debt and significant financial losses for the protocol.
initiateLiquidation()
in LendingPool.sol
Liquidation is a crucial aspect of lending protocols to prevent bad debt. The current implementation relies on external actors (liquidators) to call initiateLiquidation()
, but it does not provide any compensation for them. Since executing this function requires gas fees, rational actors may avoid triggering liquidation, especially during network congestion or periods of high gas prices.
If no liquidators step in, bad debt will accumulate, leading to potential insolvency and severe losses for the protocol.
A borrower’s health factor drops below the healthFactorLiquidationThreshold
.
The initiateLiquidation()
function requires an external liquidator to call it.
There is no reward mechanism for the liquidator.
Borrower health factor falls below the threshold.
Liquidators recognize that calling initiateLiquidation()
will cost gas without compensation.
No liquidator calls the function.
Borrower's bad debt remains unliquidated, increasing risk to the protocol.
The absence of incentives for liquidators increases the risk of bad debt accumulation, which could eventually lead to insolvency. If liquidation fails, lenders may be unable to withdraw their funds, causing significant financial losses and potentially triggering a bank run on the protocol.
Manual Review
A proper incentive mechanism should be introduced to encourage liquidation. Potential solutions include:
Implementing a liquidation bonus, where liquidators receive a portion of the borrower’s collateral.
Allowing liquidators to claim a fee from the liquidated funds.
Integrating a protocol-owned bot to automate liquidations in case no external actor steps in.
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.