The Treasury deposit can be permenantly DOSed for deposits because of a overflow bug, where a malicious actor can prevent other users from depositing
We can see that _totalValue is incremented for every deposit irrespective of the token. This means that a malicious User can create a Malicious token contract and deposit the maximum possible value for uint256.
After this the _totalValue variable will be near uint256 max limit and any further legitimate deposits will overfow and revert the deposit.
This will affect every function that relies on treasury deposit as its permanently DOSed because of the bug.
manual analysis
Rework totalValue to support value based addition like using oracle prices or DEX like uniswap
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.