Description:
The storage layout of the LevelTwo
contract differs from LevelOne
as the variables present are not exactly the same. There are many missing variables in LevelTwo
that are present in LevelOne
.
Impact:
Since the LevelTwo
contract only defines functions to read variables, this makes the contract unusable as the values returned would be wrong, since the proxy would follow the layout of the LevelOne
contract when it was first initialised.
Proof of Concept:
NA
Recommended Mitigation:
Change the layout of LevelTwo
to exactly follow that of LevelOne
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.