LSTRewardsSplitter::deposit does not validate or enforce the 0 check for its amount paramamount, 0 check, and _receiver validation in LSTRewardsSplitter::withdraw`LSTRewardsSplitter::checkUpkeep,LSTRewardsSplitter::performUpkeep and LSTRewardsSplitter::splitRewards do not emit events.These functions lacks access control, don not emit events and update contract's state which means outsiders can perform state-changing modifications without any indication of when these happened.
-feeBasisPoint in LSTRewardsSplitter::updateFeeThis can leave to chance the protocol to manipulate the fees for vaults without regulation.
LSTRewardsSplitter::getFees, LSTRewardsSplitter::updateFees, LSTRewardsSplitter::_splitRewardsRather than perform division operations using the naked 10000, store as a constant state variable instead.
initialize functions in scope lack eventsSeeing the possibility of a front-running attack just after deployment, it is pertinent to emit an event in the initialize function. This prevents users from interacting with an uninitialized contract too.
Vault::__Vault_init, Vault::deposit, Vault::unbound, OperatorStakingPool::initialize, OperatorStakingPool::addOperators, OperatorStakingPool::removeOperators, OperatorStakingPool::setDepositLimit do not emit eventsThe 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.