Attacker can arbitrarily burn anyone's santaToken, and buy present with other's santaToken
Anyone with santaToken can call buyPresent(), then it burns santaToken from presentReceiver
which is an argument that can be arbitrarily set to anyone's address by the attacker instead of burning from msg.sender, then attacker can use other's santaToken to buy present for themselves
Attacker can arbitrarily burn anyone's santaToken, and buy present with other's santaToken
Manual review
It should burn from msg.sender instead of presentReceiver
that can be set to anyone's address
Current implementation allows a malicious actor to burn someone else's tokens as the burn function doesn't actually check for approvals.
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.