Beginner FriendlySolidity
100 EXP
View results
Submission Details
Severity: medium
Invalid

Potential DoS Due to Large Descriptions in NFTFactory Contract

Summary

The createEstate function in the NFTFactory contract accepts a description parameter of type string. If the description is too large, the function may fail due to gas limits or storage constraints.

Vulnerability Details

  • Code:

    function createEstate(string memory description) external onlyInheritanceManager returns (uint256 itemID) {
    uint256 ID = _incrementCounter();
    _mint(msg.sender, ID);
    _setTokenURI(ID, description);
    return ID;
    }


Issue: Large descriptions could cause the function to exceed gas limits or storage constraints, preventing the creation of NFTs.

Impact

Medium

Tools Used

A DoS attack could make the contract unusable.

Recommendations

Enforce a maximum length for the description parameter:

function createEstate(string memory description) external onlyInheritanceManager returns (uint256 itemID) {
require(bytes(description).length <= 256, "Description too long");
uint256 ID = _incrementCounter();
_mint(msg.sender, ID);
_setTokenURI(ID, description);
return ID;
}
Updates

Lead Judging Commences

0xtimefliez Lead Judge 9 months ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity

Support

FAQs

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

Give us feedback!