CoinPostで今最も読まれています

Web3ウォレットMetamask(メタマスク) 利用上の注意点を解説

画像はShutterstockのライセンス許諾により使用

目次
  1. dAppsの権限(Permission)
    1-1. ウォレットの接続(Connect)
    1-2. コントラクトの承認(Approve)
    1-3. コントラクトの署名(Sign)
    1-4. 承認(Aprove)のリスクと対策
    1-5. 署名(Sign)のリスクと対策
  2. コントラクト対話時のチェックリスト
    2-1. 接続を切断する方法
    2-2. 承認を取り消し(Revoke)する方法
    2-3. 署名のパラメータ調整方法
  3. 代表的な詐欺の手口

①dAppsの権限(Permission)

dApps(分散型アプリケーション)を利用するために、「Metamask(メタマスク)」を初めとする暗号資産ウォレットを接続する必要があります。

分散型取引所UniSwapやNFT(非代替性トークン)マーケットプレイスOpenSeaなどを開くと、メタマスクなどのポップアップが表示され、何らかの「権限(Permission)」を要求された経験をした方は多いでしょう。

出典:Consensys

こうした権限の付与は、dAppにユーザーが保有するトークンへのアクセスを可能にするために必須なプロセスです。dApp上のアクションはトークンの入金・送信に関連しており、ウォレット使用の許可を得なければ何も実行しません。

一方で、悪意のあるコントラクトやdAppに不用意に権限を与えたばかりに、資産の不正流出につながるハッキング事例も多発しています。

この記事では、dAppsの利用時に必要になる「権限(Permission)」について解説。及び、メタマスクのセキュリティ対策についてご紹介します。

1-1. ウォレットの接続(Connect)

dAppを使用する際、最初にウォレットと「接続(Connect)」することになります。これは、 DeFi(分散型金融)、ブロックチェーンゲーム、NFT(非代替性トークン)マーケットプレイスも同様です。

出典:ConsenSys

接続(Connect)の権限を得たdAppは、ユーザーアドレス(つまり保持している資産内容)を見ることができるようになります。しかし、まだトークンにアクセスして移動することはできません。

dAppsに接続する必要があるのは1回だけであり、過去に接続したサイトは「接続済みサイト(Connected Sites)」で一覧表示されます。接続したサイトの切断方法については、後ほどご紹介します。

1-2. コントラクトの「承認(Approve)」とは

DeFi、ブロックチェーンゲーム、NFT購入を含むdAppsを利用する場合、スマートコントラクトとやり取りするには、トークンへのアクセス権限を承認する必要があります。

「Approve(承認)」トランザクションはその一つで、UniswapやCompoundのようなDeFi(分散型金融)アプリケーションの利用時に、以下のようなポップアップを見た人は多いでしょう。

出典:Consensys

出典:Consensys

ユーザーは、トークンへのアクセスを「承認(Approve)」するトランザクションを発行した後、スワップや流動性提供などのトランザクションを発行できるようになります。

つまり、DEX(分散型取引所)で新たにトークンを交換したい時、最低2回のトランザクションを要すので、それだけガス代がかかることになります。(なお、イーサリアム:ETH自体の操作にこの承認は必要ありません。)

1-3. コントラクトの「署名(Sign)」とは?

すべてのトークンが、承認トランザクションを要求するわけではありません。このメカニズムは、 EIP-3009を実装するトークンには不要であり、その代表例がステーブルコイン「USCCoin(USDC)」です。

出典:@Korpi87

EIP-3009では、承認(Approval)トランザクションの代わりに、「許可(Pernmit)トランザクション」を使用します。これは、承認と送信を1つのトランザクションにまとめるので、承認のガスコストはかからず、トークンの送信時にのみガスを支払います。

「署名(Sign)」は、前述の承認トランザクションをウォレット内の「メッセージ」データ内の署名に置き換えることで、ユーザーエクスペリエンスを向上します。

承認と同様に、署名(Sign)はユーザーのウォレットからトークンをアンロックするために使用されており、トレードやデポジットに使用されています。

1-4. 承認(Aprove)のリスクと対策

トークンの承認(Aprove)は、詐欺の一般的な攻撃経路となっています。悪意のあるdAppsにトークンの無制限のアクセス許可を与えてしまうと、ユーザーの資産を自由に移動することが出来てしまいます。

出典:Metamask

これを防ぐ一つの方法は、MetaMaskで表示される承認画面の「Edit Permission」から、上限を調節することです。下図の場合、Uniswapは「stETH」への無制限のアクセスを要求しています。実績の少ないDEXを利用する際などには「Custom Spend Limit」フィールドを使ってこのアクセス権に制限を設けましょう。

出典:Metamask

このように、メタマスクではトークン数量のアクセス承認を管理できるので、dAppsに必要以上にアクセスを許可したり、新しいプラットフォームを試すために不要なリスクを負う必要はありません。

1-5. 署名(Sign)のリスクと対策

トランザクションを一つカットできる「署名」は便利ですが、資産が盗まれるリスクは承認と同様にあることを覚えておく必要があります。

承認トランザクションをウォレット内の「メッセージ」データへの署名に置き換えているとはいえ、怪しいdAppに無制限のアクセスを許可していれば不正流出のリスクに晒されます。

8月には「署名(Sign)」が原因となって、DeFiトレーダー「Joe (仮名)」のウォレットから約7,000万円(50万ドル)相当のUSDC(USDCoin:米ドル連動型ステーブルコイン)が流出する事例が報告されました。

約7,000万円(50万ドル)相当のUSDCが奪われたJoe (仮名)の場合は、事件の10分前に悪意のあるコントラクトに署名(Sign)した事が、行動履歴から明らかになっています。

出典:@Korpi87

ユーザーの署名があれば、攻撃者はPermit関数を用いてターゲットのトークンを送信できてしまいます。これを悪用して、闇市場ではメタマスクを介して簡単なメッセージに署名するだけでウォレットから資産を盗む「NFT Drainerツール」なるものが販売されているそうです。

時々、署名リクエスト画面で「この署名がアカウントと資産の乗っ取りをもたらす可能性がある」とMetamaskによる警告メッセージが表示されることもありますが、万全ではありません。そのため、ユーザーは承認と同様に、新しいdAppに必要以上にアクセスを許可することを避ける方が懸命です。

⑦コントラクト対話時のチェックリスト

dAppsからの「許可リクエスト」は、特定の数量に限定されたものから、完全に無制限のものまで様々です。無制限アクセス自体に問題がある訳ではありません。

大手DEXなどの信頼できるプラットフォームの多くが利便性を高めるためにこの機能を使用しています。問題は、トークンを盗む目的で無制限アクセスを要求するdAppsがあることです。

dAppsにトークンへのアクセス権限を許可する前に、以下のようなチェックリストでリスクを評価しましょう。

  • そのプロジェクトの評判は?
  • いつから稼働しているか?
  • Discord、Telegram、Twitterに正当なコミュニティチャネルがあるか?
  • 開発者/オーナーに透明性があり、公に連絡が取れる状態になっているか?
  • 第三者によるスマートコントラクト監査を受けているか?
  • ブロックエクスプローラーでコントラクトアドレスを確認する。

許可リクエストに表示された「Granted to」項目から、承認を求めているコントラクトアドレスをコピーし、ブロックエクスプローラーでその正当性を検証することができます。Etherscanなどのエクスプローラでは、ユーザー向けの報告窓口があり、不正なコントラクトに警告フラグを立てられます。

2-1. 接続(Connect)を切断する方法

メタマスクには、ウォレットがこれまでに「接続(Connect)」してきたサイトを一覧表示する機能があり、それらを切断することもできます。

出典:Metamask

出典:Metamask

出典:Metamask

出典:Metamask

接続を切断しても、そのdAppで行ったトークンの承認は取り消されません。つまり、dAppを切断しても、トークンにアクセスされて移動される可能性があります。承認の取り消しの詳細については以下の項目を参照してください。

2-2. 承認(Approve)を取り消し(Revoke)する方法

Etherscan、BscScan、Polygonscanなどのブロックエクスプローラーにある「承認チェッカー」で、これまでに承認(Approve)してきたdAppsを一覧表示し、それらを取り消し(Revoke)することもできます。

出典:Metamask

また、次のようなウェブサイトでも同様の作業が可能です。

トークンの承認はオンチェーントランザクションで行われるため、承認の取り消しもまたオンチェーンで実行され、ガスコストが発生する点に留意する必要があります。

2-3. 署名(Sign)のパラメータ調整方法

EIP-3009を初め、トークンによって署名(Sign)をサポートしているものとそうでないものがあります。この判別はブロックエクスプローラーの各トークンの「Contract」タブで確認できます。下図は1inchトークンの「Contract」タブであり、7番に「Permit」ファンクションが確認できます。

出典:1inch

1inchの場合

署名(Sign)の採用例として、DEXアグリゲーター「1inch」の利用手順と、パラメータの調節方法をご紹介します。

以下の図は、取引したいトークンのペアを設定する場面で、Permit方式をサポートする「You Pay」トークンのアクセス許可を付与する場面です。1inchスマートコントラクトに初めて許可を与える場合、UI上に「permit and swap」オプションが表示されるので、これをクリックします。

出典:1inch

出典:1inch

署名後、1inchに「You Pay」トークンへのアクセス許可が30分間有効になります。ユーザーはこの時間内にスワップを実行できます。

出典:1inch

この許可のパラメータを調整するには、スワップ画面の「設定アイコン」をクリックし、次に「Sign Permit」オプションをクリックします。

次の画面では、3つの許可証のオプションが表示されています。「Ask each time」を選択することで、スワップの度に1inchがアクセスできる数量を設定できます。不必要に多額アクセス許可を提出することなく、1inchを利用できるのです。

出典:1inch

③代表的な詐欺の手口

「承認(Approve)」や「署名(Sign)」を踏まえて、詐欺のリスクを防ぐために一般ユーザーができる最も簡単な方法は、悪意のあるコントラクトに接続しないこと。そのためには、不正なサイトの利用を避けるための知識を備えることが重要です。代表的なフィッシング詐欺とDNS詐欺について、ご紹介します。

3-1. フィッシング詐欺

SNSのアカウントIDを偽装した投稿や、なりすましメール内のリンクでユーザーを偽のサイトに誘導し、コントラクトの署名を引き出すフィッシング詐欺の手口が報告されています。

例えば、有力な投資案件や高額給与のオファーをEメールで送付して関心を誘ったり、人気通貨のエアドロップに参加できるとしてリンクをクリックさせて、悪意のあるコントラクトが立ち上がるといった事例が該当します。

関連:ApeCoinエアドロップなど偽装、有名Twitterアカウントを乗っ取るフィッシング詐欺が発生い

フィッシング詐欺自体は個人情報を詐取する目的で、横行してきたサイバー犯罪の手口です。偽リンクから利用者を騙し、偽のホームページに誘導して、認証情報やクレジットカード番号、口座情報(ユーザID、パスワード等)を奪います。

ブロックチェーンユーザーがフィッシング詐欺を防ぐため、見知らぬサイトで不用意にコントラクトに署名しないこと、Eネールの送信元アドレス全体を確認すること、不審なメールが届いた際に別のSNSチャネルで公式が関連するアナウンスを行っているかどうか確認することなどが推奨されています。

3-2. DNS詐欺

dAppsのフロントエンドを操作して、ユーザーから資産を奪う盗難被害も増加しています。フロントエンド攻撃は、ウェブサイトがハッキングの対象となるものです。

代表例は、偽のDNSレスポンスをキャッシュさせることで、ユーザーのアクセスを攻撃者が用意したサーバーに誘導する、「DNSキャッシュポイズニング」という手法です。

22年8月には、ステーブルコインを含む同価値資産の取引サービスに特化する「Curve Finance」のフロントエンドサイト「Curve Fi」で、DNSハッキングにより7,500万円相当のETHが不正流出しました(その後バイナンスらが資金の大半を回収しています)。

犯人はドメイン名とIPアドレスを紐づけるDNS(ドメイン・ネーム・システム)を改ざんし、ユーザーを偽サイトへ誘導し、悪意のあるコントラクトを承認させました。

3-3. リカバリーフレーズを要求する事例

ディスコードなどのSNSなどでなりすましのIDを作成し、運営サイドの公式サポートを装って問題を解決するためにリカバリーフレーズや秘密鍵を引き渡すよう求める事例が発生しています。

攻撃者にリカバリーフレーズや秘密鍵を渡してしまえば、ウォレット上の資産をねこそぎ奪われる可能性があります。リカバリーフレーズや秘密鍵は絶対に口外しないことは、Metamask使用上の最低限の基本知識です。

フィッシング詐欺もDNS詐欺も、基本的には攻撃のプロセスです。その時点で資産の流出に直結する訳ではありません。最終的には訪問先のウェブサイトで、リカバリーフレーズを提出したり、不審なコントラクトに接続しないよう気を付けることで資産保護につながります。

関連:「MetaMask(メタマスク)」とは|月間2000万人超が利用の仮想通貨ウォレット

ビットコイン投資の始め方はこちらをチェック

様々な仮想通貨を購入したい方は、取引所別の取り扱い銘柄を確認してみてください。

ビットコインETF特集
CoinPost App DL
注目・速報 相場分析 動画解説 新着一覧
11/10 日曜日
22:56
米国の現物ビットコインETFは過去最高の純流入、相場の先高観は維持を想定|bitbankアナリスト寄稿
bitbankアナリストが、米大統領選挙後に高騰したビットコイン(BTC)相場を分析。ビットコインETFの過去最高の流入増などから今後の展望を解説した。
13:00
今週の主要仮想通貨材料まとめ ビットコインATH更新やミームコイン考察レポートなど
暗号資産(仮想通貨)の材料まとめ 前週比の騰落率(11/3〜11/9) ビットコイン(BTC):76,614ドル +10.8% イーサリアム(ETH):2,934ドル +16….
11:00
週刊仮想通貨ニュース|米大統領選後のBTC相場分析に高い関心
今週は、米大統領選に関連した仮想通貨ビットコインの相場分析、ドナルド・トランプ氏の大統領選勝利、同氏勝利後のビットコイン価格予想に関するニュースが最も関心を集めた。
11/09 土曜日
12:35
米ブロック社、ビットコインマイニング部門の資金強化 7~9月期決算報告
米ブロック社が7~9月期決算を発表。仮想通貨マイニング部門への投資を強化し、音楽配信TIDALなどの投資縮小を表明した。
11:05
米大統領選で人気を博した予測市場ポリマーケット、今後エアドロップの可能性
今回の米大統領選で注目を集めた分散型予測市場「ポリマーケット(Polymarket)」は今後ユーザーへトークンのエアドロップを実施する可能性が浮上した。トランプ新政権の規制緩和が期待されるか。
10:05
テザー社の新事業、70億円規模の中東原油取引に資金提供 
ステーブルコインUSDT提供のテザー社が中東での原油取引に約70億円の資金提供。貿易金融事業への参入で新たな収益源を開拓している。
08:20
バイナンス、GRASSやDRIFTの永久先物取引提供 価格高騰
大手仮想通貨取引所バイナンスは8日23時ごろ、3銘柄の新規永久先物取引を提供開始した。対象となったのは、GRASS、DRIFT、SWELL。
07:30
仮想通貨取引所ビットバンク、投資子会社を設立
仮想通貨取引所ビットバンクは、投資活動を行う完全子会社Bitbank Venturesを設立。マネーのインターネット化を促進して、日本と世界の架け橋になるとしている。
07:00
イーサリアム財団が財務開示、資産の8割をETHで保有
イーサリアム財団は8日、2024年10月31日時点の財務状況を公表した。財団の資産総額は約9億7000万ドルで、そのうち7億8870万ドルが仮想通貨、1億8150万ドルが非仮想通貨(現金など)だった。
06:30
FOMC利下げが追い風、ビットコインが初めて77000ドル超え
仮想通貨ビットコインは日本時間9日4時30分ごろに史上最高値を更新し、77,312ドル(約1,180万円)に到達した。
11/08 金曜日
18:00
仮想通貨取引所を利用できる年齢は?
2022年の法改正で18歳から利用できる暗号資産(仮想通貨)取引所が増加。未成年が安全に仮想通貨投資を始めるための基礎知識と注意点を解説します。
15:45
ソラナのリキッドステーキング大手Jito、10月のDeFi収益ランキングでトップに
ソラナの大手リキッドステーキングJitoは、10月に手数料として過去最高となる7,892万ドルの収益を上げ、LidoやUniswapなど分散型金融大手の収益を上回った。
13:30
イタリア、仮想通貨キャピタルゲインへの42%課税案を見直しか
イタリアの経済財務大臣がビットコインなど仮想通貨への増税案見直しを示唆。党内からも、戦略的な資産クラスになり得ると反対意見が上がっていた。
13:20
トランプ新政権、SEC委員長候補を物色 ロビンフッドCLOが有力に
アメリカの次期SEC委員長候補として、ロビンフッドのダン・ギャラガー氏や元SEC委員のポール・アトキンス氏が浮上し、トランプ政権下での規制緩和が期待されている。
10:35
イーサリアム、新テストネット「Mekong」をローンチ
仮想通貨イーサリアムは、次期大型アップグレードPectraのためのテストネットMekongをローンチ。イーサリアム財団がローンチの目的を説明している。

通貨データ

グローバル情報
一覧
プロジェクト
アナウンス
上場/ペア
イベント情報
一覧
2024/12/01 09:30 ~ 20:00
東京 墨田区文花1丁目18−13
重要指標
一覧
新着指標
一覧