The startAuction
function in your Solidity contract can be called by any user, allowing them to initiate an auction immediately after deployment without proper configuration. This can lead to unintended consequences, such as the contract being stuck for a week due to the specified AUCTION_DURATION
The vulnerability lies in the following aspects of the startAuction
function:
Unrestricted Access: The function allows any user (msg.sender
) to call startAuction
, bypassing any intended access controls beyond checking if auctionStarter
is not address(0)
and msg.sender
is not auctionStarter
.
Immediate Auction Start: If called immediately after deployment or in certain conditions, the function sets up an auction (EpochInfo
) with an AUCTION_DURATION
that could potentially lock the contract from creating new auctions for a week (AUCTION_DURATION
). == 1 WEEK
he impact of this vulnerability can be significant:
Contract Lockup: Initiating an auction immediately after deployment with a long AUCTION_DURATION
could lock the contract from starting new auctions for a considerable period, potentially a week in this case.
Operational Disruption: The inability to start new auctions as intended can disrupt the contract's operations, affecting its ability to distribute tokens or execute other essential functions tied to the auction mechanism.
Manual review
Access Control Review: Review and enhance access controls within the startAuction
function. Ensure that only authorized entities or conditions can initiate an auction, such as requiring specific initialization steps or permissions, atleast for the first time
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.