Function BidBeastsNFTMarket::withdrawAllFailedCredits allows withdraw failed payouts on behalf of any receiver.
Function BidBeastsNFTMarket::withdrawAllFailedCredits takes _receiver as a parameter and sends all failed payouts of the receiver to msg.sender. There is no checks that msg.sender is the receiver, so anyone can withdraw any failed payouts.
Likelihood: Medium
The issue affects only failed payouts
Impact: High
Anyone can withdraw any failed payout.
Change function withdrawAllFailedCredits so that it withdraws only payouts belonging to msg.sender:
withdrawAllFailedCredits allows any user to withdraw another account’s failed transfer credits due to improper use of msg.sender instead of _receiver for balance reset and transfer.
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.