https://github.com/Cyfrin/2024-12-quantamm/blob/main/pkg/pool-quantamm/contracts/UpdateWeightRunner.sol#L356
The _getData
function may use stale oracle data if no backup oracles are configured. This can lead to incorrect weight adjustments based on outdated data.
In _getData
, if the primary oracle returns stale data and no backups exist, the fallback loop is skipped, and the function does not revert. As a result, stale primary oracle data is used despite failing the freshness threshold.
Reference: getData
function
Stale data can lead to incorrect weight updates, economic inefficiencies, and security vulnerabilities.
Manual Review
Ensure _getData
reverts without fresh data and promote backup oracles to ensure validate oracle data.
Cyfrin audit: 7.2.4 Stale Oracle prices accepted when no backup oracles available
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.