After creating an ask offer, users can call the abortAskOffer function to withdraw their entire collateral, causing buyers to receive their funds back. However, users can also withdraw the tax fees they have collected. This allows them to create offers, collect tax fees from buyers, and then abort the offer to reclaim their collateral. As a result, they profit solely from the tax fees without any intention of fulfilling their settlement obligations.
In its current implementation, the protocol permits sellers to withdraw their full collateral and retain the tax fees when they abort an offer. While buyers are refunded their collateral, the seller profits from the tax fees, which were collected under the assumption that the seller would fulfill their settlement obligations.
Alice creates an Ask Offer :
collateral : 10 000 usdc
Points Listed : 1 000
each Trade Tax : 3%
Alice sells all her points :
Tax collected : 300 usdc
Alice aborts the offer :
Reclaims 10,000 USDC in collateral.
Retains the 300 USDC in collected tax fees.
Alice Repeats the Process:
By repeating this process 10 times, Alice can accumulate 3,000 USDC in tax fees without any risk or obligation to settle.
In this scenario, Alice generates risk-free profits solely from the tax fees, without ever delivering the tokens to buyers. This allows for potential abuse of the platform, where users can exploit the system for financial gain without fulfilling their contractual obligations.
This issue allows malicious users to exploit the protocol by creating offers and collecting tax fees with no intention of completing the settlement. By aborting their offers after collecting the fees, they can withdraw their entire collateral, leading to a scenario where buyers lose their tax fees and receive nothing in return. This behavior could significantly harm the trust and reliability of the platform, as it creates a situation where buyers are unprotected and the market's fairness is compromised.
manual review, foundry
Implement a mechanism that automatically returns collected tax fees to buyers if the seller aborts their offer. This will prevent sellers from profiting from tax fees without fulfilling their obligations.
Adjust the withdrawal process so that sellers can only withdraw their collateral minus the tax collected. This ensures that sellers cannot exploit the system by repeatedly creating and aborting offers to gain tax fees without any risk.
Valid high severity, given orginal offer makers are not a trusted entity to enforce a settlement. The trade tax set by the maker should be returned back to the takers to avoid abuse of abortion of ask offers to steal trade tax from takers. Note for appeals period: See issue #528 for additional details
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.