〜DHCPを狙った攻撃とスイッチ側の防御機構〜
1. DHCPとは(前提整理)
DHCP(Dynamic Host Configuration Protocol)は、
IPアドレス・デフォルトゲートウェイ・DNSサーバなどを自動配布する仕組みです。
通常の流れは以下の4段階(DORA):
| フェーズ | 宛先 | 内容 |
|---|---|---|
| Discover | ブロードキャスト DHCPサーバのIPが不明 | クライアントがDHCPサーバを探す |
| Offer | ユニキャスト or ブロードキャスト | DHCPサーバがIPアドレスを提示 |
| Request | ブロードキャスト 他のDHCPサーバにも通知 | クライアントが使用したいIPを要求 |
| ACK | ユニキャスト or ブロードキャスト | DHCPサーバが確定通知 |
👉 この仕組みの「信頼前提」を悪用した攻撃が DHCPスプーフィング です。
2. DHCPスプーフィングとは
■ 攻撃の概要
DHCPスプーフィングとは、
攻撃者が偽のDHCPサーバとして振る舞い、不正なネットワーク情報を配布する攻撃です。
■ 何が起きるか
攻撃者が以下の情報を配布できます:
- 偽のデフォルトゲートウェイ
- 偽のDNSサーバ
- 不正なIPアドレス設定
その結果:
- 通信の盗聴(中間者攻撃 / MITM)
- フィッシングサイトへの誘導
- 通信断(DoS)
■ 攻撃イメージ
[ 正規DHCP ] [ 攻撃者DHCP ]
│ │
└─── Offer ───▶ クライアント
(より速く返答)
👉 DHCPは最初に返ってきたOfferを信頼するため、攻撃が成立しやすい。
3. DHCPスヌーピングとは
■ DHCPスヌーピングの役割
DHCPスヌーピングは、
スイッチがDHCP通信を監視し、不正なDHCPサーバをブロックするセキュリティ機能です。
👉 DHCPスプーフィングへの代表的な対策。
4. DHCPスヌーピングの仕組み
■ ポートの役割
DHCPスヌーピングでは、スイッチのポートを2種類に分けます。
| ポート種別 | 説明 |
|---|---|
| Trust(信頼) | 正規DHCPサーバが接続されるポート |
| Untrust(非信頼) | クライアントが接続されるポート |
■ 動作ルール
- UntrustポートからのDHCP Offer / ACKは破棄
- TrustポートからのDHCP通信のみ許可
5. DHCPスヌーピング・バインディングテーブル
DHCPスヌーピングは、
IPアドレス・MACアドレス・VLAN・ポート番号を紐づけたテーブルを作成します。
■ DHCP Snooping Binding Table
| 項目 | 内容 |
|---|---|
| IPアドレス | 割り当てられたIP |
| MACアドレス | クライアントMAC |
| VLAN | VLAN番号 |
| Interface | 接続ポート |
| Lease time | リース時間 |
👉 このテーブルは DAI(動的ARP検査)やIP Source Guard と連携します。
6. 設定コマンド例(Cisco IOS)
| 手順 | 内容 |
|---|---|
| ① | DHCPスヌーピング機能を有効化 |
| ② | 対象VLANを指定 |
| ③ | DHCPサーバ接続ポートをTrust |
| ④ | オプション設定(Option 82など) |
| ⑤ | バインディング情報を他機能で利用 |

① DHCPスヌーピング有効化
(config)# ip dhcp snooping
② VLAN指定
(config)# ip dhcp snooping vlan 10
👉 VLAN指定しないと動作しない(試験頻出)
③ DHCPサーバ接続ポートをTrust
(config)# interface GigabitEthernet0/1
(config-if)# ip dhcp snooping trust
- Trustに設定しないとOffer/ACKが遮断される
- クライアント側ポートはデフォルトでUntrust
DHCPオプション(Option 82)
■ Option 82とは
- スイッチが 中継情報(接続ポート・VLANなど)をDHCPパケットに付加
- 不正端末の特定や制御に利用
■ Option 82 有効化
(config)# ip dhcp snooping information option
■ Option 82 を挿入しない設定(参考)
(config)# no ip dhcp snooping information option
MACアドレス関連(レート制限・検証)
■ DHCPパケットのレート制限(DoS対策)
(config-if)# ip dhcp snooping limit rate 15
- UntrustポートでのDHCP要求数を制限
- DHCP枯渇攻撃対策
7. 確認コマンド
| コマンド | 内容 |
|---|---|
| show ip dhcp snooping | DHCPスヌーピングの状態 |
| show ip dhcp snooping binding | バインディングテーブル表示 |
| show running-config | section dhcp | 設定確認 |
8. CCNA試験での重要ポイント
- DHCPスプーフィングは 偽DHCPサーバ攻撃
- DHCPスヌーピングは L2スイッチ機能
- Trust / Untrust ポートの考え方
- DHCPスヌーピングは DAI・IP Source Guardの前提機能
- VLAN単位で有効化が必要
9. まとめ
- DHCPは便利だが、信頼前提のプロトコル
- DHCPスプーフィングは簡単に成立する攻撃
- DHCPスヌーピングはスイッチ側での必須防御策
- セキュリティ機能は 単体ではなく連携して使う


コメント