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.