The RAACPrimeRateOracle
and RAACHousePriceOracle
contracts do not enforce data freshness checks, risking the use of stale oracle data for critical financial calculations, leading to incorrect valuations.
Neither contract validates the age of oracle data before using it. RAACPrimeRateOracle
tracks lastUpdateTimestamp
, but LendingPool
does not check it, and RAACHousePriceOracle
lacks timestamp tracking, allowing stale prime rates or house prices to be used, potentially from Chainlink or off-chain sources.
Stale data could lead to incorrect interest rates or collateral valuations, causing undercollateralized loans, unfair liquidations, or mispriced assets, affecting protocol revenue and user fairness.
Manual
Add a MAX_STALE_PERIOD check in LendingPool before using oracle data:
Implement timestamp tracking in RAACHousePriceOracle and validate freshness.
Use Chainlink’s heartbeat or aggregation features to ensure timely updates.
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.