A medium-severity vulnerability was identified in the AuctionFactory contract related to its reliance on the owner variable for access control. Specifically, the risk arises if the contract is deployed via a proxy or if ownership is inadvertently transferred. This vulnerability can potentially allow unauthorized users to gain control of the contract if proper initialization or ownership management is not handled correctly.
The AuctionFactory contract manages access control through the owner variable, which is set during contract construction. If this contract were to be used in a proxy deployment, where the constructor is not called, the owner variable could remain uninitialized or be set incorrectly.
Loss of Funds: Unauthorized auctions or transfer of tokens to the wrong addresses could lead to the loss of tokens held by the contract.
Ownership Hijacking: An attacker who gains ownership can manipulate the auction creation process, potentially creating fraudulent auctions.
Manuel code review
Include an initialize function that sets the owner and other critical state variables. Ensure that this function can only be called once.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.