distributeFees function does not follow CEI (Checks -> Effects -> Interactions) pattern.
The function allows for an external interaction before a state change has occurred. The safeTransferFrom occurs before any state within the contract is updated.
This leaves the function LiquidationPool::distributeFees possibly open to a re-entrancy attack.
Manual Review
Use a nonReentrant modifier from openzeppelin or readjust the code so that the safeTransferFrom() occurs right at the end of the function.
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.