Owner fees collected during swaps will be stuck in the contract because there is no permissioned withdraw function
All swaps that happen in Quant pools execute the onAfterSwap hook from the UpliftOnlyExample. This hook does the following:
It computes a percentage amount as fee that will be substracted from the user swap. This fee amount is divided between the admin fee and the owner fee. The admin fee is sent to the quant admin address which is a timelock contract according to the docs. Hence, this contract will be able to manage the funds sent. However, the owner fee is sent to the UpliftOnlyExample contract. However there is no permissioned function that allow the owner to withdraw the collected fees. The end result will be that the owner fees will remain stuck in this contract forever because it is not upgradeable
High, lose of funds
Manual review
Add a function that allow the owner to withdraw any token from the router
Likelihood: High, every swap. Impact: High, funds are stuck.
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.