This repository has been archived by the owner on Nov 12, 2023. It is now read-only.
0x52 - chainlinkAdaptor#getMarkPrice doesn't check if the sequencer is up #439
Labels
Non-Reward
This issue will not receive a payout
0x52
medium
chainlinkAdaptor#getMarkPrice doesn't check if the sequencer is up
Summary
If the Arbitrum sequencer were to go offline the chainlink oracle may return an invalid/stale price. It should always be checked before consuming any data from chainlink.
Vulnerability Detail
https://github.com/sherlock-audit/2023-04-jojo/blob/main/smart-contract-EVM/contracts/adaptor/chainlinkAdaptor.sol#L43-L55
As seen above, the Chainlink oracle never checks if the Arbitrum sequencer is up, allowing to to consume stale/invalid price data.
Impact
Invalid/stale data if Arbitrum sequencer isn't online
Code Snippet
https://github.com/sherlock-audit/2023-04-jojo/blob/main/smart-contract-EVM/contracts/adaptor/chainlinkAdaptor.sol#L43-L55
Tool used
Manual Review
Recommendation
Check sequencer uptime before consuming any price data
Duplicate of #101
The text was updated successfully, but these errors were encountered: