Any user can liquidate himself as there is no check preventing it in the liquidate function in DSCEngine.sol:229:1.
If a user can liquidate him/herself then no one using the protocol will care about the health factor neither a user have to worry about other users liquidating him/her because there is already a vulnerability due to which users will lose money if they liquidate you. This will break the sanctity of the protocol.
Manual analysis and then confirmed by unit testing.
Apply a check in the liquidate function in DSCEngine.sol:229:1 insuring that msg.sender != user.
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.