Description:
The functions increaseValuesOfParticipants and selectRamIfNotSelected in the protocol have vulnerabilities that allow a player to increase their likelihood of being selected as "Ram" by minting multiple NFTs. from RamNFT::mintRamNFT function. This results in an unfair advantage for players who mint more NFTs (cost nothing just one entrance-fee), violating the principles of fairness and equal opportunity in the event.
Impact:
Participant who mint multiple NFTs can significantly increase their chances of being selected as "Ram".and be eligible to rewards
Proof of Concept:
Scenario 1: ChoosingRam::selectRamIfNotSelected
Two players enter the game through a modifier.
We mint 10NFT for player1 to increase his chance to be selected as a "Ram".
The selectRamIfNotSelected function is called by the organiser to choose the "Ram".
Player 1 is chosen as "Ram" due to the increased number of NFTs they own.
I made some logs for insptecting RamNFT::CharacteristicsOfRam.ram for 11 nft
Include the following PoC in Dusserha.t.sol
Scenario 2: ChoosingRam::increaseValuesOfParticipants
Two players enter the game through a modifier.
Player 1 mints 10 additional NFTs, giving them a higher probability of being selected as "Ram".
The increaseValuesOfParticipants function is called with player 1 as both the challenger and the participant.
since from logs made in scenario 1 the majority of NFT is assigned to Player1 so we called the function as player1 is Challenger and Particpent
so anyone choosen as ram player1 will be choosen as "Ram"
Player 1 is chosen as "Ram" due to the increased number of NFTs they own and the specific logic in the function.
Include the following PoC in Dusserha.t.sol
Recommended Mitigation:
use Access control in RamNFT::mintRamNFT function.which allow calls from Dusserha contract only
Limit NFT Minting: Impose limits on the number of NFTs a single player can mint
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.