users may not get refunded if sending eth their address fail.
Users send ETH known as executionFee
along with their call to the strategy.to cover their actions due to GMX's two-step mechanism.
After the GMX keeper executes the second transaction, it refunds the remaining executionFee
to the receiver (in our case, GMXVault
strategy).
GMXVault
then attempts to send received ETH to the user (refundee address).
The issue arises if sending ETH
to the user fails; GMX
sends WETH to the contract instead. In this case, the strategy contract fails to refund the user, leaving the WETH
stuck in the GMXVault contract.
users may not get refunded .
vs code
manual review
implement the same logic like gmx if sending eth fail , send weth instead:
Impact: High Likelihood: High An attacker can repeatedly force the protocol to get stuck in a not-open status. This can happen on both deposit, withdraw callback for both successful execution and failures. Will group all similar issues.
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.