Lacking proper access control and input validation in PriorityPool contract's performUpkeep() function can lead into corrupting system's states.
2024-09-stakelink/contracts/core/priorityPool/PriorityPool.sol
Calling PriorityPool contract's performUpkeep()
There is no explicit indication that above functions are protected by any access control. This function also does not check input _performData to validate against bad data.
Anyone can call this function directly with bad _performData to run internal processing, posing a significant security threat to the integrity and functionality of your system.
Apply onlyChainlink modifier (that checks caller address is from Chainlink nodes) to restrict access and also apply input validation on input _performData:
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.