The claimAndSwap
function in StrategyOp.sol
does not validate the _path
input provided to the router.
This allows malicious or erroneous paths to be passed, potentially leading to unauthorized or unintended token swaps, resulting in financial loss or disrupted protocol functionality.
The claimAndSwap
function is designed to claim WETH from the transmuter and swap it for alETH using a provided path via the router.
However, the function does not validate that the _path
input starts with the underlying token (WETH) and ends with the asset token (alETH).
This lack of validation exposes the function to potential misuse:
A malicious keeper could pass a _path that swaps WETH for unintended tokens, misdirecting funds.
The _path
array passed to _swapUnderlyingToAsset
is directly used in the router call without any validation:
A malicious keeper could execute swaps for tokens other than the intended alETH, potentially draining funds.
Validate the _path
array to ensure it adheres to the expected structure:
Ensure _path[0].from
matches underlying (WETH).
Ensure _path[_path.length - 1].to
matches asset (alETH).
Updated claimAndSwap
function:
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.