Quaint Cyan Porcupine
High
With new changes in Aave V3, if user's position is underwater, he can be liquidated for 100% of his debt if any of these conditions are met:
- User's total collateral value is less than MIN_THRESHOLD
- User's total debt value is less than MIN_THRESHOLD
- User's health factor is less than 0.95
If we look closely, we find 2nd point can be manipulated by anyone as Aave enables repaying loan on someone's behalf. This creates unintended incentive for a liquidator to check if it is possible to repay some debt of this position and then liquidate full debt of this position and thus earning higher profit.
Let's look at an example:
Total Collateral Value: 2420 Total Debt Value: 2050 LTV: 82.5 Health Ratio: 0.973
This position if liquidated: Debt repaid = 1025 Collateral seized(Penalty as 15%) = 1178.75 Profit = 1178.75 - 1025 = 153.75
Total Collateral Value: 2420 Total Debt Value: 1999 LTV: 82.5 Health Ratio: 0.9987
This position is liquidated: Debt repaid = 1999 Collateral seized(Penalty as 15%) = 2298.85 Profit = 2298.85 - 1999 - 51 = 248.85
This caused a loss of 248.85-153.75 = $95 to end user, which is enough incentive for a liquidator to repay some portion to extract out more profit.
No response
No response
No response
No response
No response
No response
If someone else is repaying loan on user's behalf, add a check that remaining debt is not less than MIN_THRESHOLD. This should prevent any such case.