DeFiFoundry
20,000 USDC
View results
Submission Details
Severity: high
Invalid

Monopolizing the auction by bidder

Monopolizing the auction by bidder

Impact

Bidders with more tokens to bid can dominate and control the auction in a way that's lead to discourage, deter and scare off other bidders from bidding, due to a little profits when entering the auction for bidders with small amount of token to bid.
Hence, this making the auction unfair for most of the bidders, not competitive and encouraging only bidders with more amounts to bid, in other words monopolizing the auction.

Proof of concept

Let's break down the scenario and the functions involved:

Alice bid an amount of 100 of token then Bob enter a bidding by an amount of 10000, this can be more, after that most of the bidders with much less tokens will be scared off and will not bidding because of nearly no profit to gain when entering the auction.
Then just before the end of the auction in one tx Bob unbid most of his bid's let's say he unbid 9899 of his tokens(Bob only bid 101 in this scenario at the end) and calls auctionEnd function to end the auction, with this behavior he managed to

  • Monopolize the auction

  • Scares of most of the bidders from bidding

  • leaving little time for other participants to react

hence this leads to the increase of the price of the auction token and no fairness, like mentioned in the documentation

Recommendation

To fix this issue there is more than one solutions as following:

  • Maximum Bid Amount: Add a maximum amount to limit people(whales) from monopolizing the auction and scaring people off.

  • Time Lock for Unbidding: Introduce a delay between unbidding and the ability to end the auction. This prevents immediate manipulation.

  • Minimum Bid Duration: Enforce a rule that once a bid is placed, it cannot be withdrawn for a certain period.

  • Auction End Delay: Implement a mechanism where the auction cannot end immediately after a bid or unbid action, allowing others to adjust their bids.

  • Bid Withdrawal Penalty: Introduce a penalty for withdrawing bids, such as a percentage fee, to discourage strategic unbidding especially when withdrawing a big amount.

Updates

Lead Judging Commences

inallhonesty Lead Judge about 1 year ago
Submission Judgement Published
Invalidated
Reason: Design choice

Support

FAQs

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