DeFiHardhatFoundry
250,000 USDC
View results
Submission Details
Severity: medium
Invalid

Dangerous strict equalities allows the contract to be easily manipulated.

Summary

Use of strict equalities that can be easily manipulated by an attacker.

Vulnerability Details

LibTransfer.sendToken(IERC20,uint256,address,LibTransfer.To) (contracts/libraries/Token/LibTransfer.sol#68-72) uses a dangerous strict equality:
- amount == 0 (contracts/libraries/Token/LibTransfer.sol#69)
LibTransfer.sendToken(IERC20,uint256,address,LibTransfer.To) (contracts/beanstalk/migration/L1Libraries/LibTransfer.sol#71-75) uses a dangerous strict equality:
- amount == 0 (contracts/beanstalk/migration/L1Libraries/LibTransfer.sol#72)

Impact

The contract will get stuck in an infinite loop if there are not enough tokens to send.

Tools Used

Slither

Recommendations

Don't use strict equality to determine if an account has enough Ether or tokens.

Updates

Lead Judging Commences

inallhonesty Lead Judge about 1 year ago
Submission Judgement Published
Invalidated
Reason: Too generic

Support

FAQs

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