a16z:新たなNFT詐欺「スリープミント」の原理と防止の分析
出典: オールド・ヤッピー
出典: オールド・ヤッピー"Sleep Minting"NFT コレクターとして、チェーン上の契約の出所を気にする必要があります。NFT の最も本物の出所は、作成者のウォレットまたは作成者が所有するスマート コントラクトから直接鋳造されます。ただし、ちょっとしたトリックを使えば、次のような方法を使うことができます。
NFTクリエイターのソースを操作する技術。
スリープミントとは、詐欺師が有名クリエイターのウォレットに直接NFTを鋳造し、クリエイターのウォレットからNFTを回収するものです。
これにより、次のような錯覚が生じます。
(2) NFT が詐欺師に送信された。
に基づく"に基づく"鎖
出所があれば、詐欺師は有名なクリエイターが鋳造したNFTを所有していると主張し、より高い価値で販売することができます。
これは技術的にどのように機能するのでしょうか?
私の a16z Crypto 同僚 Darenmatsuoka が、イベント ログとその仕組みについて Twitter に素晴らしい記事を書きました。転送イベント ログは、スマート コントラクトによって外部に送信されるメッセージであり、NFT 転送に関する詳細 (NFT の転送元、NFT の転送先、および転送された TOKEN ID) が含まれます。転送イベント ログは、NFT の出所を確認する効率的な方法を提供します。
副題
スリープミント詐欺"from "一般的なコンセンサスは、NFT を転送するためにトランザクションを送信する場合、アドレスをイベントに含める必要があるということです。"from "分野。ただし、詐欺師が有名なクリエイターから眠っているNFTを取得した場合はこの限りではありません。詐欺師は有名クリエイターのアドレスを人為的に追加できる
Sleep minting
分野。"First 5000 Days "これはビープルの数百万ドルの作品です"レアリブルにて販売中。スクリーンショットを見ると、はっきりとこう書いてあります
しかし、それは詐欺です。 NFTのバンクシーでもあると主張するその作成者、ムッシュ・ペルヌは、スリープミントと呼ばれる技術を使用して、ビープルの名前を意図的に鋳造しました。それで、彼はどうやってそれをしたのでしょうか?
基本知識
基本知識"Bob "NFTはERC-721スマートコントラクトを使用して作成され、NFTの所有権記録をリストとして保持します。作品のアドレスとシリアル番号が対になります。このように(私が入れました)"Booble")。
Alice: 1
Booble: 2
Malory: 3
と置換する
トランザクション後、アリスは次の方法で自分の NFT を Booble に転送できます。
転送1: アリス ==> ブーブル
Alice:
Booble: 2, 1
Malory: 3
リストは次のように更新されます。
イーサリアムでは識別のためにアドレス名を使用しており、転送を承認するには転送に署名する必要があります。ただし、この投稿で提供する例では、説明を簡略化するために明示的な名前を使用します。
現在、通常、開発者は合理的な方法で ERC-721 コントラクトを実装します。アリスは、NFT を所有し、有効な署名を提供できる場合にのみ転送できます。
ERC-721 標準は、アート プラットフォームの相互運用を可能にするインターフェイスを定義する単なる社会契約です。コントラクトのインターフェイスが ERC-721 コントラクトのインターフェイスと一致する限り、どのマシンでもそれが有効であると見なされます。
ただし、これでわかるように、これはイーサリアム上の NFT の出所に関するセキュリティ上の問題を引き起こす可能性があり、改ざんされる可能性があります。
先ほど述べたように、合理的な ERC-721 契約では、マイナーは自分のためだけにコインを鋳造し、自分が所有するシャードのみを転送することができます。
ただし、他のアカウントにミントできるように ERC-721 コントラクトをカスタマイズするとします。特定の状況下で私たちのアカウントが他の人のNFTも転送できるように転送機能を調整するとします。そうすれば、スリープミントを許可する契約を構築できます。
mint 1: address(0) =>例: 攻撃者マロリーとして、Booble 用にシリアル番号 1 の作品を鋳造します。
ブーブル (マロリー演じる)
Alice:
Booble: 1
Malory:
これで、ペアリングは次のようになります。
次に、マロリーはシリアル番号 1 の作品をブーブルのアカウントから他のアカウントに転送するように契約を調整したため、彼女はそれを rarible などの NFT プラットフォームで販売できるようになります。"彼女のアドレス (0) から Booble への鋳造は"作成者 -- ブーブル
表示されています。"Ethers"マロリーが購入者を騙すことに成功すると、彼女は彼女のお金を受け取ります。
、偽物の作品を購入者に販売します。
転送 1: ブーブル => 購入者 (マロリーによって実行)。
Alice:
Booble:
Malory:
Buyer: 1
更新された所有権レコードは次のようになります。
このようにして、マロリーはNFTの出所記録を改ざんすることに成功し、彼女の作品を価値以上の価格で販売しました。
詳細:raribleとEtherscanの情報をよくチェックして、
これはセキュリティ ホールというよりもインターフェイスの問題であることがわかります。 beeple のアカウントには誰もアクセスできません。
また、取引記録を詳しく見ると、詐欺師の手口を見つけることができます。
偽造幣局取引
偽装送金取引"From "mint トランザクションの場合、Etherscan は 2 つを示していることがわかります。
分野。 1 つは msg.sender によって送信されたトランザクションで、もう 1 つは NFT を示す送信者です。
トランザクションの送信者フィールド、つまり msg.sender については、送信者の秘密キーの有効な署名が必要なため、操作できません。ただし、「転送されたトークン」フィールドの承認はスマート コントラクトの抜け穴の影響を受けるため、操作される可能性があります。。
簡単に言えば、犯罪者は「転送されたトークン」フィールドを任意に変更できるということです。
したがって、From と Tokens Transferred の両方がビープルの正しいアドレスと一致することを確認する必要があります。そうでない場合は偽物です。"rugpull "これはそれを攻撃します


