20,000 USDC
View results
Submission Details
Severity: high
Valid

Missing approve will result in a failed swap

https://github.com/Cyfrin/2023-07-beedle/blob/main/src/Fees.sol#L28

Missing approve will result in failed swap.

Mitigations steps:

Use safeApprove to zero first to support tokens implementing ERC20 race condition protection, i.e USDT.

IERC20(_profits).safeApprove(address(UNISWAP_ROUTER), 0);

IERC20(_profits).safeApprove(address(UNISWAP_ROUTER),amount);

Support

FAQs

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