Pieces Protocol

First Flight #32
Beginner FriendlyFoundrySolidityNFT
100 EXP
View results
Submission Details
Severity: medium
Invalid

Without Price Feed/Oracle, Users Can List NFTs AT Outrageous Prices

Vulnerability Details

Because there is no off-chain mechanism to confirm the price of NFTs being divided and listed to be sold on the protocol, it is possible for a malicious user to create sell orders for an NFT at a price way above market value.

PoC:

  • Alice has a very rare Pudgy Penguin NFT valued at 5 ETH.

  • Alice calls the divideNft() function on her NFT and divides it into 10 pieces.

  • Alice creates a sell order for her NFT, listing each piece to be sold at 5 ETH.

  • Alice sells out her order.

  • Alice makes 50 ETH.

  • While this is good for ALice, it does not represent the real price of the NFT according to off-chain price feeds.

Tools Used

Manual Review

Recommendations

  • Integrate price feed mechanisms to get a real-world value of NFTs being listed on the protocol.

  • Put checks in place to ensure that NFTs cannot be listed for a price that is at an unfair/greedy ratio to real world value and number of divided pieces.

Updates

Lead Judging Commences

juan_pedro_ventu Lead Judge 4 months ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement

Appeal created

yeahchibyke Submitter
4 months ago
juan_pedro_ventu Lead Judge 4 months ago
Submission Judgement Published
Invalidated
Reason: Design choice

Support

FAQs

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