The AaveDIVAWrapper contract passes constructor parameters in an incorrect order to its parent AaveDIVAWrapperCore contract, potentially causing protocol-breaking misassignment of DIVA Protocol and Aave V3 addresses.
AaveDIVAWrapper's constructor:
Parent contract AaveDIVAWrapperCore's constructor:
The first parameter _aaveV3Pool is incorrectly passed as diva_, and second parameter _diva as aaveV3Pool_, swapping critical protocol addresses.
Impact: Low - It would mess up core functionality, but in 100% of cases will revert because the two contracts (diva and aaveV3Pool) do not share functionality.
Likelihood: High - Anyone that's trying to deploy the AaveDIVAWrapper following the order described in the constructor would deploy it wrong in 100% of cases.
Severity: Medium
Manual code review - Tried to write my own Foundry PoC and spent minutes figuring why everything is wrong.
Align parameter order by changing AaveDIVAWrapper constructor:
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.