Beginner FriendlyDeFiFoundry
100 EXP
View results
Submission Details
Severity: low
Invalid

[L-1] Excessive Fee Check Constraints in MerkleAirdrop::claim Function: Potential Disruption of Normal Execution Despite Adequate User Fees

Summary

In the event that a user invokes the MerkleAirdrop::claim function, carrying a fee value that exceeds the predefined FEE value, the system erroneously flags this as an InvalidFeeAmount. This results in an unwarranted premature reversion of the call. However, it’s important to note that such a scenario is, in fact, permissible within the system’s operational parameters.

Vulnerability Details

Within the MerkleAirdrop::claim function, the condition if (msg.value != FEE) is employed to validate if the transaction fee FEE provided by the participant is adequate. While this condition is generally reliable, it fails to account for instances where the submitted fee exceeds the required FEE. In such cases, despite the fee being more than sufficient from a design standpoint, the function reverts due to the overly stringent condition. This represents a potential area for improvement in the function’s design to better accommodate varying transaction fees.

Impact

The stringent verification process in place could potentially inhibit users from successfully claiming their airdrop rewards.

Tools Used

Manual review

Recommendations

Change if (msg.value ! = FEE) { to if (msg.value >= FEE) {

Updates

Lead Judging Commences

inallhonesty Lead Judge about 1 year ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement

Support

FAQs

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