BTC
ETH
HTX
SOL
BNB
View Market
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

a16z: Analysis of the principle and prevention of the new NFT deception "Sleep Minting"

星球君的朋友们
Odaily资深作者
2022-03-13 04:46
This article is about 2328 words, reading the full article takes about 4 minutes
New NFT scams are emerging one after another, and fans need to be vigilant at all times.
AI Summary
Expand
New NFT scams are emerging one after another, and fans need to be vigilant at all times.

Original Source: Old Yuppie

Original Source: Old Yuppie"Sleep Minting"As an NFT collector, you should care about the contract provenance on the chain. The most authentic provenance of NFT is minted directly from the creator's wallet or a smart contract owned by the creator. However, with a little trickery, one can use a method called

technology to manipulate the source of NFT creators.

Sleep Minting is where scammers mint NFTs directly to a famous creator’s wallet and recover NFTs from the creator’s wallet.

This creates the illusion that:

(2) The NFT was sent to a scammer;

based on"based on"chain

With provenance, scammers can claim they own an NFT minted by a famous creator and sell it for a higher value.

How does this technically work?

My a16z Crypto colleague Daren Matsuoka wrote a great article on Twitter about event logs and how they work. The transfer event log is a message sent by the smart contract to the outside world, containing details about the NFT transfer (from whom the NFT is transferred, to whom the NFT is transferred, and the transferred TOKEN ID). Transfer event logs provide an efficient way to check the provenance of NFTs.

secondary title

The Sleep Minting Scam"from "The general consensus is that if you send a transaction to transfer an NFT, then your address should be included in the event as"from "field. However, this is not the case when a scammer retrieves a sleepingNFT from a famous creator. Scammers can artificially add addresses of famous creators

  • Sleep minting

field."First 5000 Days "this is beeple's multimillion dollar creation"For sale on rarible. Look at the screenshot, it clearly says

But it's a scam. Its creator, Monsieur Personne, who also claims to be Banksy of NFTs, deliberately minted the piece with the beeple's name, using a technique called sleep minting. So how did he do it?

  • basic knowledge

basic knowledge"Bob "NFTs are created using ERC-721 smart contracts, and they hold the ownership record of NFTs as a list. An address and a serial number of a work form a pair. like this (I put"Booble")。

Alice: 1

Booble: 2

Malory: 3

replace with

After the transaction, Alice can transfer her NFT to Booble in the following ways.

Transfer 1: Alice ==> Booble

Alice:

Booble: 2, 1

Malory: 3

The list is now updated as follows:

In Ethereum, we use address names for identification, and we need to sign transfers to authorize them. But in the examples provided in this post, I'll use explicit names to simplify explanations.

Now, usually developers implement ERC-721 contracts in a reasonable way. Alice can only transfer if she owns an NFT and can provide a valid signature.

The ERC-721 standard is simply a social contract that defines an interface that allows art platforms to interoperate. As long as the contract's interface matches that of an ERC-721 contract, any machine will consider it valid.

However, as we can now see, this can lead to security issues with the provenance of NFTs on Ethereum, which can be tampered with.

As I said, any reasonable ERC-721 contract would allow miners to mint coins only for themselves, and only transfer the shards they own.

However, suppose we customize our ERC-721 contract so that we can mint to other accounts. Suppose we adjust the transfer function so that our account can also transfer another person's NFT under certain circumstances. Then, we can build a contract that allows us to sleepmint.

mint 1: address(0) =>Example: As the attacker Malory, we mint a work with serial number 1 for Booble.

Booble (performed by Malory)

Alice:

Booble: 1

Malory:

Now our pairing looks like this:

Then, since Malory has adjusted the contract to transfer the piece with serial number 1 from Booble's account to any other account, she can offer it for sale on an NFT platform like rarible."Since her minting from address (0) to Booble is"Creator--Booble

is displayed."Ethers"Once Malory successfully defrauds a buyer, she will receive her

, and sell counterfeit works to buyers.

Transfer 1: Booble => Buyer (executed by Malory).

Alice:

Booble:

Malory:

Buyer: 1

The updated ownership record now looks like this.

In this way, Malory successfully tampered with the NFT's provenance record and sold her work for more than it was worth.

details:Check carefully the information of rarible and Etherscan,

We'll find that this is more of an interface issue than a security hole. No one can access beeple's account.

  • Also, when you look closely at the transaction records, you can spot the tricks of the scammers:

  • fake mint transactions

Falsified transfer transactions"From "For mint transactions, we can see that Etherscan shows two

field. One is the transaction sent by msg.sender, and the other is the sender stating the NFT.

For the sender field of the transaction, i.e. msg.sender, it cannot be manipulated because it requires a valid signature of the sender's private key. However, the authorization of the "Tokens Transferred" field is subject to smart contract loopholes, therefore, it may be manipulated.

Simply put, crooks can make arbitrary modifications to the "Tokens Transferred" field

Therefore, we have to check that both From and Tokens Transferred match the correct address of the beeple. If not, it's fake."rugpull "This attack it with

a16z
NFT
Welcome to Join Odaily Official Community