MartenitsaToken
uses a function to keep update the NFT counter of every addresses.
Problem is the function doesn't have access control : anyone can call it with arbitrary parameters and changer the counter of anyone else.
The counter is reachable via getCountMartenitsaTokensOwner
and is used to distribute HealthToken. Anyone can set is counter to a number modulo 3 to steal the HealthToken. An attacker can also prevent any user to receive their reward decreasing the counter.
Likelyhood: High
Anyone, anytime
Impact: High
Manipulation of the countMartenitsaTokensOwner
variable.
Steal HealthToken or prevent its distribution.
Add a modifier to allow only marketplace contract to call updateCountMartenitsaTokensOwner
.
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.