QuantAMM

QuantAMM
49,600 OP
View results
Submission Details
Severity: medium
Invalid

The Chainlink price might be stale

Summary

_getData() doesn't check if the Chainlink price is stale.

Vulnerability Details

_getData() uses a price without any stale validation.

function _getData() internal view override returns (int216, uint40) {
(, /*uint80 roundID*/ int data, , /*uint startedAt*/ uint timestamp, ) = /*uint80 answeredInRound*/
priceFeed.latestRoundData();
require(data > 0, "INVLDDATA");
data = data * int(10 ** normalizationFactor);
return (int216(data), uint40(timestamp)); // Overflow of data is extremely improbable and uint40 is large enough for timestamps for a very long time
}

Impact

Stale prices can be used during a calculation.

Recommendations

Recommending adding a stale check for the Chainlink price.

Updates

Lead Judging Commences

n0kto Lead Judge 7 months ago
Submission Judgement Published
Invalidated
Reason: Too generic

Support

FAQs

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