A lot of functions in the contracts miss zero value checks. In case of the remove collateral functions inside the SmartVaultV3
contract, this can be misused to emit events for zero value removals.
Here we can see the functions used to remove collateral out of a vault:
As we can see, there are no zero value checks for the _amount
parameter. This means that these functions can be called with a zero value, which will result in an event being emitted for a zero value removal. Which can be used as griefing attack to spam the event log and could also lead to frontend bugs depending on the implementation. In the protocol's frontend, as well as third party frontends relying on these events.
Event log poisoning and possible frontend bugs.
Add zero value checks to the functions.
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.