NFTs newly deposited by a user who is already being marked for liquidation will still get liquidated although they have no impact on the loan.
When a user is marked for liquidation, they have a grace period within which they can call closeLiquidation
to reduce debt and prevent this from happening. However, if the user still deposits** more NFTs as collateral (In an attempt to improve healthFactor) **these newly added NFTs are still liquidated when finalizeLiquidation
is called because the process loops through the entire nft array and liquidates everything.It does not check whether some NFTs were added after liquidation was initiated. This leads to unintended and unfair collateral loss, even though the newly added NFTs were never part of the original liquidation decision.
All NFTs deposited from the time initiateLiquidation
is called will still get liquidated if the user failed to closeLiquidation within the grace period.
Users lose NFTs that were never supposed to be liquidated.
Manual Review
Implement a check to stop more NFT deposits when a user has been marked for liquidation.
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.