The addTokenMaxDelay function allows the owner to set a maximum delay for each token's price update. If an attacker gains control of the owner's address, they could set unreasonably long delays, leading to stale or outdated price data.
As a malicious actor, It is possible to intentionally set long maximum delays, causing price data to become outdated, unreliable, or even irrelevant. Users and applications relying on timely price information could make poor financial decisions, experience losses, or encounter other negative consequences.
The impact of this vulnerability is significant, as malicious actors can intentionally set long maximum delays, causing price data to become outdated, unreliable, or even irrelevant. Users and applications relying on timely price information could make poor financial decisions, experience losses, or encounter other negative consequences.
Manual
Implement proper access control mechanisms to restrict who can modify the maximum delay for token price updates.
Consider using a modifier that allows only authorized addresses to call the function.
Recommended (Modified ChainlinkARBOracle.sol):
Implement a time lock mechanism that enforces a delay between the request to change the maximum delay and its execution. This allows users to detect and prevent unauthorized or malicious changes in time.
Consider requiring multiple parties to approve changes to the maximum delay. Multi-signature requirements can enhance security and prevent single points of failure.
Redundant check on maxDelay and/or maxDeviation in ARBOracle
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.