Sparkn

CodeFox Inc.
DeFiFoundryProxy
15,000 USDC
View results
Submission Details
Severity: high

Ownable not initialized

Summary

DOS due to Ownable not being initialized with msg.sender.

Vulnerability Details

The install submodules point to the latest version of the Openzeppelin/openzeppelin-contracts library, which since May 23 of 2023 the Ownable.sol went through breaking changes, to which the ProxyFactory.sol hasn't adapted.

Impact

Due to _owner not being initialized, the contract administrator lacks access to setContest (total contract business logic DOS), deployProxyAndDistributeByOwner and distributeByOwner.

Tools Used

Manual review and Foundry.

Recommendations

File: src/ProxyFactory.sol
- 81: constructor(address[] memory _whitelistedTokens) EIP712("ProxyFactory", "1") Ownable() { // @audit Ownable not initialized
+ 81: constructor(address[] memory _whitelistedTokens) EIP712("ProxyFactory", "1") Ownable(msg.sender) {

Support

FAQs

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