BidBeastsNFTMarket::withdrawAllFailedCredits function sends funds to msg.sender instead of _receiver, failed transfer funds cannot be withdrawn leading to funds loss and denial of service (DoS).The BidBeastsNFTMarket::withdrawAllFailedCredits function sends funds to `msg.sender` instead of `_receiver`, repeating the same failure path for failed transfers.
Failed transfer funds cannot be withdrawn. Funds loss for users. Breaking the contract's intended functionality.
Likelihood: Medium
It might occur under specific conditions
The direct transfer has to fail in order for this function to be included in the normal flow.
Impact: Medium
User funds are indirectly at risk.
Some level of disruption to the protocol's functionality.
Add the following code snippet to the `BidBeastsMarketPlaceTest.t.sol` test file.
Modify the `BidBeastsNFTMarket::withdrawAllFailedCredits` function to send funds to `_receiver` instead of `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.