
Solanaフィッシング対策ガイド:リスクの識別と防止方法
TechFlow厳選深潮セレクト

Solanaフィッシング対策ガイド:リスクの識別と防止方法
本記事では、よく見られるSolanaのフィッシング攻撃手法をまとめ、ユーザーが関連するフィッシング事件を効果的に回避し、資産損失を減らせるよう支援します。
執筆:Go+ Security
最近、Solanaの時価総額が急騰し、一時はBNBを上回って世界3位にまで上昇しました。この大きな富の効果により多数のアクティブユーザーが引き寄せられると同時に、Wallet Drainer(ウォレット・フィッシング)グループもEVMチェーンからSolanaへと相次いで流入し、Solanaを標的としたフィッシングサイトやエアドロ詐欺が大規模に展開されています。すでに多くのユーザーが甚大な資産被害を受けています。最近、GoPlusセキュリティチームは複数のSolana関連フィッシング事件を分析し、現在の一部のSolanaウォレットにおけるセキュリティ基盤の未整備を悪用して、詐欺グループがエアドロ誘導やソーシャルアカウント盗難などの手法を急速に進化させていることを発見しました。以下に、GoPlusがまとめた代表的なSolanaフィッシング攻撃手法を紹介し、ユーザーが同様の被害を回避し、資産損失を最小限に抑えるための参考とします。
攻撃タイプ
最近の複数のフィッシング事件において、GoPlusは詐欺グループが主に「エアドロ受け取りの誘導」、「偽プロジェクトWebサイト」、「無料抽選」、「NFTエアドロによる誘導」といった方法を用いていることを確認しています。これらの誘導方法はEVMチェーンでよく見られるものとほぼ同じですが、大きな違いは、詐欺師がSolanaとEVMのメカニズムの差異を悪用し、異なる形での「トークンまたは権限移転」を行う点です。以下に、観察されたいくつかの異なる移転型攻撃手法を紹介します。

ネイティブトークンSOLの移転誘導
このタイプの攻撃は最も単純なもので、詐欺グループはユーザーがウォレットを接続した後、フロントエンドでそのユーザーの全$SOL残高を計算し、SystemProgram.transfer機能を利用して直接的にトークンを移転します。あるフィッシングサイトでは、Swap画面のUIを表示しており、ユーザーは通常、安価に特定のトークンを購入できると思い込んで操作します。

しかし実際には、単に$SOLの送金処理が行われるだけです。

複数のトークンの移転誘導
$SOLの盗難に加え、詐欺師は1回のトランザクション署名内で、ユーザーのウォレットにあるすべてのToken資産を同時に盗むことが可能です。Solana上の各トランザクションは複数のInstruction(命令)で構成され、それぞれの命令が個別の処理(送金、プログラムとの相互作用、Account作成など)を実行できます。つまり、フィッシンググループは1つのトランザクション内に複数の操作命令を挿入することが可能であり、例えばユーザーが3種類の異なるTokenを保有している場合、フィッシングサイトはコード内でそれら3つのTokenに対する送金命令を1つのトランザクションにまとめて挿入すればよいのです。これにより、特定の資産だけを狙う必要がなくなり、一度の操作でウォレット内の資産を完全に奪取することが可能になります。前述の第一の誘導と同じく、ハッカーはさまざまな手段でユーザーを騙してボタンをクリックさせ、取引を承認させます。このタイプのトランザクションは、ネイティブの$SOLだけでなく、NFTおよび他のトークン資産も含め、すべての資産を一括で持ち去ります。このような非ネイティブ資産の移転命令の構築には、主にSolanaのSPL TokenにおけるcreateTransferCheckedInstructionが利用されています。

Phantom トランザクションシミュレーション

Backpack トランザクションシミュレーション
トークンアカウント所有権の移転誘導
単なるトークンの盗難に加えて、GoPlusは一部のフィッシングサイトがcreateSetAuthorityInstructionという操作を用いて、トランザクションに命令を埋め込んでいることも発見しています。この操作の本質は、アカウント上のトークンの所有権を他者に移転することです。SolanaのアカウントモデルはEVMとは異なり、各アドレスは各トークンに対して専用のToken Accountを持ちます。このToken Accountには所有者(owner)が設定されており、現在のウォレットアドレスが該当します。また、Token Accountは対応するトークンの残高や各種情報を記録しています。createSetAuthorityInstruction操作により、特定のトークンの所有権を他のアカウントに直接譲渡でき、結果としてそのトークンを完全に相手に移転したのと同じ効果が得られます。我々はPhantomおよびBackpackでこの操作を試験しましたが、幸いなことに、いずれのウォレットも特別な警告メッセージを表示してくれました。


ユーザーがIgnore and proceed anywayを選択しても、トランザクションシミュレーションにより残高変化を確認できます。

注意
上記の3種類の攻撃手法については、現在ほとんどの主流Solanaウォレットがトランザクションシミュレーション機能を通じて結果を予測可能となっており、ユーザーは取引後の残高変化を明確に確認できます。したがって、ユーザーが各取引内容を丁寧に確認すれば、ある程度のフィッシングリスクを回避できるでしょう。これはSolana公式のJSON RPCインターフェースが「トランザクションシミュレーション」機能を提供しているためです。しかし、フィッシング詐欺技術の進化に伴い、極めて判別が困難な新手の攻撃も見つかっています。
トークン許可の詐取
EVMに精通したユーザーにとって、トークンの許可(Approve)は一般的な操作ですが、Solanaでは事情が異なります。Solanaネットワークでは、詐欺師はユーザーがEVMの許可メカニズムを誤解している点を突いて攻撃を行います。フィッシングサイトは、一見正常なインタラクション操作のように見せかけ、裏ではcreateApproveCheckedInstructionを使って、実際にはDelegate(委任)権限を与える取引を実行しています。この手法の核心は、資産を直接移動せず、代わりに攻撃者にユーザー資産の管理権限を与えることです。こうした攻撃は通常、「投票」「ステーキング」など魅力的なインタフェースの背後に隠れており、ユーザーが気づかないうちにアカウントの許可設定を変更しています。
一度攻撃者がユーザー資産の制御権を得れば、いつでもその資産を自由に移動・売買できます。このタイプの攻撃は即座に資産の減少が現れないため、発覚が遅れやすく、被害範囲も広くなります。攻撃者は多くのユーザーが騙されて十分な資産が集まるまで待機し、その後一斉に資産を移転するケースが多いのです。ユーザーは、不審なウェブサイトやアプリからの「許可設定の変更」要求には常に警戒が必要です。トランザクションシミュレーションでは許可の変更も確認できるため、残高の変化だけでなく、許可の変更にも注意を払う必要があります。


Durable Nonceによる取引署名の詐取
Durable Nonceは、Solanaブロックチェーンが提供する機能の一つで、永続的かつ期限切れにならないnonce値を格納する特別なアカウントを作成できます。Solanaでは、すべてのトランザクションに最新のブロックハッシュ(recent blockhash)が必要で、これは取引の有効性と一意性を保証します。通常、このブロックハッシュは約150ブロック後に失効し、取引は処理できなくなります。一方、Durable Nonceは期限切れしないnonce値を提供することで、長期間有効な取引の作成を可能にします。
フィッシング詐欺では、詐欺師はDurable Nonce機能を悪用し、一見正常に見えるが実際には悪意のある操作を含む取引にユーザーを署名させることがあります。Durable Nonceを使用することで、ブロックハッシュの有効期限切れによる失敗が防がれ、詐欺師に長い時間枠を与えます。たとえば、詐欺師はエアドロ参加やイベント参加のような正規の操作に見せかけた取引を設計し、実際にはユーザーの資産を自分に送金する命令を含ませます。ユーザーは無知のうちにその取引に署名しますが、ブロックチェーン上にはその取引が存在しないため、すぐに気づきません。なぜなら、攻撃者は取引自体をブロックチェーンに送信せず、ただ署名だけを取得しているからです。その後、任意のタイミングでその署名済み取引をブロードキャストできます。ただし、取引が実際に発生するかどうかに関わらず、このタイプの署名はトランザクションシミュレーションの結果判断に影響しません。主要なウォレットは依然として取引をシミュレート・解析し、結果を提示できるため、従来のシミュレーションによる判断は依然として有効な手法です。
しかし、我々はさらに極めて巧妙かつ隠蔽性の高い攻撃手法を発見しました。それはまさに「瞒天過海(まんてんかかい)」とも言えるものです。
コントラクトアップグレードによるトランザクションシミュレーション回避
この手法は、Durable NonceとSolanaコントラクト特有のアップグレード可能という特性を組み合わせたものです。この攻撃の潜在的危険性は、コントラクトのアップグレード機能によってさらに拡大されます。Durable Nonceは長期有効なnonce値を持つアカウントを作成することで、取引をより長い期間有効に保つことができます。つまり、ユーザーが署名した取引を直ちにブロックチェーンに送信しなくても、将来いつでもブロードキャスト・実行が可能です。攻撃者はまず、ユーザーに一見何の問題もないコントラクト取引に署名させます。この時点では、主流のウォレットやシミュレーションツールでも警告を出すことはできません。ユーザーが署名を完了すると、攻撃者はDurable Nonce付きの署名を獲得します。その後、攻撃者はSolanaのコントラクトアップグレード機能を用いて、元の正常なコントラクトを悪意あるバージョンに変更します。この悪意あるコントラクトは、資産の移転などの操作を実行できます。アップグレード後、攻撃者は事前に署名された取引をブロックチェーンに送信し、悪意ある操作を実行して目的を達成します。この攻撃は極めて巧妙で、ユーザーにとっては重大な脅威となります。熟練したユーザーであっても、取引署名時に潜在的なリスクを認識するのは困難です。このような攻撃を防ぐため、ユーザーはコントラクトの信頼性や履歴を慎重に調査し、異常な取引行動に対して常に疑念を持つべきです。不明な出所や新設されたコントラクトとのやり取りは避けましょう。また、すべてのSolanaウォレットがこの攻撃手法に注意し、適切な警告とユーザー資産保護機能を実装することを強く望みます。
予防策
Solanaネットワークにおけるフィッシング攻撃に対処するため、以下の包括的な予防策を講じることでリスクを最大限に低減できます:
-
セキュリティ意識の向上:暗号資産関連のあらゆる取引に対して常に高い警戒心を持ちましょう。Solanaにおけるフィッシング攻撃の代表的手法(トークン移転の誘導、トークンアカウント所有権の移転、取引署名の詐取など)を理解しておきましょう。
-
取引内容の詳細確認:取引を行う前に、必ず内容を細かく確認しましょう。Durable Nonceの使用やコントラクトとの相互作用を伴う取引には特に注意が必要です。
-
トランザクションシミュレーションの活用:ウォレットが提供するシミュレーション機能を活用し、結果を慎重に確認してください。ただし、これは万全ではなく、シミュレーションが機能しないケースもあるため注意が必要です。
-
許可変更への注意:取引後もトークン残高の変化がない場合でも、許可の変更には警戒しましょう。特に未知のサイトやアプリでは、許可設定の変更操作に敏感になるべきです。
-
不要な許可の定期的な解除:Solana Revokeなどのツールを用いて、不要な許可を定期的に解除し、資産の安全性を確保しましょう。
-
知識の定期的な更新:ブロックチェーンや暗号資産に関する知識を定期的に更新し、新たに出現するフィッシング手法や防御策を学びましょう。
-
ソフトウェアの最新化:使用しているウォレットおよび関連ソフトウェアは常に最新版にしておき、最新のセキュリティ機能と修正を適用しましょう。
-
秘密鍵のバックアップと保護:秘密鍵や重要な情報を安全に保管し、不安な場所での保存や共有を避けてください。
同時に、GoPlusセキュリティチームはSolanaパブリックチェーンおよびそのエコシステムに対し、ユーザーのセキュリティを深く重視し、ユーザー向けのセキュリティインフラ整備を加速し、より安全な取引環境を提供して、エコシステムの安定と繁栄を実現するよう呼びかけます。
TechFlow公式コミュニティへようこそ
Telegram購読グループ:https://t.me/TechFlowDaily
Twitter公式アカウント:https://x.com/TechFlowPost
Twitter英語アカウント:https://x.com/BlockFlow_News














