Insufficient deadline protection for swap operations
The current deadline protection implemented in the claimAndSwap
function is effectively ineffective, especially against front-runners, bots, or any entities capable of manipulating transaction ordering to their advantage over honest keepers.
Here's the implementation of claimAndSwap
function in StrategyOp contract:
And here's how _swapUnderlyingToAsset
function interacts with router:
As demonstrated above, block.timestamp
is used as the deadline to safeguard the swap operation. However, relying on the current timestamp undermines the purpose of a deadline, as it can be arbitrarily delayed. Without a properly defined deadline set by the keeper, this approach becomes advantageous to front-runners and MEV bots instead.
Failing to set an appropriate deadline allows pending transactions to be maliciously executed at a later time, where malicious actors or MEV bots can exploit delayed, underfunded transactions to the detriment of the original submitter.
Manual Review
Consider adding a implicit deadline timestamp by keeper.
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.