The contract should validate that ETH recipients can properly receive transfers before attempting to send funds.
The BidBeastsMarketplace::settleAuction() and BidBeastsMarketplace::withdrawAllFailedCredits() functions transfer ETH without checking if the recipient address can receive the funds, potentially causing failed transfers and inconsistent state.
Likelihood:
Occurs whenever ETH recipients are contracts without proper receive functions
Particularly likely with smart contract wallets or proxy contracts
Impact:
Failed transfers result in inconsistent contract state
Users may lose access to funds if transfers consistently fail
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.