Description: The voteForMartenitsa::MartenitsaVoting
function could result in a denial of service attack due to lack of checks for duplicates on the _tokenIds
array an attacker could call this function numerous times to inflate the array hereby rendering the announce winner function impossible to call a test below will be showcasing the intentional overpopulation of the _tokenIds
Array and the gasleft after the population, since announceWinner
loops through _tokenIds
this will result in a revert due to the function running out of gas
this showcases the gas consumption of 1 million items in the _tokenIds
quite massive considering it's only a million.
announceWinner
can't be called due to insufficient gas
No tools were used.
create an array listedTokens
inside of MartenitsaMarket.sol
that contains all listed tokens and loop through that instead, much safer and no duplicates
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.