The Standard

The Standard
DeFiHardhat
20,000 USDC
View results
Submission Details
Severity: medium
Invalid

minimumAmountOut is not correctly calculated while Swapping tokens.

Summary

For Swapping tokens swapFee should be considered for calculating minimumAmountOut.

Vulnerability Details

uint256 minimumAmountOut = calculateMinimumAmountOut(_inToken, _outToken, _amount);

In SmartVaultV3 contract inside function swap() while calculating minimumAmountOut, swapFee is not subtracted from _amount
which result in bigger calculated minimumAmountOut then it should be as amountIn provided in params is amountIn: _amount - swapFee.

Impact

Incorrect calculation of minimumAmountOut results in wrong calculation in the amount of _outToken while swapping.

Tools Used

Manual

Recommendations

Subtract swapFee from _amount in the calculation.

uint256 minimumAmountOut = calculateMinimumAmountOut(_inToken, _outToken, _amount - swapFee);

Updates

Lead Judging Commences

hrishibhat Lead Judge over 1 year ago
Submission Judgement Published
Validated
Assigned finding tags:

swapfee-incorrect-calc

hrishibhat Lead Judge over 1 year ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement
Assigned finding tags:

swapfee-incorrect-calc

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.