We see from the gnosis auction contract that these unmodified time values are used directly for the auction. The result is that orders can be canceled up the the block before it is finalized. This opens up the ability to carry out a bait and switch MEV tactic on the auction.
Bid entire auction amount with price 10% higher than market value at start of auction
Other parties see that all tokens are "sold" for a price much higher than they are willing to pay. Since bidding requires locking tokens, rational actors won't place lower bids
The block before it settles, cancel the high order and replace it with a bid at the minimum price
This would work particularly well as gnosis auctions can't be utilized by searchers/bots so a majority of bidders would be assumed to be humans.
Tools Used
Manual review
Recommended Mitigation Steps
orderCancellationEndDate should be set to a few minutes before the end of the auction, allowing for others to see the bait and switch and bid accordingly.
Lines of code
https://github.com/code-423n4/2024-07-reserve/blob/3f133997e186465f4904553b0f8e86ecb7bbacbf/contracts/plugins/trading/GnosisTrade.sol#L84-L157
Vulnerability details
Impact
Allowing users to cancel orders last moment can lead to bait and switch bids designed to obtain assets below market value
Proof of Concept
GnosisTrade.sol#L84-L157
Above we see that when creating an auction, both the auction end and order cancellation end are set to the same value.
EasyAuction.sol#L152-L227
We see from the gnosis auction contract that these unmodified time values are used directly for the auction. The result is that orders can be canceled up the the block before it is finalized. This opens up the ability to carry out a bait and switch MEV tactic on the auction.
This would work particularly well as gnosis auctions can't be utilized by searchers/bots so a majority of bidders would be assumed to be humans.
Tools Used
Manual review
Recommended Mitigation Steps
orderCancellationEndDate should be set to a few minutes before the end of the auction, allowing for others to see the bait and switch and bid accordingly.
Assessed type
MEV