The constructor in ScrvusdVerifierV1.sol does not validate that _block_hash_oracle and _scrvusd_oracle are non-zero, allowing deployment with BLOCK_HASH_ORACLE or SCRVUSD_ORACLE as address(0). This can render verification functions (verifyScrvusdByBlockHash, verifyScrvusdByStateRoot) non-functional or ineffective, preventing price updates to ScrvusdOracleV2 and leaving scrvUSD prices stale.
Constructor Code:
Lacks require(_block_hash_oracle != address(0)) or similar checks.
Verification
BLOCK_HASH_ORACLE = 0x0: Both functions revert—non-functional.
SCRVUSD_ORACLE = 0x0: Functions succeed but ScrvusdOracleV2 isn’t updated—stale prices.
Manual Review
Add validation
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.