Treasury contract may be dos via malicious tokens.
Treasury contract aims to process the fund management. In Treasury contract, we use _totalValue
variable to record the total balance for all kinds of tokens.
The problem is that malicious users can deposit one malicious token to increase the _totalValue
to maximum(uint256.max) value. Because this token is malicious, we can disallow the manager role to withdraw from the Treasury contract.
Then any normal users or the owner can not deposit any value tokens into the treasury. The treasury contract cannot be used any more.
The treasury contract will be dos, and cannot be used any more.
Manual
Add one whitelist for the deposit 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.