通信の途中に割り込んで盗聴や改ざんを行う攻撃。
中間者攻撃(Man-in-the-Middle攻撃、MITM)とは、通信する二者の「あいだ」に攻撃者が割り込み、やり取りを盗聴したり改ざんしたりする攻撃のことです。直訳すると「真ん中にいる人」の攻撃です。
身近な例で考えると、手紙のやり取りを、配達人になりすました第三者がいったん全部開封している状態に似ています。送り手も受け手も、配達人を信用して手紙を渡してしまうため、中身を読まれたり書き換えられたりしていることに気づきません。
上のツールで▶ボタンを押すと、攻撃者が通信経路に割り込み、内容を盗み見て改ざんし、偽の応答で隠す流れを確認できます。
攻撃者はまず通信経路の真ん中に入り込みます。割り込む方法には、偽のWi-Fiアクセスポイントを立てる、ARP(=IPアドレスと機器を結びつける仕組み)を偽る、DNS(=ドメイン名をIPアドレスに変換する仕組み)を偽る、などがあります。
割り込んだあとにできることは大きく3つです。
・盗聴:通り過ぎる通信の中身(ID・パスワード・口座番号など)を盗み見る
・改ざん:内容を書き換えて転送する(例:振込先のすり替え)
・なりすまし:相手のふりをして偽の応答を返し、攻撃を気づかせない
やっかいなのは、攻撃者が通信をそのまま中継するため、両者は正常に通信できているように見える点です。画面は普段どおり表示され、応答も返ってくるので、利用者は割り込まれていることに気づけません。上のツールのSTEP3〜5で、気づかれないまま盗聴・改ざん・隠蔽が進む様子を確認できます。
MITMの最大の特徴は、両者が「普通に通信できている」と感じる点です。なぜかというと、攻撃者が受け取ったデータをそのまま相手へ転送するからです。クライアントから見ると「サーバから返事が来た」、サーバから見ると「クライアントから要求が来た」と見え、どちらも割り込みに気づきません。
攻撃が成立するためには、攻撃者が経路に入り込む手段が必要です。代表的なものは次のとおりです。
・偽の公衆Wi-Fi(野良Wi-Fi):攻撃者が「Free Wi-Fi」などと偽ったアクセスポイントを設置し、接続した端末の全通信を受け取る
・ARPスプーフィング:ARP(=同じLAN内でIPアドレスと機器を対応づける仕組み)を偽って、自分経由で通信を流させる
・DNSポイズニング:DNSの回答を偽って、通信先を攻撃者のサーバに向ける
どれも「通信の入り口・経路」を乗っ取る点が共通です。カフェや空港など公衆Wi-Fiを使うときに特に危険で、「HTTPSの鍵マークが付いているか」の確認が大切です。
| 比較項目 | MITM(中間者攻撃) | フィッシング |
|---|---|---|
| 偽サイトへ誘導するか | しない(正規サイトと通信している) | する(偽サイトに本物そっくりなページを用意) |
| 利用者の操作 | 普通に本物サイトを使っているだけ | 自分でURLを踏んでしまう |
| 攻撃者の位置 | 通信経路の中間 | 別のサーバ(偽サイト)を用意 |
| 気づきにくさ | 非常に気づきにくい | URLをよく見れば気づける場合も |
フィッシング(Phishing)とは、本物そっくりの偽サイトに利用者を誘導してIDやパスワードを入力させる攻撃のことです。よく混同されますが、MITMとは仕組みが異なります。
フィッシングは「利用者を偽の場所へ連れ込む」、MITMは「本物の場所への通信をこっそり盗み見る」イメージです。MITMはURLが本物のままなので、URLを確認しても見破れません。暗号化(HTTPS)と証明書の確認が唯一の有効な防御手段です。
対策の柱は、「読めなくする」「書き換えを検知する」「相手が本物か確かめる」の3つです。これを実現するのが暗号化と電子証明書です。
具体的には次の手段を使います。
・SSL/TLSによる暗号化:通信内容を暗号化する。盗聴しても中身は読めず、途中で書き換えれば壊れて検知される(=改ざん検知)
・電子証明書:サーバが本物だと証明する「身分証」。攻撃者がサーバになりすまそうとしても、正しい証明書を出せず警告が表示される
・HTTPSの確認:URLが「https://」で鍵マークが出ているかを利用者がチェックする
身近な例で言えば、封蝋(ふうろう)と身分証を組み合わせるようなものです。手紙に封蝋を押せば開封されたら分かり(改ざん検知)、相手の身分証を確認すればなりすましを見破れます。上のツールのSTEP6で、偽の証明書が警告で弾かれ、暗号化通信が確立する様子を確認できます。