51860 sc high missing access control in stakeonbehalf lets anyone bloat another user s validator list leading to permanent fund lock via gas exhaustion dos
Description
Brief/Intro
Vulnerability Details
function stakeOnBehalf(uint16 validatorId, address staker) external payable returns (uint256) {
// no check that msg.sender == staker or is approved
uint256 stakeAmount = msg.value;
_performStakeSetup(staker, validatorId, stakeAmount);
emit Staked(staker, validatorId, stakeAmount, 0, 0, stakeAmount);
emit StakedOnBehalf(msg.sender, staker, validatorId, stakeAmount);
return stakeAmount;
}Impact Details
References
Proof of Concept
Mitigation / Suggested Fixes (not added by reporter)
Previous51129 sc low boringvault proxies do not support smart contract walletsNext50060 sc insight scattered module processing pattern in arctoken update function
Was this helpful?