Closed sherlock-admin4 closed 2 months ago
jasonxiale
medium
StrategyPassiveManagerVelodrome.sqrtPrice
Spot price is used in StrategyPassiveManagerVelodrome.sqrtPrice, which is easy to manipulate.
According to StrategyPassiveManagerVelodrome.sqrtPrice, the function is derived from slot0(), which can be easily manipulated
slot0()
617 function sqrtPrice() public view returns (uint160 sqrtPriceX96) { 618 (sqrtPriceX96,,,,,) = IVeloPool(pool).slot0(); 619 }
And StrategyPassiveManagerVelodrome.sqrtPrice is used by other functions like _addLiquidity
And _addLiquidity is used in functions like moveTicks, and setPositionWidth without slippage protection
_addLiquidity
A malicious user can manipulate the amounts in the pool by using large buys/sells order to alter the composition of liquidity.
Manual Review
Duplicate of #10
jasonxiale
medium
spot price is used in
StrategyPassiveManagerVelodrome.sqrtPrice
Summary
Spot price is used in
StrategyPassiveManagerVelodrome.sqrtPrice
, which is easy to manipulate.Vulnerability Detail
According to StrategyPassiveManagerVelodrome.sqrtPrice, the function is derived from
slot0()
, which can be easily manipulatedAnd
StrategyPassiveManagerVelodrome.sqrtPrice
is used by other functions like _addLiquidityAnd
_addLiquidity
is used in functions like moveTicks, and setPositionWidth without slippage protectionImpact
A malicious user can manipulate the amounts in the pool by using large buys/sells order to alter the composition of liquidity.
Code Snippet
Tool used
Manual Review
Recommendation
Duplicate of #10