Beanstalk uses a forked version of Uniswap V2 Router, highlighted in their removeLiquidityOneToken.
However, there isn't a tx deadline check in the LibWellConvert.removeLiquidityOneToken
function.
The transaction expiration check (implemented in Uniswap via the deadline argument) allows users of Uniswap
to protect from selling tokens at an outdated price that's lower than the current price.
The usage of block.timestamp
as a deadline means transactions can remain pending without a definitive expiration, subjecting them to potential market volatility. In scenarios of network congestion or intentionally low gas fees, a user's conversion request might not process promptly. During this indeterminate period, the market value of Beans relative to LP tokens could deteriorate, leading to significantly less favorable conversion rates when the
transaction eventually executes.
This exposes users to delayed transactions from validators, resulting in unfavorable conversion rates.
Manual Review
Protocols implementing Uniswap V2 Router logic should always include a user defined deadline to prevent transactions from being executed at disadvantaged times.
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.