Beginner FriendlyFoundry
100 EXP
View results
Submission Details
Severity: high
Valid

`SantasList::checkList()` lacks validation of caller

Summary

According to documentation SantasList::checkList() should be only callable by santa, but the function lacks checking if the msg.sender is the santa.

Vulnerability Details

Anyone can modify the SantasList::s_theListCheckedOnce and set arbitrary Status for arbitrary address.

Impact

High, this is likely to happen. Also this impact the functionality of contract by disallowing user to collectPresent if eligible, by an evil actor by modifying the s_theListCheckedOnce for the claimant.

Tools Used

Manual review

Recommendations

- function checkList(address person, Status status) external
+ function checkList(address person, Status status) external onlySanta
Updates

Lead Judging Commences

inallhonesty Lead Judge over 1 year ago
Submission Judgement Published
Validated
Assigned finding tags:

Access Control on checkList()

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.

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.