Description: 'performUpkeep' is 'external override' with no 'require(msg.sender == keeperRegistry) guard'.
Impact: Any EOA can call 'performUpkeep', triggering new weather requests and draining LINK from the contract or user’s deposit.
Proof of Concept:
Recommended Mitigation: Restrict callers to the Chainlink Keeper registry:
The `performUpkeep` function should be called by the Chainlink keepers or owners of the NFT. But there is no access control and anyone can call the function. This leads to malicious consumption of the user's LINK deposit.
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.