インターネット通信が日常となった現代、通信の「機密性」と「完全性」を脅かす最も古典的かつ強力な攻撃手法が、中間者攻撃(Man-in-the-Middle: MITM)です。特にローカルネットワーク内で実行されるARPスプーフィングは、その仕組みの単純さと防御の難しさから、セキュリティ対策において極めて重要なトピックとなっています。
本記事では、ネットワークの深層で何が起きているのかを可視化し、攻撃のメカニズムから最新の防御技術まで、実務や試験に直結する視点で詳細に解説します。
1. 通信を支配する「中間者攻撃(MITM)」の本質
中間者攻撃(MITM)とは、独立して通信を行っている二者の間に、攻撃者が気づかれないように入り込み、通信を中継・制御する攻撃の総称です。送信者は受信者に送っているつもりで攻撃者にデータを渡し、受信者は送信者から受け取っているつもりで攻撃者からのデータを受け取ります。

MITMにおける「信頼の悪用」
中間者攻撃が成立する背景には、ネットワークプロトコルが持つ「相手を無条件に信頼する」という設計上の特性があります。攻撃者は、この信頼の連鎖を断ち切り、自分を「正しい通信相手」だと思い込ませることで、以下のような致命的な操作を行います。
盗聴(Eavesdropping)では、暗号化されていないパスワード、クレジットカード情報、個人メールの内容をすべて読み取ります。改ざん(Tampering)では、送信された振込先口座番号を攻撃者のものに書き換える、あるいはダウンロードしようとしているファイルをマルウェア付きのものに差し替えます。さらにセッションハイジャックでは、ログイン後のセッション情報を奪い取り、ユーザーになりすまして正規のサービスを操作します。
攻撃が実行されるレイヤー
MITMは特定のプロトコルに限定されません。OSI参照モデルの各レイヤーで、それぞれ異なる手法のMITMが存在します。
データリンク層(L2)ではARPスプーフィング、ネットワーク層(L3)ではルーティング情報の偽装(ICMPリダイレクト攻撃など)、アプリケーション層(L7)ではプロキシを悪用した通信の横取りやDNSポイズニングが行われます。各レイヤーでの攻撃手法を理解することで、多層的な防御戦略を構築できます。
2. ARPスプーフィング:LAN内における通信ジャックの仕組み
ローカルネットワーク(LAN)内で最も頻繁に用いられるMITMの手法が「ARPスプーフィング(ARPポイズニング)」です。これを理解するためには、まず正常なARPの挙動を知る必要があります。
正常なARP(Address Resolution Protocol)の動作
IPネットワークにおいて、パケットを隣接する機器に届けるためには、IPアドレスではなく、ハードウェア固有の「MACアドレス」を知る必要があります。
ARPは次のような手順で動作します。まずARPリクエストとして「IPアドレス192.168.1.1の方は、MACアドレスを教えてください」とネットワーク全体に問い合わせます(ブロードキャスト)。次にARPリプライとして、該当するIPを持つ機器が「私のMACアドレスはAA:BB:CCです」と返答します。最後に各機器はこの対応関係を一時的にメモリ(ARPテーブル)に保存します。

スプーフィング(なりすまし)による毒入れ
ARPには「要求していない返答(リプライ)であっても信じてしまう」という脆弱な仕様があります。攻撃者はこの隙を突き、偽のARPリプライを継続的に送信します。
具体的には、ターゲットA(PC)に対して「デフォルトゲートウェイ(ルーター)のMACアドレスは、私(攻撃者)のMACアドレスです」と嘘を教えます。同時にターゲットB(ルーター)に対して「PCのMACアドレスは、私(攻撃者)のMACアドレスです」と嘘を教えます。
これにより、PCとルーターの両方のARPテーブルが「毒入れ(ポイズニング)」され、本来二者間で直接やり取りされるべきパケットがすべて攻撃者の端末を経由するようになります。攻撃者は受け取ったパケットをフォワーディング(転送)設定によって中継するため、ユーザーは通信が遅延していることにすら気づきません。
ARPスプーフィングが危険な理由
ARPスプーフィングの最大の脅威は、その検知の困難さにあります。通信は途切れることなく継続し、表面上は何も問題が起きていないように見えます。しかし、その裏では全ての通信内容が攻撃者によって記録され、場合によっては改ざんされています。
さらに、ARPはOSI参照モデルのデータリンク層で動作するため、上位層のセキュリティ対策だけでは防ぎきれません。ファイアウォールやウイルス対策ソフトは、この攻撃を検知できない場合がほとんどです。
3. 防御の要:ネットワーク機器と暗号化による多層防御
ARPスプーフィングやMITMは、OSやプロトコルの標準仕様を利用しているため、個々の端末側だけで防ぎきることは困難です。ネットワークインフラとアプリケーションの両面からの対策が求められます。
L2スイッチによる防御:DAI(Dynamic ARP Inspection)
企業ネットワークにおいて最も効果的な対策は、インテリジェントL2スイッチの機能である「DAI」の導入です。
DAIの仕組みは、スイッチが通過するすべてのARPパケットを検査し、不審なものを遮断するというものです。DHCPスヌーピングとの連携により、スイッチはDHCPでのIP割り当て状況を監視して「どのポートにどのMACアドレスとIPアドレスのペアが接続されているか」というデータベース(バインディングデータベース)を構築します。DAIはこのデータベースと照合し、矛盾するARPパケットを即座に破棄します。

DAIを有効にするには、スイッチ側で信頼できるポート(Trusted Port)と信頼できないポート(Untrusted Port)を明確に区別する必要があります。通常、ルーターやDHCPサーバーが接続されているポートを信頼できるポートとして設定し、エンドユーザーのPCが接続されるポートは信頼できないポートとして扱います。
暗号化プロトコルによる情報の無効化
たとえネットワーク層で通信が傍受されたとしても、内容が高度に暗号化されていれば、攻撃者は情報を解読できません。
SSL/TLS(HTTPS)の徹底により、Webサイトとの通信は必ずHTTPSで行います。現代のブラウザは、HTTPS接続を優先する仕組みが標準で組み込まれています。HSTS(HTTP Strict Transport Security)は、ブラウザに対して「このサイトには常にHTTPSで接続せよ」という命令を出し、HTTPへの強制ダウングレード(SSLストリッピング攻撃)を防ぎます。
さらに証明書の検証も重要です。MITM攻撃者が偽の証明書を提示した場合、ブラウザが表示する「警告」を絶対に無視しないよう、組織内でのリテラシー教育が必要です。証明書エラーは、単なる技術的な不具合ではなく、攻撃が行われている可能性を示す重要なシグナルです。
その他の技術的対策
VPNの利用は、公衆Wi-Fiなどの信頼できないネットワークを使用する際、全ての通信を暗号化されたトンネル内に通すことで、下位レイヤーの攻撃から守ります。VPNは、リモートワークが一般化した現代において、必須のセキュリティ対策となっています。
IDS/IPSによる検知では、ネットワーク内のARPトラフィックを監視し、異常な頻度のARPパケットや、MACアドレスの不自然な重複を検知して管理者に通知します。リアルタイムでの脅威検知により、被害を最小限に抑えることができます。
静的ARPエントリは、重要なサーバーやルーターのIPアドレスとMACアドレスを、OS側で固定設定(Static)にします。ただし、管理コストが膨大になるため、限定的な用途に留まります。大規模ネットワークでは現実的ではありませんが、小規模な重要システムでは有効な対策となります。
4. パケット構造から見るARPの脆弱性
情報処理安全確保支援士試験対策として、ARPパケットの内部構造についても理解を深めておきましょう。パケットレベルでの解析能力は、トラブルシューティングやフォレンジックにおいて不可欠です。
ARPヘッダの主要フィールド
ARPパケットには、以下のような情報が含まれています。
- ハードウェアタイプ:通信媒体(イーサネットなら1)
- プロトコルタイプ:上位プロトコル(IPv4なら0x0800)
- オペレーションコード(Opcode):1(要求)か2(応答)か。攻撃者はこの「2」を多用します
- 送信元MACアドレス / 送信元IPアドレス
- ターゲットMACアドレス / ターゲットIPアドレス

試験では、これらのフィールドがどのような値を取るか、そして攻撃時にどのフィールドが偽装されるかを問う問題が出題されます。特にオペレーションコードの値(要求=1、応答=2)と、送信元MACアドレスの偽装が攻撃の核心であることを理解しておくことが重要です。
Gratuitous ARP(GARP)の功罪
ARPには「要求なしに応答を出す」GARPという仕組みがあります。
GARPの本来の目的は、自身のIPアドレスが他と重複していないかの確認、または自身のMACアドレス変更の通知です。しかし悪用されると、攻撃者はGARPを大量に送りつけることで、ネットワーク上の全機器のARPキャッシュを一斉に、かつ強制的に書き換えることが可能です。
GARPは正当な用途でも使用されるため、完全に禁止することはできません。そのため、DAIなどの検証機構と組み合わせて、正当なGARPと攻撃的なGARPを区別する必要があります。
5. 実務における脅威シナリオ:偽のWi-Fiアクセスポイント
MITMの応用として、公衆無線LAN環境における「Evil Twin(悪意のある双子)」攻撃があります。
攻撃のステップ
攻撃は次のように展開されます。まずなりすましとして、カフェなどで提供されているフリーWi-Fiと同じSSIDを持つ偽のアクセスポイントを設置します。次に誘導として、本物のアクセスポイントよりも強い電波を出す、あるいは本物に対して接続妨害攻撃(Deauthentication攻撃)を行うことで、ユーザーを偽のアクセスポイントに接続させます。
そして傍受として、接続してきたユーザーの全トラフィックは攻撃者の管理下にあるルーターを通過します。最後に改ざんとして、キャプティブポータル(ログイン画面)を偽装し、SNSや銀行のID・パスワードを入力させるフィッシング詐欺へと繋げます。
このシナリオでは、ARPスプーフィングを行わずとも、接続そのものを支配しているため、より容易にMITMが成立してしまいます。
公衆Wi-Fi利用時の対策
公衆Wi-Fiを利用する際は、以下の対策を実施することが推奨されます。まず、VPNを必ず使用し、全ての通信を暗号化します。次に、ログイン情報など重要な情報は、公衆Wi-Fi経由では入力しないようにします。さらに、接続先のSSIDが本物であることを、店舗スタッフに確認します。最後に、自動接続機能をオフにし、意図しないネットワークへの接続を防ぎます。
6. ログとキャプチャによる攻撃の検知手法
インシデント発生時、管理者はどのようにして攻撃の痕跡を見つけるのでしょうか。
MACアドレスの競合ログ
WindowsやLinux、ネットワーク機器のログには、同一IPアドレスに対して異なるMACアドレスが頻繁に入れ替わる際、「MACアドレスの重複」や「MACアドレスの変更」に関する警告が記録されます。
Windowsでは、イベントビューアの「システムログ」に、「IP address conflict」という警告が表示されます。Linuxでは、/var/log/messagesや/var/log/syslogに、ARPに関する異常が記録されます。これらのログを定期的に監視することで、攻撃の初期段階で検知できる可能性が高まります。
Wiresharkによるトラフィック解析
パケットキャプチャツールを使用すると、以下のような不審な挙動が可視化されます。
同一の送信元MACアドレスから、多数の異なるIPアドレスに対するARPリプライが出ている場合、ARPスプーフィングの可能性があります。ARPリクエスト(要求)がないにもかかわらず、大量のARPリプライが継続的に流れている場合も不審です。正規のデフォルトゲートウェイとは異なるMACアドレスが、ゲートウェイのIPを名乗っている場合は、明確な攻撃の証拠となります。
Wiresharkのフィルタ機能を使用すると、arp.opcode == 2で応答パケットのみを表示し、異常な頻度のARPリプライを特定できます。さらに、arp.duplicate-address-detectedフィルタで、重複したIPアドレスの検出を確認できます。
【演習】情報処理安全確保支援士対策:MITM攻撃とARPスプーフィングの深層理解(全10問)
ネットワークの「機密性」と「完全性」を脅かす中間者攻撃(MITM)。その中でも、ローカルネットワークの根幹を揺るがすARPスプーフィングは、情報処理安全確保支援士試験においても極めて重要な頻出テーマです。
本演習では、攻撃のメカニズムから、DAIやHSTSといった最新の防御技術、さらにはパケット構造の細部まで、実務と試験の両面で役立つ重要ポイントを凝縮した10問を用意しました。
「仕組みを理解しているつもり」から「試験で確実に得点できる知識」へ。 解説では、正解の理由だけでなく、他の選択肢がなぜ誤りなのかについても詳しく触れています。記事の内容をどれだけマスターできたか、ぜひ全問正解を目指してチャレンジしてください!
まとめ
中間者攻撃(MITM)とARPスプーフィングは、ネットワークの信頼性を根底から揺るがす攻撃です。しかし、その仕組みを正しく理解し、多層的な防御を施すことで、確実にリスクを低減できます。
MITMは通信の中間に潜み、情報の「覗き見」と「書き換え」を行います。ARPスプーフィングは、LAN内でのMACアドレス解決を偽装し、通信を攻撃者経由に仕向けます。DAI(Dynamic ARP Inspection)は、L2スイッチ層での強力な防御策となり、暗号化(SSL/TLS, HSTS, VPN)は、万が一通信が傍受された際の最後の砦となります。
試験においては、これらの技術がOSI参照モデルのどのレイヤーに位置し、互いにどのように連携して防御を構成するのかを整理しておくことが合格への近道です。
セキュリティエンジニアとしての視点
技術は常に進化していますが、ARPのような基本的なプロトコルの脆弱性は、今なお多くの組織で潜在的なリスクとして残っています。常に「通信経路は汚染されているかもしれない」という前提に立ち、プロトコルレベルでの正当性を検証する姿勢を持つことが、真に安全なネットワークを構築するための第一歩です。
今回の学習を通じて、ネットワークの透明人間をあぶり出すための「眼」を養い、試験突破と実務での活躍を目指しましょう。