On Arbitrum and Optimism, the sequencer can go offline. When it is down, transactions are delayed and the mempool is not processed. Oracles may update on L1 while the L2 sequencer is offline, creating a situation where L2 state (including oracle prices) is stale.
An attacker can observe L1 price updates, then submit transactions when the sequencer comes back online. The L2 oracle may still have the pre-update price, allowing arbitrage or manipulation.
StrataxOracle has no sequencer uptime feed integration. If deployed on Arbitrum or Optimism, the protocol is vulnerable to stale price exploitation when the sequencer restarts.
Likelihood (low):
Only applies if the protocol is deployed on Arbitrum or Optimism (or other L2s with sequencer uptime feeds).
Sequencer downtime is infrequent but occurs during upgrades and incidents.
Impact (high):
When the sequencer restarts, there is a grace period where prices can be stale. Attackers can front-run legitimate users with knowledge of L1 price movements, opening or unwinding positions at incorrect prices.
Severity (medium):
Protocol deployed on Arbitrum. Sequencer goes offline for 30 minutes. During that time, ETH drops 10% on L1. Sequencer comes back. The L2 Chainlink feed has not yet updated. Attacker opens a leveraged position using the stale (higher) ETH price. Position is immediately underwater when the feed updates.
If deploying on Arbitrum or Optimism, integrate the Chainlink sequencer uptime feed. Reject prices (or revert) when the sequencer is down or when the grace period after sequencer restart has not elapsed.
On Ethereum mainnet, sequencerUptimeFeed can be address(0) to skip the check.
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.
The contest is complete and the rewards are being distributed.