Anyone can execute the function SantasList::checkList(address,Status)
to change SantasList::Status
of a given address inside the SantasList::s_theListCheckedOnce
mapping to any enum SantasList::Status
value.
The function SantasList::checkList(address,Status)
should be only called by Santa, but since it misses an access control check anyone can execute it.
Apply the following diff:
And run the testAnyoneCanCheckOnce
test:
Anyone can execute the function SantasList::checkList(address,Status)
and change the status of a given address to NICE
, EXTRA_NICE
, NAUGHTY
, or NOT_CHECKED_TWICE
, inside the mapping SantasList::s_theListCheckedOnce
.
Manual Review
GNU Emacs (solidity-mode + magit)
Foundry tests
Add modifier onlySanta
to the SantasList::checkList(address,Status)
function:
Anyone is able to call checkList() changing the status of a provided address. This is not intended functionality and is meant to be callable by only Santa.
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.