Description: since LevelOne:graduateAndUpgrade
is not private and included in upgradeToAndCall
function the principal can just keep calling graduateAndUpgrade
to earn more than what the pricipal is intended to gain.
Vulnerability Details: pricipal can call graduateAndUpgrade
function
Impact: principal and teacher will get more than they are suppose to
Tools Used: Manual Review
Proof of Concept: For this test to work we need to remove one vulnerability that is not dividing the teacher share among teachers
Recommendations: There are ways to prevent this
make the graduateAndUpgrade
function private and add it to upgradeToAndCall this will prevent the principal from calling it again
make a boolean variable that triggers after graduateAndUpgradefunction is over and add check for that boolean variable at the beiginning of
graduateAndUpgradeFunction`
`inSession` not updated after during upgrade
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.