Description: LevelTwo
imports only 'Initializable' and lacks 'UUPSUpgradeable' inheritance and __UUPSUpgradeable_init()
Impact: The intended UUPS proxy pattern is broken: no '_authorizeUpgrade' hook is available, and the proxy cannot be safely upgraded to a next implementation if needed.
Proof of Concept:
Note: this PoC assumes that the 'Misused UUPS Upgrade Flow' issue has already been fixed, so that graduateAndUpgrade gets as far as splitting by totalTeachers instead of reverting earlier.
After this fix include the following test in the LevelOneAndGraduateTest.t.sol
file:
Attempting to compile or upgrade the proxy to LevelTwo will fail due to missing functions.
Recommended Mitigation:
The system doesn't implement UUPS properly.
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.