Unbounded auction time extension logic that can cause the auctions to be indefinitely prolonged, creating a Denial-of-Service by preventing settlement and locking funds.
In the designed auction system, the auction end time is initially set to 15 minutes after the first bid. For each subsequent bid, if the remaining time is less than 15 minutes, the auction is extended to 15 minutes past the most recent bid.
Under normal conditions, this mechanism prevents last-second “sniping” by ensuring that bidders always have enough time to respond.
However, the logic also allows an attacker (or determined participants) to continuously place bids near the end of the auction, thereby indefinitely extending the auction duration. This can result in the auction never reaching a settlement point, creating a Denial-of-Service condition for sellers who wish to finalize and receive funds, and for bidders who want closure.
Likelihood:
Attackers or competitive bidders can deliberately wait until the last moments to place bids, causing the auction to be extended indefinitely.
This will always occur in competitive bidding wars, where multiple participants keep outbidding each other close to the deadline.
Impact:
Impact 1: Funds remain locked in escrow for an extended or indefinite period, delaying payout to the seller.
Impact 2: Bidders face uncertainty and potential frustration due to auctions not settling within expected timelines, degrading platform trust.
Impact 3: This can grief the seller by bidding with small increments just to keep the auction open without real intent to win.
This test loop demonstrates that the auction can be kept alive indefinitely by placing repeated bids from different participants just before expiration.
The settleAuction function should enforce the 3 days auction deadline so as anyone can settle the auction in 3 days no matter what.
BidBeast marketplace contains a flaw in its auction timing mechanism. This causes the contract to miscalculate the actual end time of an auction, resulting in auctions that either conclude prematurely or run longer than specified.
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.