The ISwapRouter.exactInputSingle
params's deadline is currently set to block.timestamp
making it ineffective.
Most of the functions that interact with AMM pools do not have a deadline parameter, but specifically the case here is passing block.timestamp
to a pool, which means that whenever the miner decides to include the transaction in a block, it will be valid at that time, since block.timestamp
will be the current timestamp.
Deadlines serve as valuable tools to prevent transactions from being delayed for future execution.
With the elimination of the deadline check, validators may find it more lucrative to withhold the transaction from inclusion until it experiences the maximum allowable slippage.
Manual review
Pass a deadline as a function parameter or just hardcode it to block.timestamp + 30
seconds for example
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.