The briVault::joinEvent function in the contract is vulnerable to front-running attacks. briVault::usersAddress array is used to iterate over participants in briVault::_getWinnerShares. An attacker can observe a pending transaction that calls briVault::joinEvent and submit their own transaction with a higher gas price to execute first. This allows the attacker to manipulate the state of the contract before the original transaction is processed, potentially leading to unfair advantages such as acquiring more shares or affecting the event's outcome.
Likelihood:
Reason 1 // Describe WHEN this will occur (avoid using "if" statements)
Reason 2
Impact:
Impact 1
Impact 2
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.