The SpiceAuction contract allows setting a very low wait period in setAuctionConfigfor starting new auctions. Although the wait period cannot be zero, it doesn't make much difference if it is 1 or 2, setting it too low can lead to excessively short auction durations, potentially making the auction process inconvenient for users.
In the SpiceAuction contract, the setAuctionConfig function ensures that the waitPeriod is non-zero. However, there is no enforced minimum value beyond being non-zero, meaning it can be set to a very low value. This lack of constraint can result in auctions that are too short, making it difficult/impossible for participants to bid.
Relevant code snippet:
If the wait period is set too low, auctions may end too quickly for participants to place their bids, reducing the effectiveness and fairness of the auction process. While this is primarily a configuration issue that depends on the actions of the daoexecutor, it can still disrupt the auction flow and user experience.
Likelihood looks LOW/MEDIUM because daoexecutorhas to set it to low value and then function startAuctionhas to be called (but if starter is not set it can be called by anyone).
The impact looks like a LOW because no funds are lost and a new auction can always be run.
Manual Review
Add a sensible lower bound check for the _config.waitPeriod in the setAuctionConfig function to prevent it from being set too low.
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.