\r\n\r\n
中間者攻撃は、その特定と防御が難しく、MITM攻撃はコントローラ、コンピュータまたはサーバ間の通信回線に依存します。中間者攻撃は、必ずしも感染したコンピュータを必要としないため、攻撃経路が複数存在することになります。
では、中間者攻撃とは何か、そして中間者攻撃の被害を防ぐにはどうしたらよいのでしょうか。
MITM(Man-in-the-Middle)攻撃は、コンピュータが登場する以前から存在していた。このタイプの攻撃は、互いに通信している2つの当事者の間に攻撃者が身を置く**というものです。中間者攻撃は、基本的に盗聴攻撃である。
中間者攻撃の仕組みをよりよく理解するために、次の2つの例を考えてみましょう。
オフラインのMITM攻撃は基本的なものに聞こえるかもしれませんが、今でも世界中で使われているのです。
例えば、誰かがあなたの投稿を傍受し、それを読んで、再パッケージ化し、あなたや元の受信者に送信することができます。そして、相手が返信すると、逆に真ん中の人が全方位からメールを傍受して読んでしまうということが起こります。
適切に実行されれば、傍受やデータ盗難が目に入らないので、MITM攻撃が行われていることに気づかない。
2つの参加者間の通信チャネルを占有することは、中間者攻撃の核心である。
このことは、攻撃者にとって別の欺瞞の道を開くことにもなる。攻撃者が通信手段をコントロールすれば、送信中のメッセージを変更することができる。この例では、誰かが電子メールを傍受して読んでいます。同じ人物が、攻撃の一環として、メールの内容を改変して、具体的な質問や依頼をすることも可能です。
MITMがあなたのコミュニケーションをコントロールするとき、彼らはあなたがそれを全く理解できないように、質問やリクエストへの今後の参照を削除することができます。
オンライン中間者攻撃は、昔ながらの郵便の代わりにコンピュータやその他のデジタルハードウェアを使用することを除けば、基本的に同じ原理で動作します。
MITM攻撃の亜種は、カフェの無料公衆無線LANに接続することで展開されます。接続後、あなたは銀行サイトに接続しようとします。
この例では、銀行のウェブサイトに適切な暗号化証明書がないことを通知する証明書エラーが発生します。これにより、銀行のWebサイトに設定上の問題があり、MITM攻撃が行われていることを警告します。
関連:Webサイトセキュリティ証明書とは?
しかし、多くの人はこのエラーメッセージをクリックするだけで、銀行のウェブサイトにアクセスすることができます。銀行のポータルにログインし、送金し、請求書を支払い、すべてがうまくいくように見えます。
実は、攻撃者は銀行を模した偽のサーバーとウェブサイトを立ち上げている可能性があるのです。偽の銀行のサーバーに接続すると、銀行のウェブページを取り込み、少し修正して表示する。お客様は通常通りログイン情報を入力し、その情報は中間者サーバに送信されます。
MITMサーバは、ユーザーを銀行にログインさせ、ページを正常に表示させることができます。しかし、攻撃者の中間者サーバーがお客様のログイン認証情報を取得し、攻撃可能な状態になっています。
このシナリオでは、初期の警告メッセージは暗号化証明書エラーであり、サイトが正しく設定されていないことを示します。仲介サーバーは、他所のセキュリティ証明書を持っている場合もありますが、お客様の銀行と同じセキュリティ証明書を持っているわけではありません。
MITM攻撃には、いくつかの種類があります。
これらのMITM攻撃だけでなく、これらの攻撃の異なる側面を組み合わせた亜種が多数存在する。
関連:ウェブサイトにSSL証明書が必要な理由
上記のシナリオは、HTTPS(HTTPの安全版)を使用する銀行のウェブサイトで発生します。その結果、暗号化証明書が間違っていることを示す画面が表示される。現在、ほぼすべてのWebサイトでHTTPSが採用され、アドレスバーにはURLのほかに南京錠のアイコンが表示されるようになっています。
長い間、機密情報を提供するサイトのみがHTTPSを使用することが推奨されていました。現在では、特にGoogleが検索エンジン最適化のランキングのシグナルとしてHTTPSの使用を発表して以来、常識が変わりました。HTTPSが最初に発表された2014年には、世界の上位100万サイトのうち1~2%がHTTPSを使用していましたが、2018年にはその数が膨れ上がりました。であり、100万人のうち50%以上がHTTPSを導入しています。
暗号化されていないWebサイトで標準的なHTTP接続を行うと、この例では警告が表示されず、中間者は警告なしに攻撃を開始します。
では、HTTPSはMITM攻撃を防御できるのでしょうか?
はい、HTTPSは中間者攻撃から保護します。しかし、攻撃者は様々な方法で HTTPS を破ることができ、それによって、暗号化によって接続に提供される追加のセキュリティを取り除くことができます。
SSLStrip は中間者攻撃であり、HTTPS が利用可能な場合に、ブラウザを HTTPS の使用開始ではなく、HTTP モードのままにする。HTTPS を使用する代わりに、SSLStrip はセキュリティを「剥奪」し、古い HTTP のみを残す。
異変に気づかないこともあります。googlechromeなどのブラウザがアドレスバーに大きな赤十字を表示し、安全でない接続を使用していることを通知する前に、SSLStripは多くの犠牲者を出してしまいました。巨大な HTTPS パドロックの導入により、HTTPS を使用しているかどうかを見分けることが容易になったことは確かです。
また、別のセキュリティアップグレードにより、SSLStripの効果が弱まりました。HTTP Strict Transport Securityです。
HTTP Strict Transport Security(HSTS)は、中間者攻撃、特にSSLStripのようなプロトコル劣化攻撃を防ぐために開発されました。 HSTSは、WebサーバーがすべてのユーザーにHTTPSのみを使用して対話することを強制するための特別な機能です。
ただし、HSTSはユーザーの最初のアクセス後に設定されるため、必ず動作するというわけではありません。したがって、HSTSが導入される前に、攻撃者がSSLStripと同様のMITM攻撃を理論的に使用できる可能性は非常に小さいと言えます。
SSLStripのわずかな消滅は、多くのMITM攻撃タイプを1つのパッケージにまとめた他の最新ツールに道を譲ったのです。
また、MITM攻撃やman-in-the-middleモジュールを使用するマルウェアの亜種に対処しなければなりません。例えば、Androidユーザーを狙うマルウェア(SpyEyeやZeuSなど)の中には、攻撃者がスマート**から送受信する通信を盗聴することが可能なものがあります。
Android端末にインストールされると、攻撃者はマルウェアを使って様々な通信手段を傍受することができます。特に注目したいのは、2要素認証のコードです。攻撃者は、安全なウェブサイト上で二要素認証コードを要求し、ユーザーが反応する前に、あるいは何が起こっているのか理解する前に、それを傍受することができます。
ご想像の通り、デスクトップも脅威から除外されてはいません。中間者攻撃用に設計されたマルウェアや攻撃パッケージは、多くの種類が存在します。また、Lenovo社が出荷前にSSLStrip対応のマルウェアをノートパソコンにインストールしたという事実にも触れていない。
中間者攻撃は防御が難しく、攻撃者の選択肢も多いため、MITM攻撃への防御は多方面から行われることになります。
中間者攻撃は、通信に影響を与えるかどうかで決まります。何が起こるかを知り、何を探すべきかを知っていれば、MITM攻撃を回避できる可能性が高くなります。その代わり、あなたのデータは安全に、しっかりと手元に残ります。
写真提供:Andy Rennie on Flickr