Omniscia vfat Audit

LendingStrategyTwoAsset Static Analysis Findings

LendingStrategyTwoAsset Static Analysis Findings

LSA-01S: Inexistent Sanitization of Input Addresses

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/strategies/LendingStrategyTwoAsset.sol
46constructor(
47 SickleFactory factory,
48 ConnectorRegistry connectorRegistry,
49 FlashloanStrategy flashloanStrategy,
50 TransferLib transferLib_,
51 SwapLib swapLib_
52)
53 FlashloanInitiator(flashloanStrategy)
54 StrategyModule(factory, connectorRegistry)
55{
56 transferLib = transferLib_;
57 swapLib = swapLib_;
58 strategyAddress = address(this);
59}

Recommendation:

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

Alleviation (6ab7af3bb495b817ffec469255ea679b1813eecb):

The vfat team evaluated this exhibit but opted to acknowledge it in the current iteration of the codebase.