DaoMax.

CertiKFiles named in the report

CertiK reviewed DaoMax.io (DaoMax.) on 4 Jan 2023: 14 findings, 0 critical; 3 marked fixed, 1 acknowledged, 10 open.

No open critical findings
Open the reportOpen DaoMax.io’s security record

Report hosted on skynet.certik.com.

Trustblock does not review code.

Findings14

Statuses are the security firm’s own, from its report.

SeverityOpenAcknowledgedFixed
Critical000
High300
Medium010
Low703
LowIncomplete implementationsFixed

The interface `ILazyMint` is defined and used yet not implemented in the audit scope. ```solidity isLazyMint && isPlatformNft(_nftContract) && !ILazyMint(_nftContract).exists(_nftId) ) { ILazyMint(_nftContract).lazyMint( ``` The interface `ILazyMint1155` is only implemented by an abstract contract partially in the audit scope. ```solidity !ILazyMint1155(_nftContract).exists(_nftId) ) { ILazyMint1155(_nftContract).lazyMint( ```

LowLack of Storage Gap in Upgradeable ContractFixed

There is no storage gap preserved in the logic contract. Any logic contract that acts as a base contract that needs to be inherited by other upgradeable children should have a reasonable size of storage gap preserved for the new state variable introduced by the future upgrades.

LowUnprotected InitializerFixed

One or more logic contracts do not protect their initializers. An attacker can call the initializer and assume ownership of the logic contract, whereby she can perform privileged operations that trick unsuspecting users into believing that she is the owner of the upgradeable contract. ```solidity=14 contract DEX is ``` - `DEX` is an upgradeable contract that does not protect its initializer. ```solidity=21 function initialize( ``` - `initialize` is an unprotected initializer function. --- ```solidity=8 contract Manager is Initializable, IManager { ``` - `Manager` is an upgradeable contract that does not protect its initializer. ```solidity=46 function initialize(address _dao, address _conduitController) external initializer { ``` - `initialize` is an unprotected initializer function. --- ```solidity=10 contract ConduitController is Initializable, IConduitController, ConduitControllerEventsAndErrors { ``` - `ConduitController` is an upgradeable contract that does not protect its initializer. ```solidity=28 function initialize( ``` - `initialize` is an unprotected initializer function.

Contracts in scope

No deployed address is recorded for this audit.

The report names a repository or files. Open the report to see its scope.

Repository and files the report names (20)

  • contracts/interfaces/IConduitController.sol
  • contracts/interfaces/IConduit.sol
  • contracts/interfaces/ILazyMint.sol
  • contracts/lib/NonceManager.sol
  • contracts/lib/TransferHelper.sol
  • contracts/interfaces/DEXEventsAndErrors.sol
  • contracts/lib/OrderValidator.sol
  • contracts/lib/DEXConfig.sol
  • contracts/interfaces/ConduitControllerEventsAndErrors.sol
  • contracts/lib/EIP712Upgradeable.sol
  • contracts/interfaces/ConduitEventsAndErrors.sol
  • contracts/DEX.sol
  • contracts/conduit/Conduit.sol
  • contracts/lib/DEXConstantsAndStructs.sol
  • contracts/interfaces/ILazyMint1155.sol
  • contracts/lib/OrderDeriver.sol
  • contracts/interfaces/IManager.sol
  • contracts/Manager.sol
  • contracts/conduit/ConduitController.sol
  • contracts/lib/LazyMintableERC1155.sol

Part of DaoMax.io’s security record

DaoMax.io
Audits1 audit by 1 firmLast audit Jan 2023, by CertiK.
Critical findingsNo open critical findingsIn 1 report.
Open DaoMax.io’s security record

Security firm

CertiK

1,044 projects reviewed · 1,375 reports · latest May 2025

See CertiK’s audits

Something wrong on this page? A missing report, a wrong date, a finding that was fixed since. Tell us and we check it against its source.

Tell us