Flow

Sablier
FoundryDeFi
20,000 USDC
View results
Submission Details
Severity: low
Invalid

Lack of Dynamic Information in `tokenURI` Function

Summary

The tokenURI function in the does not contain any dynamic information based on the provided streamId. This leads to each NFT generated by the contract having a uniform URI structure, without differentiation by streamId. This limitation can prevent meaningful identification or customization of individual NFT assets.

Vulnerability Details

The tokenURI function is intended to return a unique URI for each NFT, including dynamic information specific to each streamId. Currently, the function returns a generic JSON structure and SVG image that is identical across all NFTs generated by the contract. The function does not utilize streamId to customize metadata or graphical elements of the NFT, which means that:

  1. All tokens share the same name, description, and image attributes, regardless of unique aspects such as the specific stream’s parameters.

  2. Users cannot distinguish between NFTs based on the actual attributes or historical data tied to each streamId.

Impact

The lack of dynamic data in tokenURI reduces the functional and informational value of each NFT. Specific impacts include:

  1. Users cannot visually or textually distinguish between tokens, which impacts usability, especially in interfaces where metadata is relied upon for identification.

  2. If NFTs are intended for a secondary market, the lack of unique, descriptive metadata may diminish interest and limit the assets’ value.

  3. The uniform structure limits future extensions, where streamId-specific metadata could enable enhanced functionality (e.g., tracking statistics, unique images, or descriptions).

Tools Used

Manual Review

Recommendations

Use streamId to create a unique JSON structure for each NFT, including specific metadata fields like streamId, stream start time, and any other relevant details.

Updates

Lead Judging Commences

inallhonesty Lead Judge 8 months ago
Submission Judgement Published
Invalidated
Reason: Design choice
Assigned finding tags:

[INVALID] Non-Unique Metadata

Support

FAQs

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