The RamNFT::mintRamNFT function in the RamNFT contract lacks proper access control, allowing any user to mint NFTs without restriction. This function should be restricted to only be callable by the Dussehra contract to prevent unauthorized minting. This will allow users to bypass paying for Dussehra::enterPeopleWhoLikeRam()
Function Affected: RamNFT::mintRamNFT
Issue: Lack of access control
Exploitation: Any user can call the mintRamNFT function, minting an unlimited number of NFTs.
Severity: Critical. Unauthorized minting of NFTs can lead to inflation of the NFT supply and other potential attacks that undermine the integrity and value of the NFTs.
Integrity: The value and uniqueness of the NFTs are compromised, as any user can mint unlimited NFTs.
Security: Unauthorized minting can lead to various attacks, including devaluation of the NFTs and exploitation of related functionalities.
Manual Review
Implement proper access control in the mintRamNFT function to ensure it can only be called by the Dussehra contract. This can be achieved by introducing a modifier that checks if the caller is the Dussehra contract
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.