マン・イン・ザ・ミドル攻撃とは?通信の中間に割り込んで盗聴・改ざんするサイバー攻撃

システム開発・テクノロジー
マン・イン・ザ・ミドル攻撃とは?ざっくりと3行で
  • ユーザーとサーバーが通信している間に攻撃者が「中間者(Man in the Middle)」として割り込み、両者が気づかないまま通信を盗聴・改ざんするサイバー攻撃のこと
  • フリーWi-Fiなど暗号化されていない通信環境で特に危険でログイン情報・クレジットカード番号・通信内容を盗み取ったり、送受信するデータを書き換えたりする
  • HTTPSのTLS(Transport Layer Security)による通信の暗号化がMITM攻撃への主要な対策であり、証明書の検証によって「通信相手が本物か」を確認することが重要だ

【深掘り】これだけ知ってればOK!

MITM攻撃の代表的な手口を整理しよう。ARPスプーフィング:同じネットワーク内でARP(アドレス解決プロトコル)を偽装して自分をゲートウェイに見せかけ、全ての通信を傍受する。DNSスプーフィング:DNSの名前解決を偽装して正規サイトのURLで偽サイトに誘導する。偽のアクセスポイント:正規のWi-Fiに見せかけた偽のアクセスポイントを設置して接続してきたユーザーの通信を傍受する(Evil Twin攻撃)。SSLストリッピング:HTTPSの通信をHTTPに降格させて暗号化を無効にする。

MITM攻撃への主な対策を整理しよう。HTTPS(TLS)の使用:通信を暗号化して傍受されても内容を読めなくする。証明書のピン留め(Certificate Pinning):アプリが信頼するサーバー証明書を事前に登録して不正な証明書を拒否する。HSTS(HTTP Strict Transport Security):ブラウザに「このドメインはHTTPSのみ使用」を記憶させてSSLストリッピングを防ぐ。VPNの使用:公共のWi-FiなどでVPNを使うことで通信経路を暗号化する。

MITM攻撃が成立するための条件を理解しよう。攻撃者が被害者と同じネットワークセグメントに存在することが前提のケースが多い。フリーWi-Fi・企業内ネットワーク・同じ家庭内ネットワークなどが攻撃の場になりやすい。特にHTTPサイトでのログインや決済は傍受リスクが高く、必ずHTTPSのサイトのみを使うことが基本だ。

MITM攻撃の中でも特に巧妙なのがSSL証明書のなりすましだ。攻撃者が自ら署名した偽の証明書を使って「鍵マーク付きのHTTPS接続」を偽装できる。ブラウザは「信頼できる認証局(CA)が発行した証明書か」を検証するため、不正な認証局が発行した証明書には警告が表示される。証明書エラーの警告が出たときは絶対に無視しないことが重要だ。

企業システムでのMITM対策として相互TLS認証(mTLS)がある。通常のTLSはサーバーの証明書のみを検証するが、mTLSではクライアント(利用者側)の証明書もサーバーが検証する。これにより正規のクライアント以外からの接続を拒否できる。マイクロサービス間の通信セキュリティやゼロトラストアーキテクチャの実装で活用される。

よくある誤解

HTTPSなら絶対にMITM攻撃を受けないと思っている

HTTPSはMITM攻撃への有効な対策だが万能ではない。SSLストリッピング攻撃(HTTPSをHTTPに降格させる)や不正な証明書を使ったなりすましなどの手法が存在する。証明書の検証・HSTSの設定・証明書ピン留めを組み合わせることがより堅牢な対策だ。

フリーWi-Fiを使う場合でもVPNを使えば完全に安全だと思っている

VPNはフリーWi-Fiでの傍受リスクを大幅に下げる有効な対策だが、VPN自体のセキュリティと信頼性が重要だ。無料VPNの中にはログを収集・販売するものや脆弱性があるものがあるため、信頼できるVPNサービスを選ぶことが重要だ。

会話での使われ方

ITKAGYO運営者デプロイ太郎のアイコン画像

フリーWi-FiでオンラインバンキングにアクセスするのはMITM攻撃のリスクがあります。VPNを使うか、モバイル通信に切り替えてください。

セキュリティエンジニアがフリーWi-Fiでのオンラインバンキング利用のリスクを指摘している場面。

ITKAGYO運営者デプロイ太郎のアイコン画像

このAPIサーバー、HTTPSのみ受け付けるHSTSを設定してください。SSLストリッピングによるMITM攻撃を防げます。

バックエンドエンジニアがHSTSの設定でMITM攻撃対策を強化する提案をしている場面。

ITKAGYO運営者デプロイ太郎のアイコン画像

マイクロサービス間の通信にmTLSを導入しました。クライアント証明書がないサービスからの通信は全て拒否されるのでMITM攻撃のリスクが大幅に下がります。

セキュリティエンジニアがゼロトラストアーキテクチャの実装としてmTLSを導入した場面。

【まとめ】3つのポイント

  • 通信の中間に割り込んで盗聴・改ざんする攻撃でHTTPSと証明書検証が主要対策:ARPスプーフィング・偽アクセスポイント・SSLストリッピングなど多様な手口があるためHTTPS・HSTS・証明書ピン留めを組み合わせた多層防御が重要だ
  • フリーWi-FiやHTTP通信はMITM攻撃の温床となるため特に注意が必要:同じネットワークセグメントに攻撃者が存在する環境でHTTP通信を使うことはMITM攻撃の格好の標的になるため公共Wi-FiではVPNを使いHTTPSサイトのみを使う習慣が重要だ
  • 証明書エラーの警告は絶対に無視してはいけないMITM攻撃のシグナル:証明書の検証エラーはMITM攻撃が行われている可能性を示す重要な警告であり無視して続行することは攻撃者の罠にはまるリスクが高い

よくある質問

Q
MITM攻撃とフィッシング攻撃はどう違いますか?
A

フィッシング攻撃はユーザーを偽サイトに誘導してパスワードを入力させる攻撃です。MITM攻撃は正規のサイトとユーザーの通信の間に割り込んで傍受・改ざんする攻撃です。どちらも認証情報の窃取を狙いますが手口が異なります。

Q
証明書ピン留め(Certificate Pinning)とは何ですか?
A

モバイルアプリなどが信頼するサーバー証明書を事前にアプリ内に登録して、不正な証明書を使ったなりすましを防ぐ技術です。MITM攻撃で不正な証明書が使われた場合にアプリが接続を拒否します。

Q
mTLS(相互TLS認証)とは何ですか?
A

通常のTLSはサーバーの証明書のみを検証しますが、mTLSはクライアント(利用者側)の証明書もサーバーが検証します。正規のクライアント以外からの接続を拒否できるため、マイクロサービス間通信のセキュリティに有効です。

Q
HSTSとは何ですか?
A

HTTP Strict Transport Securityの略で、ブラウザに「このドメインはHTTPSのみ使用する」と記憶させるHTTPヘッダーです。SSLストリッピング攻撃を防ぐ効果があります。

【出典】参考URL

https://www.cloudflare.com/ja-jp/learning/security/threats/man-in-the-middle-attack/ :CloudflareによるMITM攻撃の解説
https://www.ipa.go.jp/security/answer/ssl.html :IPAのSSL/TLS証明書に関する注意喚起
https://owasp.org/www-community/attacks/Manipulator-in-the-middle_attack :OWASPのMITM攻撃の詳細解説

コメント

「IT用語、難しすぎて心が折れそう……」という方のための、ハードル低めな用語辞典です。

情報レベルは「基礎中の基礎」。会話を止めないためのエッセンスだけを抽出しています。分かりやすさを追求するあまり、時々例え話が暴走しているかもしれませんが、そこは「ほどよく」聞き流していただけると幸いです。
ほどよくIT用語辞典システム開発・テクノロジー
デプロイ太郎のSNSを見てみる!!
タイトルとURLをコピーしました