The withdrawal process includes calling the gExchangeRouter.createOrder function with the order type MarketDecrease on the GMX contract. The call outputs the collateral token which is received by the Perpetual vault. However, according to GMX documentation, Decrease position orders can output two tokens instead of a single token...
This was not accounted for in the withdrawal process when swapping the index token to collateral token, after the settle function is called
Users will receive less than expected amount when they withdraw.
Manual Review
Guardian’s audit H-05.
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.