Description:
The mint()
function allows the organizer
to mint any number of tokens for any id
, but no cap or supply limit is enforced. This enables infinite minting, which can lead to loss of scarcity, dilution of value, or even abuse of trust.
// Root cause in the codebase with @> marks to highlight the relevant section
##Risk
Likelihood:
Likely to happen either accidentally or deliberately by the organizer
during future festival phases or promotions.
Even if not currently exploited, the risk is embedded and can surface at any point.
Impact:
Unlimited NFTs can be minted, destroying value of existing holders’ tokens.
Users may lose trust in the protocol if over-minting occurs.
Makes it impossible to prove scarcity on-chain, defeating the purpose of NFT utility or exclusivity.
This can be repeated across multiple id
s, making NFTs inflationary and valueless.
Implement a supply cap per token ID:
Also, initialize maxSupply
for each id
at deployment or via admin functions.
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.