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

Default zero NFT value allows free asset acquisition

Summary

The InheritanceManager contract allows beneficiaries to buy out NFTs at their recorded value in the nftValue mapping. However, if a trustee fails to explicitly set a value for an NFT, the default value of 0 is used, enabling an attacker to acquire valuable assets for free.

Vulnerability Details

When an NFT is created through the createEstateNFT function, the value is stored in the nftValue mapping. However, if the trustee never calls setNftValue for a particular NFT, or if a new NFT is created after inheritance, its value in the mapping remains at the default of 0:

Impact

A malicious beneficiary pays nothing (0 tokens) but gains ownership of the real-world asset represented by the NFT.

Theft of Valuable Assets

Violation of Fair Distribution

Tools Used

Recommendations

  • min value checks

  • adding some valuyations process like hasBeenValued[_index] = true;

Updates

Lead Judging Commences

0xtimefliez Lead Judge 4 months ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity
0xtimefliez Lead Judge 4 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.