When utilizing Chainlink in L2 chains like (Arbitrum, OP, Base, Metis, Scroll, etc), it's important to ensure that the prices provided are not falsely perceived as fresh, even when the sequencer is down.
LibChainlinkOracle
has no check to verify whether the sequencer is down or not.
i.e:
function getPrice:
Functions impacted:
getTokenPrice
getPrice
getTwap
If the L2 sequencer goes down, the protocol will allow users to continue to operate at the previous (stale) rates.
Manual Review
Verify the sequencer before calling the Chainlink Price feed.
reference: https://docs.chain.link/data-feeds/l2-sequencer-feeds#example-code
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.