DeFiFoundry
50,000 USDC
View results
Submission Details
Severity: low
Invalid

Insufficient Price Feed Validation

Summary

The KeeperProxy relies on a hardcoded Chainlink sequencer uptime feed address, which is not valid on all L2s (Avalanche, Optimism) or future network upgrades.

Vulnerability Details

  • The sequencer check uses a fixed address (0xFdB631F5EE196F0ed6FAa767959853A9F217697D), which is specific to Arbitrum. If the contract is deployed on another L2, this check will fail.

sequencerUptimeFeed = AggregatorV2V3Interface(0xFdB631F5EE196F0ed6FAa767959853A9F217697D);

POC:

  1. Deploy KeeperProxy on Optimism.

  2. Observe _validatePrice skips sequencer checks (invalid feed returns answer != 0).

  3. Keeper executes trades using stale prices during sequencer downtime.

Impact

Incorrect sequencer status monitoring on unsupported networks, leading to stale price usage and faulty keeper actions.

Tools Used

Manual Review

Recommendations

Make the sequencer feed address configurable by the owner or use a network-aware factory.

Updates

Lead Judging Commences

n0kto Lead Judge 9 months ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity
Assigned finding tags:

Informational or Gas

Please read the CodeHawks documentation to know which submissions are valid. If you disagree, provide a coded PoC and explain the real likelihood and the detailed impact on the mainnet without any supposition (if, it could, etc) to prove your point.

Support

FAQs

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

Give us feedback!