フィッシングやDNSハイジャックの手法とは? 敵の手口を知って資産防衛|ビットコイン(BTC)プロトコルのセキュリティ編(2)

本稿は、コラム連載企画の5回目の記事です。前回の記事は以下からご覧ください。

前回の記事紹介
前回の記事では、ビットコインと銀行を比較した上での、トラストの有無で生じる差や攻撃への耐性について解説しています。 銀行システムとはどのように違う? トラストの有無と攻撃リスク|ビットコインプロトコルのセキュリティ編(1)
初回記事はこちら 非中央集権で信頼を担保する ビットコイン(BTC)ネットワークの仕組みを解説|仮想通貨プロトコルの概要編(1)

本連載は論文の翻訳そのままではなく独自の解説を行っていますが、各章のタイトルには論文と対応する番号を振っていますので参考にしてください。今回はフィッシングやDNSハイジャック、そしてユーザビリティ(使いやすさ)について解説していきます。

2.1 Bitcoinと銀行システムの比較

フィッシングやDNSハイジャック

ここでは攻撃者の立場になって、利用者の資金転送を改ざんして盗み取る手口を考えてみましょう。

既存の銀行システムの場合は、攻撃者は完全に見た目が同じログイン画面をつくることができます。 こういった攻撃手法では ホモグラフ攻撃でURLを誤認させ、気づかれにくくすることもできます。

また、利用者のミスを狙うタイポスクワッティングなども知られています。

利用者が気づかずにパスワードを入力してしまったり、その後資金の転送に必要な認証コードを入れてしまったりすると、攻撃は成功したも同然です。攻撃者は偽サイトに送られてきたパスワードや認証コードを使い、すぐに資金を奪い取ってしまうでしょう。

入り口としてはフィッシングメールが一番考えられますが、攻撃者がクリックを誘うメールを書き、本物に見える偽のウェブサイトへのリンクが記載されます。利用者がリンクをクリックし、その先でログインをしてしまうと、まさに攻撃者の思うつぼです。

また、DNS ハイジャックでは、ネットワークで見て、より上位の通信事業者の隙を突き、本物のURLを一時的に乗っ取ることが行われます。これはアメリカのUS-CERTも警告を行っていますが、インターネットでは散発的に繰り返し発生しており、より洗練された手法が確立されていく傾向にあります。

DNSハイジャックがもし発生した場合、利用者側で対処できることは基本的にないと考えてよいでしょう。なぜならURLは本物だからです。なお、この攻撃は発見されてからDNSの対処が完了するまで一般に数時間を要します。

Bitcoinでは、途中でトランザクションを改ざんすることはできません。考えうるDNSハイジャックの攻撃としては、bitcoin.orgなどのウェブサイトを乗っ取り、ユーザーに偽のBitcoinの実行ファイル(Bitcoin Core)をダウンロードさせるという手法が考えられるかもしれません。

また、MyEtherWallet の事例のように、インターネット上でウォレットを使えるサービスがあれば、それを偽装し、そこに秘密鍵を入力して盗み取ることもできます。 DNSを乗っ取ったり、利用者のミスや不注意を誘ったりして、結果として資金を盗みとれるというのは、この点だけを見ると、どちらも変わりないといえます。

ただ、Binary Safety Warningで公開しているように、すべての実行ファイルは開発者の秘密鍵によって署名されています。

注意深いユーザーは、事前に開発者の公開鍵をダウンロードしておき、毎回ダウンロード後に公開鍵を使って署名を確認することで、本当に Bitcoin Core の正しい開発者によって提供されたファイルかどうか、確認することができます。

中央集権ともいわれる既存の銀行システムでは、こういった署名を確認するような仕組みは実装できないため、Bitcoinの優位性の一つといえるでしょう。

ユーザビリティ

一方で、ここまで説明した内容の裏返しともいえますが、Bitcoinにとって不利なことも少なからずあります。

例えば、サポートがないこと。秘密鍵を盗まれたり失ってしまったユーザーは、それを回復することができません。資金の悪用を防ぐ手段もありませんし、一度送ってしまったコインを取り戻すといったこともできません。

加えて、QuadrigaCXの事例のように、秘密鍵を管理していた人が失踪したり亡くなってしまった場合、それを取り戻すことが困難になることもあります。

これは大きな違いです。銀行システムであればパスワードリセットができますし、相続手続きで遺産として相続することだって可能です。

Bitcoinでは、現状そういった仕組みはありません。秘密鍵は唯一の鍵であり、所有者以外には誰も触ることができないのです。

まとめ

ここまで 2回、Bitcoinと銀行システムの比較を行ってきました。 それぞれに有利不利がありますが、既存の銀行システムとは異なる考え方で作られている点は、お分かりいただけたのではないでしょうか。 次回は、盗難の防止について説明をしていきたいと思います。

坪 和樹

クラウド業界で働くエンジニア、アイルランド在住。 MtGox や The DAO では被害を受けたが、ブロックチェーンのセキュリティに興味を持ち続けている。セキュリティカンファレンスでの講演、OWASP Japan の運営協力や Mini Hardening といったイベント立ち上げなど、コミュニティ活動も実績あり。

「マルチシグ」で資産を守る その仕組みを分かりやすく解説|ビットコインプロトコルのセキュリティ編(3)

次回記事では、仮想通貨の流出防止に有効な手段となる「マルチシグ」について解説します。その仕組みを知ることは、資産を守る上で重要になってくるでしょう。

コメントしてBTCを貰おう