Omniscia Steer Protocol Audit

Orchestrator Static Analysis Findings

Orchestrator Static Analysis Findings

ORO-01S: Inexistent Sanitization of Input Addresses

TypeSeverityLocation
Input SanitizationOrchestrator.sol:L50-L58, L63-L65

Description:

The linked function(s) accept address arguments yet do not properly sanitize them.

Impact:

The presence of zero-value addresses, especially in constructor implementations, can cause the contract to be permanently inoperable. These checks are advised as zero-value inputs are a common side-effect of off-chain software related bugs.

Example:

contracts/Orchestrator.sol
50function initialize(address _keeperRegistry, uint256 _rewardPerAction)
51 external
52 initializer
53{
54 __Ownable_init();
55 __UUPSUpgradeable_init();
56 keeperRegistry = _keeperRegistry;
57 rewardPerAction = _rewardPerAction;
58}

Recommendation:

We advise some basic sanitization to be put in place by ensuring that each address specified is non-zero.

Alleviation (200f275c40cbd4798f4a416c044ea726755d4741):

The address input arguments in both referenced functions are now adequately sanitized against the zero-address.