The delete accountTokens[user] deletes the user itself and not the tokens held by the user. It can be drained out using reentrancy.
By deploying another contract with payable fallback function, reentrancy attack can be initiated on this delete accountToken[user] in function fixUser.
Before destroying/burning all the token when liquidation is initiated, It can be attacked by other reentrancy contract, and all the liquisity token instead of burning, will get transferred to attackers contract address.
Foundry fuzz test
using reentrancy for fixUserFunction.
Create a mapping for accountTokens(address => uint) tokens. And delete the tokens.
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.