The Standard

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

No expiration deadline leads to losing a lot of funds

Summary

The SmartVaultV3::swap() function lacks an expiration deadline, potentially exposing the contract to financial losses during token swaps.

Vulnerability Details

The swap() function utilizes the deadline parameter, which is set to block.timestamp. This implies that the function allows token swaps without enforcing an expiration deadline, leaving it susceptible to exploitation.

ISwapRouter.ExactInputSingleParams memory params = ISwapRouter.ExactInputSingleParams({
tokenIn: inToken,
tokenOut: getSwapAddressFor(_outToken),
fee: 3000,
recipient: address(this),
@> deadline: block.timestamp,
amountIn: _amount - swapFee,
amountOutMinimum: minimumAmountOut,
sqrtPriceLimitX96: 0
});

Impact

The absence of an expiration deadline in the SmartVaultV3 contract's swap() function creates a vulnerability where a malicious miner/validator could manipulate transactions for personal gain. This could lead to significant financial losses for the contract due to slippage.

Tools Used

Manual Review.

Recommendations

It is recommended to enhance the security of the SmartVaultV3 contract by setting a proper expiration deadline for the deadline parameter within the swap() function. This measure will mitigate the risk of potential financial losses associated with malicious activities.

Updates

Lead Judging Commences

hrishibhat Lead Judge over 1 year ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity
Assigned finding tags:

deadline-check-low

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

deadline-check

Support

FAQs

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