Missing NFT ownership verification for challengers
The RapBattle.sol::goOnStageOrBattle()
function lacks a verification mechanism to ensure that the msg.sender
, acting as a challenger, owns the NFT token being submitted for battle. This oversight allows any user to engage an NFT token owned by another player in battle, risking the owner's funds without their consent.
NFT owners lose exclusive control over deciding when their tokens go to battle.
Manual review.
Implement a verification step in RapBattle.sol::goOnStageOrBattle()
to check that the msg.sender
is the rightful owner of the NFT token, identified by the _tokenId
passed to the function.
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.