Fees contract is supposed to executing swaps on UniswapV3, which fails because of missing allowance.
The Fees contract is used to swap received Fees to WETH and send them to the staking Contract. It uses UNIswapV3 router for this. However there is never any allowance given for the Tokens to swap to the UniswapV3 router contract.
Therefore all swaps would revert
sellProfits function will always revert because of missing allowance.
Attacker can make profit out of Fees contract by sandwiching a swap.
Manual Review
Call approve for the UniswapV3 router before executing the swap.
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.