見出し画像

【NFT】OpenSea、hiddenに届いたスパムNFTの安全な削除方法について

<2023年2月7日追記>

「TrashBox for Spams v2」の復旧目処、立たないようです。
スパムNFTを食べるNFTコレクション「UPA!」等をお使いください。

https://twitter.com/DeBreed_Project

<2022年10月18日追記>

本日「TrashBox for Spams v2」が停止していることを確認しました。障害なのか、それ以外なのか、サービス継続の予定があるのかについて、確認中です。


はじめましてのヒトは、はじめまして。
いつもの皆様、こんにちわ。
大葉さんです。

前回のお話

2022年2月後半、国内NFTアート界隈で「OpenSeaのhiddenに届いたNFTを公開するとWalletの中身がハックされる」等の噂が飛び交っていました。約1ヶ月ほど調査した結果、事実関係の確認と安全なスパムNFT破棄方法について情報がまとまりましたので、こちらにて公開させて頂きます。

前提知識として「独自コントラクト」「共有コントラクト」が必要なので、前回の記事も読んでくださいね!(宣伝)

なぜこの記事を書いたのか?

(1)「OpenSeaのhiddenに届いたNFTを公開するとWalletの中身がハックされる」についての事実確認
(2)スパムNFTの安全な削除方法

上記2点を明確にする為です。結論をお伝えすると、以下です。

(1)そのNFTがOpenSeaの共有コントラクトで作成されている場合、オペレーションを誤らなければ被害を回避できます。独自コントラクトで作成されている場合、残念ながらハックされる可能性はありえます(実被害は確認されておりません)

(2)OpenSeaの共有コントラクト上のスパムNFTを一括で削除できるDappを公開している日本人の方がいらっしゃいました。このWebツールを使えばスパムNFTの90%は削除できます。残った10%は「本当にヤバい奴」なので触らないようにしましょう。

それでは詳細について触れていきましょう。

■OpenSea「hidden」とはなにか?

保有するNFTのうち、一般公開したくないNFTを集めるカテゴリ。
また、giveawayのように相手から前触れなく直接送り付けられてきたNFTは、いったん「hidden」に収容される仕様となっています。

公式アナウンスはこちら。

ここ重要なんですけど「hidden」は「OpenSea独自の機能」です。

従って、冒頭で紹介した「unhideのタイミングでWalletが乗っ取られる」という問題は、OpenSeaのみで発生します。Foundationや、その他のマーケットプレイスでは、絶対に起きない問題です。

また、ブロックチェーン上に公開する/公開しないを決めるフラグがないので、他のサイト(oncyber.ioなど)でNFTを飾ろうとした際に、スパムNFTで画面が溢れて欲しいNFTが見つからない、みたいなことになります。これが実害。

追記:バグだったみたいで2022年3月31日に修正されました。

■「unhide」は、いったい何をやっているのか?

OpenSea上でのみ通用する「一般公開しない」フラグを「一般公開する」に切り替えてます。この行為自体は危険性がなのですが、設定変更を確定させる為に、メタマスクで1度だけ「承認」を行う必要があります。

この「承認」を「なんらかの手法」によって「攻撃者への送金」あるいは「攻撃者へオペレーションを全委任する」という内容に書き換えられるとハックされます。

では、「どうやって?」

■「unhide」操作を起因としたWalletハック問題(ヒアリング結果)

1ヶ月間、ヒアリングをしてみた結果、以下の5パターンに絞り込めました。

(1)偽物のOpenSeaサイトで操作をしてしまった。

原因:
差出人「OpenSea」のメール本文に記載された/「OpenSea」「OpenSea Support」と名乗るTwitterアカウントから教えてもらったURLをクリックしてOpenSeaへアクセスした。

対策:
OpenSeaに接続する際に、メールのリンクは使わない。
Twitterのリプで送信されてくる英文ツイートは全部無視する。

(2)NFTの「unlocked Contents」に記載されたURLをクリックした。

原因:
「unhide」を確認していると「GIFアニメーションで画像がコロコロ変わらない」「フリーズ済み」「100以上の良いねがついている」「unlocked Contentsのおまけ付き」「しかも販売実績のある」NFTが見つかった。

抽選にでも当たったのかな?と思って、全ボタンを押していたら突然メタマスクが立ち上がった。よくわからないので、とりあえずクリックしてみたら、資産がなくなった。

対策:
赤枠のようなNFTは確実に詐欺!触らないように!

(3)悪意あるコードが組み込まれたNFTの「画像をクリック」すると偽の承認要求が発生し、クリックすると資産が抜かれた。

原因:
以下の動画を参照。

対策:
NFTの画像をクリックした際にハックされていますよね。「unhide」操作じゃないですよね…結果として資産は抜かれてしまったのかもしれませんが、全てが全て「unhide操作が悪」と決めつけないで欲しい事案でした。

(4)実は「unhide操作」する前に、DMでお仕事依頼されて、送られてきたzipファイル開いていました。

原因:
zipファイル経由の乗っ取りです。「unhide」関係ないです。

メールのやり取りをしてお仕事受諾。メール添付のパス付きZIPを解凍、応募要項のファイルが解凍できなかったのでクリックしたら翌日残高を盗まれていました、みたいな報告を確認しました(拡張子は偽装されていたそうです)

対策:
海外からのお仕事依頼、十分ご注意下さい、特に添付ファイルは無闇に開かない事。

(5)独自コントラクトを利用した巧妙な乗っ取りが仕込まれていました。

原因:
独コンの場合は「なんでもあり」なので、「unhide」をキックにWalletを乗っ取られる可能性はあります。100%安全と断言はできません。

対策:
理論的には出来ますが、このパターンで攻撃された被害者は確認できていません。

桜川俊信様( https://twitter.com/Titan_toshinobu )より、注意勧告がありました。少数ながら、間違いなく存在はしているようです。

■では、どういうNFTであれば安全に「unhide」可能なのか?

差出人の方が明確な場合です。
知らない人から送られて来たNFTは、どんなにクオリティが高くとも、全てスパム扱いで良いと思います。特にいいねが3桁であれば疑ってかかるべし。

■スパムNFTの安全な削除方法

ようやく辿り着きました、本題です。

【結論】「TrashBox for Spams v2」を利用しましょう!

ツール製作者

Nuko.eth 様( https://twitter.com/nuko973663 )

機能概要(必ず読みましょう)

Dappアクセスサイト

使い方

右上「Connect」に接続。

下方向にスライドしていくと、保有するPolygon NFTの一覧が表示されます。

OpenSea上でのhidden/unhiddenに関わらず、リストに並びます。また、OpenSeaの都合で非表示になっているNFTも見えてしまいますが、それらのほとんどはスパムNFTです。

要求に従い、メタマスク側で「Polygon」にネットワークを変更します。

変更しました。

表示されるNFTの全ての初期値は「捨てない」です。

破棄したいNFTのフラグのみを「捨てる」に変更します。

「②THROW OUT」をクリック

メタマスクが起動して少額のガス代(MATIC支払い)を要求されます。

ガス代が支払われると、トランザクションが発行されます。

処理が進むと、画面が真っ白になる場合があります。画面をリロードし、再度「Connect」をクリックすれば再表示されます。そのままNFTの破棄情報が反映されるまで10〜15分程度、画面を開いたまま、お待ちください。

完了すると「DONE」が表示されます。OpenSea上でも削除内容が反映されていることを確認してください。本ツールとOpenSeaの画面表示が異なる場合は「OpenSea側が正しい」です。

■Q&A

Q:なぜこのツールを使うと安全なのですか?
A:こちらで解説されています。

Q:「hidden」NFTのみを表示するように、ツールを改良できませんか?
A:残念ながら、出来ません。OpneSea独自機能である「hidden」を外部ツールから確認する術がありません。

Q:OpenSeaで表示されるより多く、NFTを保持していることになっていますが、本ツールの表示は正しいですか?
A:TrashBox for Spams v2は、条件を満たすブロックチェーン上のNFTを全て表示します。OpneSea上で意図的に非表示とされたNFTも出力される為、トータル枚数は多くなる傾向にあります。ただし、追加表示されるNFTは全てスパムNFTなので、コレクター側へのメリットは何もありません。

Q:ガス代が足りないと言われました。
A:本ツールを利用する為には、Polygonネットワーク上で、少量のMATICが必要です。お手数をおかけしますが、なんらかの方法で入手願います。

Q:操作を失敗し、必要なNFTを削除してしまった場合はどうなりますか?
A:残念ながら削除してしまったNFTは復活させることが出来ません。

Q:操作中に画面を閉じちゃいました。
A:再度DApp画面を開いて、メタマスクとコネクトし直してください。

Q:本ツールで表示されておらず、かつ、hiddenに保存されたままのスパムNFTがあるのですが、、、
A:そいつが1番ヤベェやつです。「unhide」操作もNG、絶対に触らないでください。

Q:ETH上のNFTが一切表示されていません。
A:ETHチェーン上のNFTを利用してスパム行為をする業者は存在しないとの前提から、本ツールはPolygonのみを対象に作成されています。ETH上のNFT作成には、どんなにガス代安くても1枚あたり500円以上はかかるので、スパム業者さん的には「あ、いいです結構です」ってなるようです。Polygon NFTはOpenSeaを使うとNFT発行手数料0円なので…

Q:スパムNFT削除後、1日以上経っても削除したはずのスパムNFTが表示され続けています。新規に送られてきたスパムNFTは追加されたので、連携できていないとは思えないのですが…
A:OpenSea側のPolygonネットワークの調子が悪いと発生する場合があります(「OpenSeaにconnect」→「hiddenタブをクリックして一覧表示」→別のタブを開いて「TrashBox for Spams v2にconnect」で改善しましたが、正しいオペレーションかどうかは不明)

Q:操作したけどメタマスクのリクエストが取り込まれず、スパムNFT削除処理が数時間待っても進みません。どうすれば良いですか?
A:2022年3月17日現在、Polygon BlockChainお嬢様がご機嫌ナナメです。いくらガス代としてMATICを貢いでも、新規リクエストを全く取り込んでくれません。大変申し訳ございませんが、お嬢様がお仕事に着手されるまで、気長にお待ちください。セバスチャンも募集中!

【3月17日16:00追記】
セバスチャンからの回答を得ました。

さらに「TrashBox for Spams v2」の親御さんからもアドバイス貰えました。

Web 3の世界は人材が豊富ですね。
みんなでどんどん情報共有して、未来に向けて登り詰めて行きましょう!

【付録】「TrashBox for Spams v2」開発者様へのご支援はこちらへ

・NFT toolboxサイト ( https://crypto-creators.app/home
・Nuko.ethご本人様個人サイト(https://nuko.tech/
・所属DAO(万象-森羅:https://banshou-shinra.com/

【支援先】Nuko.eth様ご本人
0x4F86847ABC39a79deFa890587836A7f5082e74f3 / nuko.eth

【支援先】DAO活動寄付アドレス:0x767Ae5B98c1087BeD02aAa08898Fd5C4872eB941


本日はここまで。
ではでわではでわ〜


次のお話

この記事が気に入ったらサポートをしてみませんか?