EN

NRIセキュア ブログ

Web3サービスに潜む7つのリスクとその対策|ブロックチェーン活用時に企業が知るべきポイント

目次

    Web3サービスに潜む7つのリスクとその対策|ブロックチェーン活用時に企業が知るべきポイントプラットフォーマーなどによる中央集権的なデータ管理ではなく、ブロックチェーン技術などを活用したデータを分散管理できる可能性が見出されているWeb3(Web3.0)という新しい世界観が注目されています。

    Web3は、金融や物販などの幅広い分野に適応されており、そこから暗号通貨やNFT、DeFiといった新たなサービスが生み出されています。一方で、Web3には従来のWeb2.0サービスには存在しないリスクや新たなリスク観点が想定されます。しかし、多くのWeb3サービスの開発~運用の中で十分な対策が取られているとは言えません。

     

    本稿では、特にブロックチェーンを活用したWeb3サービスにおいて想定されるリスクとその対策について、いくつかの具体策を紹介します。

    Web3とWeb2.0の違い

    Web2.0サービスでは、サービス提供企業がユーザのアカウントを管理し、そのアカウントに紐づけてユーザの資産を管理していました。また、基本的にはそのアカウントへの当人認証をもってアカウントに紐づく資産の操作が可能でした。ブロックチェーン技術を活用するWeb3サービスにおいては、ウォレットサービスなどで管理する秘密鍵に資産が紐づき、その秘密鍵をもって資産の操作権限を有します。

     

    Web2.0と比較してWeb3サービスを提供する上で、最も着目すべき点はこの秘密鍵管理の重要性にあります。この管理がおろそかになっている場合、予期せぬ資産の流出が考えられます。また、Web3サービスにより注目されたブロックチェーンやスマートコントラクトといった技術の積極的な利活用もWeb2.0との差分と言えます。これらの差分を考慮したリスク検討と対策が求められます。

    図1:Web2.0、Web3のイメージ図1:Web2.0、Web3のイメージ

    Web3サービスにおけるリスク

    リスク①秘密鍵の漏洩

    Web3におけるサービスにおいて重要となるのは秘密鍵の漏洩に関するリスクです。

    秘密鍵は現実世界における口座番号と暗証番号がセットになったようなもので、秘密鍵に紐づく資産を自由に送ることが可能です。そのため、秘密鍵が漏洩した場合、その鍵に紐づく資産全ての流出に繋がる可能性があります。

     

    特にWeb3サービスを提供する企業において企業側で秘密鍵の管理を行う場合は、その企業が保有する資産の流出となるため、事業規模によっては被害額が大きくなり、事業継続困難に直結するリスクとなります。

    秘密鍵を保管するインフラのシステムセキュリティだけでなく、鍵の生成・輸送・導入・利用・保管・廃棄と各ライフサイクルにおける運用をセキュアにすることが重要です。

    図2:秘密鍵の漏洩によるリスクのイメージ02

    リスク②フィッシングによる資産の流出

    リスク①の通りWeb3サービスでは、秘密鍵の漏洩により多大な被害へと繋がります。そのため、悪意者によるフィッシングなどでの秘密鍵や秘密鍵復元のためのニーモニックフレーズを狙った攻撃が多発しています。フィッシング攻撃には、各企業のウォレット管理者に加え、Web2.0と同様にウォレットサービスを利用するユーザも注意が必要です。

     

    フィッシング攻撃は、SNSの投稿や広告、エアドロップ[i]やNFTの無料配布を謳い文句に不正なサイトにユーザを誘導し、ユーザに悪意者のウォレットへ送金させるような不正な署名やニーモニックフレーズなどの入力、マルウェアのインストールなどを行わせます。これにより、悪意者に資産が盗まれるリスクがあります。

    図3:フィッシングによる資産の流出リスクのイメージ図3:フィッシングによる資産の流出リスクのイメージ

    リスク③スマートコントラクトの脆弱性への攻撃

    Web3サービスでは、ブロックチェーン上で自動的に実行されるスマートコントラクトが活用されることがあります。スマートコントラクトは、一度ブロックチェーン上にデプロイされると修正が不可能な特徴があります。これにより、開発したスマートコントラクトに脆弱性が含まれていた場合に予期せず資金が流出するリスクが考えられます。代表的な脆弱性として、リエントランシー攻撃[ii](Reentrancy Attack)や権限設計不備による権限詐取[iii]、単一オラクル参照によるオラクル操作攻撃[iv]などが存在します。

    図4:スマートコントラクトの脆弱性によるリスクのイメージ

    図4:スマートコントラクトの脆弱性によるリスクのイメージ

    リスク④マネーロンダリング/テロ資金供与

    Web3では、誰でも自由に匿名で秘密鍵を生成可能です。また、暗号資産の送受送においても、中央集権的な組織やシステムを介すことなくやり取りが可能です。これにより、マネーロンダリングやテロ組織などへの資金供与の手段として暗号資産が利用されるケースが見られます。

     

    そのため、自社で提供するWeb3サービスが直接的、あるいは間接的にマネーロンダリングやテロ資金供与のための踏み台サービスとして利用されてしまう可能性があります。これにより、レピュテーションリスクだけでなく、プラットフォーマーとしての責任を問われ、業務停止処分や取引停止など国からの処分対象となるリスクも存在します。本記事では、その中でもいくつかのリスクについて解説します。

    1: 制裁対象アドレスとの取引

    米国の財務省外国資産管理室(OFAC)などをはじめとし、各国で制裁対象のウォレットアドレスのリストを公開している場合があります。OFACでは、制裁対象アドレスへの送金を行った場合、二次制裁(セカンダリサンクション)や米国での取引停止や資産凍結など、重い処分がされるケースがあります。

    2: ミキシングサービスへの送金

    通常、Web3サービスでは取引がブロックチェーン上に記帳されるため、どのウォレットアドレスからどのウォレットアドレスに資金が移動したかを追跡しやすくなっています。一方、ChipMixerなどに代表されるミキシングサービス[v]を利用し、資金の追跡を困難にし、資金洗浄を行われるケースもあります。こうしたサービスに送信できるサービスを提供している場合、資金洗浄のための踏み台サービスとして悪用されるリスクがあります。

    3: マネーロンダリングに関する資金流入

    Web3では、資金の追跡性を低くするため、いくつものサービスやウォレットを経由し、マネーロンダリングを行うケースが多く発生しています。そのため、自社で提供しているサービスが、マネーロンダリングの1つの経由点として利用されるリスクがあります。

    図5:マネーロンダリング/テロ資金供与に関するリスクのイメージ図5:マネーロンダリング/テロ資金供与に関するリスクのイメージ

    リスク⑤連携サービス側の不正・脆弱性

    これまでに説明してきたリスクは自社だけでなく、他のWeb3サービスを運用する事業者にとっても同様に発生し得ます。Web3では、外部のスマートコントラクトの活用や外部サービスと連携したサービス提供をすることがあります。この時、そのスマートコントラクトに脆弱性が含まれないか、外部サービスが健全なものであるかの評価が必要となります。もし不備があった場合、自社または自社サービスユーザの資産損失に繋がるリスクがあります。

     

    また、Web3サービスでは誰でも容易にあらゆるサービスの提供が可能なため、健全性を装い、資産が集まったタイミングで資産を持ち逃げするような詐欺行為も多く発生している実情があります。そのため、あるサービス提供者と提携してサービス紹介などを行った結果、そのサービスが詐欺行為(意図的な市場操作、ラグプル[vi]、ICO詐欺、運用に透明性が無いなど)を目的としたサービスであり、被害発生後に自社のレピュテーションに影響を及ぼすリスクがあります。

    図6:連携サービス側の不正・脆弱性によるリスクのイメージ図6:連携サービス側の不正・脆弱性によるリスクのイメージ

    リスク⑥Web3サービスのサービス仕様へのリスク

    Web3サービスは秘密鍵の所持が認証となっている点や、プラットフォームに管理されない資産のやり取りが可能な点などWeb2.0とサービス性が異なります。また、DApps[vii]を提供する場合、WalletConnect[viii]等を利用したWeb3認証を利用することが主流であり、自社サービスに様々なセキュリティ強度のウォレットが連携される可能性を考慮する必要があります。

     

    こうしたサービス性の変化に伴い、ウォレットアドレスの可読性の低さを利用したアドレスポイズニングといった新たな攻撃も発生しています。既存のサービスにおけるセキュリティ対策の考え方では十分な対策が行えず、予期せぬ脅威が発生するリスクがあります。

    図7:サービス仕様に関するリスクのイメージ(アドレスポイズニングの例)図7:サービス仕様に関するリスクのイメージ(アドレスポイズニングの例)

    リスク⑦オフチェーン(Web2.0環境)への脅威

    これまで述べてきたWeb3サービス特有の脅威だけでなく、Web2.0から存在するオフチェーン[ix]に対するリスクについても継続的に対応する必要があります。

    例えば、既存のWebサーバやアプリケーションなどが悪意者に侵害され、Web3サービスにも被害が発生するリスクが考えられます。実際に標的型攻撃により従業員の開発環境へのアクセス権を詐取しJavaScriptを書き換える等により送金先ウォレットアドレスに悪意者のウォレットアドレスを挿入し不正送金を狙うといった攻撃も発生しています。

    図8:Web2.0からの脅威によるリスクのイメージ08

    リスクに対する対策

    前述のリスクに対して、Web3サービスを提供する事業者が実施すべき対策例として以下が考えられます。リスクへの対策はそのサービスのビジネス要件も踏まえた上で多角的な検討が必要なため、ここで取り上げた対策で十分とは言えません。

    対策①秘密鍵の漏洩リスクへの対策

    ライフサイクル全体での鍵管理

    Web3サービスの開発、運用においてテスト用ウォレットやコーポレートウォレットなど数多くの鍵が利用されます。また、委託会社も含めたサービスに関わる全ての鍵の管理が非常に重要となります。

    そのため、鍵の台帳管理をするとともに、鍵の生成・輸送・導入・利用・保管・廃棄といったライフサイクル全体での鍵管理をすることが必要です。

    暗号資産管理組織の構築

    秘密鍵には大量の資産が紐づき、一度のミスで全ての資産を失うことは、暗号資産の特徴的なリスクです。また、既存の金融資産と異なり、銀行などによる入出金の処理がないため、秘密鍵の管理システムの侵害や標的型攻撃により運用者を騙すことで資産の窃取が可能です。そのため、暗号資産を狙った攻撃と防御に精通しており、自社が管理する暗号資産管理について専門的に対応できる組織の構築が重要となります。

    また、独立したウォレット管理組織が承認フローに入ることで組織的なガバナンス統制に寄与することも可能です。こうした組織構築によりWeb3特有の攻撃やウォレット管理におけるリスクに対しても、よりセキュアな管理体制を確立することができます。

    ウォレット管理ソリューションの導入

    自社の暗号資産を管理するためのコーポレートウォレットは、自社資産の多くが管理され、漏洩時には非常に大きな影響を受けるため、より高度なセキュリティが必要です。

    一般的なウォレットは物理的な分離管理のみであり、作業者1人の承認ミスにより多額の誤送信が発生することが考えられます。

    そのため、資産の送金時に複数人による承認や送金上限額、送金先の制限などが設定可能なウォレット管理ソリューションが提供されています。こうしたソリューションを導入することで高度なウォレット管理が実現可能になります。

    対策②フィッシングによる資産の流出への対策

    ユーザ向けのフィッシング対策

    Web3サービスを狙ったフィッシング攻撃として、不正なトランザクションへの署名や鍵に関する情報詐取など新たな攻撃が発生しています。これらの被害は、ユーザ自身のフィッシングへの知識やウォレット管理などのセキュリティリテラシーに大きく依存する傾向にあります。そのため、最新のフィッシング手法の紹介や注意喚起をユーザに積極的に行うことでユーザが被害に合わないように抑止することが必要です。また、初めての送信先であることの通知や送金額に応じた警告などを実施するといったユーザが攻撃に気付けるような対策を行うことも効果的です。

    社員向けのフィッシング対策

    Web3サービスでは、そのサービスやコーポレートウォレットの署名権を掌握することで資産すべてを盗むことが可能となるため、サービス提供会社の社員を狙ったフィッシングも多発しています。そのため、署名に複数人の承認や署名を要する設定や、社員教育を徹底することが必要です。

    対策③スマートコントラクトの脆弱性への対策

    スマートコントラクト監査

    スマートコントラクトは脆弱性が存在したとしてもブロックチェーン上にデプロイされた時点で修正ができず、攻撃に利用されることで大きな被害が発生します。そのため、デプロイ前にはスマートコントラクトが脆弱性を含まないか診断や監査(Audit)を受ける必要があります。

    対策④マネーロンダリング/テロ資金供与への対策(AML:Anti−Money Laundering/CFT:Countering the Financing of Terrorism)

    ブロックチェーン監視

    制裁アドレスやミキシングサービス等への送金や着金が発生した場合、不正な取引先と関わりがある企業という判断やマネーロンダリングに関わるユーザが利用しているという判断がされる可能性あります。

    そのため、トランザクションなどのブロックチェーンとのやり取りを監視することで早期発見や通報といった早期対応が可能であり、マネーロンダリングへの利用が困難なサービスの提供を実現できます。

    対策⑤連携サービス側の不正・脆弱性への対策

    デューデリジェンス(Due Diligence)

    他社と協業やサービスの連携をする場合、他社のウォレット管理が適切に行われているか、利用するスマートコントラクトが監査を受けているのかなどをチェックすることで自社範囲外におけるリスク低減が可能となります。

    そのため、自社として評価項目・基準を設けデューデリジェンスを行うことが推奨されます。

    対策⑥Web3サービスのサービス仕様におけるリスクへの対策

    デジタルクライム分析[x]

    Web3サービスはブロックチェーンを前提としたサービスであるため、Web3サービス独特のサービス仕様を把握した上で、提供サービスにおいて考えられるリスクの洗い出しと対策検討が必要です。

    特に秘密鍵の詐取などによる「なりすまし」、他人の秘密鍵の不正な紐づけなどの「情報紐付」、アドレスポイゾニングなどの「機能悪用」の観点から、過去の脅威事例も踏まえてリスクを洗い出す必要があります。

    対策⑦オフチェーン(Web2.0環境)に対する脅威への対策

    オフチェーンへのセキュリティ対策

    Web3サービスにおいてもサーバ管理やアプリケーション管理などWeb2.0と変わらないインフラを利用します。こうしたオフチェーンへの攻撃は、外部ネットワークから直接侵入するのみではなく、ソーシャルエンジニアリング等による開発者を経由した攻撃も発生している。そのため、あらゆる侵入パターンを考慮した上で脆弱性診断やシステムセキュリティ対策、リスク分析、定期的なセキュリティ訓練の実施が必要です。

    さいごに

    Web3サービスの特徴とそれに付随する様々なリスクについて説明しました。Web3ではこれまで中央集権的に管理されている形から分散管理される形となり、旧来のWeb2.0と異なる資産管理や技術への対応が求められます。そこで、「ウォレット管理」や「スマートコントラクトに対するセキュリティ対策」などこれまでのアプリケーション開発ではカバーしきれなかった点を考慮する必要があります。

     

    本稿では、Web3サービスで想定される一般的なリスクとその対策を挙げましたが、提供するサービスやその機能によって発生するリスクや必要な対策は異なるため、サービスの企画段階からビジネスモデル、サービス仕様のセキュリティリスクを洗い出し、対策していくことが重要です。その際は、弊社のWeb3セキュリティ総合支援をご活用ください。

     

     

    [i] エアドロップ:暗号資産やNFTなどを無償でユーザに配布するイベント

    [ii] リエントランシー攻撃:スマートコントラクトの関数を繰り返し実行して不正に利益を得る攻撃手法

    [iii] 権限詐取:スマートコントラクトのOwner権を詐取し不正に利益を得る攻撃手法

    [iv] オラクル操作攻撃:スマートコントラクトが参照している暗号資産取引所の価格情報を提供するオラクルを、侵害等により悪意者が有利な形にオラクルの情報を操作することで不正に利益を得る攻撃手法

    [v] ミキシングサービス:複数のトランザクションを混ぜ合わせて追跡を難しくするサービス

    [vi] ラグプル:出口詐欺を意味し、偽プロジェクト等を立ち上げ資産を集めた後に開発者・運営者が秘密裏に資産を引き出し持ち逃げする詐欺手法

    [vii] DApps:Decentralized Applicatoinの略称。主にブロックチェーンとスマートコントラクトで構成される分散型アプリケーションの総称

    [viii] WalletConnect:QRコードを利用してウォレットアプリからDAppsにウォレットを接続できるようにするサービス

    [ix] オフチェーン:ブロックチェーンを使用しない環境や取引などを指す。ブロックチェーン上の環境や取引などは「オンチェーン」と呼ぶ。

    [x] デジタルクライム分析:デジタルサービスの仕組みを利用し実施される犯罪行為(例:Fintechサービスを用いた不正送金)を想定したリスク分析を指す。詳細はデジタルサービス向けリスク分析支援を参照。