The Swan contract's asset relisting mechanism allows assets to be transferred from one buyer to another across different market rounds. However, due to a lack of cleanup in the listing status of assets for previous buyers, an asset relisted to a new buyer can still be accessed and purchased by the previous round's buyer, thereby circumventing the intended exclusivity of asset offers per round.
The vulnerability arises from the way assets are managed across different rounds in the Swan contract:
When an asset is not sold in one round, it can be relisted for another round or even another buyer. This process updates the asset's buyer and round information.
Despite the update, the original listing record in the previous round is not deleted or invalidated, leaving the asset purchasable by the old buyer.
Previous buyers can continue to purchase assets that have been relisted to others, potentially disrupting the new buyer's opportunity to acquire these assets.
Manual Review
Implement a mechanism to mark old listings as invalid or remove them once an asset is relisted.
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.