The contract performs direct ERC20 token operations without using SafeERC20 wrapper functions. While some tokens are known to use standard implementations, others (particularly collateral tokens) could be non-standard ERC20 tokens that don't properly return values or have unusual behavior.
The following instances were found:
In AaveDIVAWrapperCore.sol:
While the contract already imports and uses SafeERC20 in some places:
It doesn't consistently apply it across all ERC20 operations.
Low severity since most modern tokens behave correctly, but some tokens (like USDT) are known to have non-standard behaviors
Potential for failed operations not being detected if tokens don't properly return success values
Inconsistent handling of approvals within the same contract could lead to integration issues
Particularly risky with collateral tokens which could be any ERC20 token
Use SafeERC20 consistently throughout the contract for all ERC20 operations:
For consistency with the existing _approveCollateralTokenForAave function, use the following pattern for approvals:
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.