DittoETH

Ditto
DeFiFoundryOracle
55,000 USDC
View results
Submission Details
Severity: low
Invalid

Missing zero address validation in constructor

Missing zero address validation in constructor

  • Severity: Low

  • Confidence: Medium

Description

Detect missing zero address validation in the constructor.

There are 14 instances of this issue:

File: contracts/bridges/BridgeReth.sol
21 rocketStorage = IRocketStorage(rocketStorageAddress)

state variable rocketStorage assign with rocketStorageAddress without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/bridges/BridgeReth.sol#L21

File: contracts/bridges/BridgeReth.sol
22 diamond = diamondAddr

state variable diamond assign with diamondAddr without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/bridges/BridgeReth.sol#L22

File: contracts/bridges/BridgeSteth.sol
22 steth = ISTETH(_steth)

state variable steth assign with _steth without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/bridges/BridgeSteth.sol#L22

File: contracts/bridges/BridgeSteth.sol
23 unsteth = IUNSTETH(_unsteth)

state variable unsteth assign with _unsteth without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/bridges/BridgeSteth.sol#L23

File: contracts/bridges/BridgeSteth.sol
24 diamond = diamondAddr

state variable diamond assign with diamondAddr without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/bridges/BridgeSteth.sol#L24

File: contracts/facets/BridgeRouterFacet.sol
28 rethBridge = _rethBridge

state variable rethBridge assign with _rethBridge without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/facets/BridgeRouterFacet.sol#L28

File: contracts/facets/BridgeRouterFacet.sol
29 stethBridge = _stethBridge

state variable stethBridge assign with _stethBridge without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/facets/BridgeRouterFacet.sol#L29

File: contracts/facets/ExitShortFacet.sol
30 cusd = _cusd

state variable cusd assign with _cusd without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/facets/ExitShortFacet.sol#L30

File: contracts/facets/MarginCallPrimaryFacet.sol
30 cusd = _cusd

state variable cusd assign with _cusd without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/facets/MarginCallPrimaryFacet.sol#L30

File: contracts/facets/ShortRecordFacet.sol
26 cusd = _cusd

state variable cusd assign with _cusd without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/facets/ShortRecordFacet.sol#L26

File: contracts/facets/VaultFacet.sol
27 carbonZeth = _zeth

state variable carbonZeth assign with _zeth without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/facets/VaultFacet.sol#L27

File: contracts/facets/YieldFacet.sol
31 DITTO = IAsset(_ditto)

state variable DITTO assign with _ditto without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/facets/YieldFacet.sol#L31

File: contracts/tokens/Asset.sol
14 diamond = diamondAddr

state variable diamond assign with diamondAddr without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/tokens/Asset.sol#L14

File: contracts/tokens/Ditto.sol
16 diamond = diamondAddr

state variable diamond assign with diamondAddr without checking

https://github.com/Cyfrin/2023-09-ditto/blob/main/contracts/tokens/Ditto.sol#L16

Updates

Lead Judging Commences

0xnevi Lead Judge
almost 2 years ago
0xnevi Lead Judge almost 2 years ago
Submission Judgement Published
Invalidated
Reason: Zero address checks

Support

FAQs

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