DHCPスプーフィング(ディーエイチシーピースプーフィング)とは | 意味や読み方など丁寧でわかりやすい用語解説
DHCPスプーフィング(ディーエイチシーピースプーフィング)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。
読み方
日本語表記
DHCPスプーフィング (ディーエイチシーピースプーフィング)
英語表記
DHCP spoofing (ディーエイチシーピー スプーフィング)
用語解説
DHCPスプーフィングとは、ネットワーク上でDHCP(Dynamic Host Configuration Protocol)サーバになりすますことで、クライアントに偽のネットワーク設定情報を配布し、その後の通信を不正に操作しようとする攻撃の一種である。正規のDHCPサーバの機能を悪用し、クライアントのネットワーク通信を盗聴したり、特定のサイトへ誘導したりするMan-in-the-Middle(中間者)攻撃の足がかりとして利用されることが多い。
DHCPは、ネットワークに接続するデバイスに対し、IPアドレス、サブネットマスク、デフォルトゲートウェイ、DNSサーバのアドレスといった必要なネットワーク設定情報を自動的に割り当てるためのプロトコルである。これにより、ネットワーク管理者は各デバイスに手動で設定を行う手間を省き、効率的にネットワークを運用できる。DHCPの動作は主にDORA(Discover, Offer, Request, ACK)と呼ばれる4つのステップで行われる。まず、クライアントがネットワーク内でDHCPサーバを探索する「DHCP Discover」メッセージを送信する。これを受け取ったDHCPサーバは、利用可能なIPアドレスなどの設定情報を含む「DHCP Offer」メッセージをクライアントに送る。クライアントはそのOfferの中から一つを選び、「DHCP Request」メッセージでその設定を要求する。最後に、DHCPサーバがその要求を承認し、正式に設定情報を割り当てる「DHCP ACK」メッセージを送ることで、クライアントはネットワークに接続できる状態となる。
DHCPスプーフィングでは、攻撃者が正規のDHCPサーバよりも早く、あるいは競合するように偽のDHCP Offerメッセージをクライアントに送信する。攻撃者は、自身のPCや専用のデバイスをネットワークに接続し、不正なDHCPサーバとして機能させるソフトウェアを起動する。そして、クライアントからDHCP Discoverメッセージがブロードキャストされると、攻撃者の偽DHCPサーバもDHCP Offerメッセージを送信する。この偽のOfferメッセージには、攻撃者が意図的に設定した不正なIPアドレス、そして最も重要な点として、デフォルトゲートウェイのアドレスとして攻撃者自身のアドレスが含められる。また、DNSサーバのアドレスも、攻撃者が管理する不正なDNSサーバのアドレスに設定されることがある。
もしクライアントがこの偽のOfferメッセージを正規のものと誤認し、攻撃者の提示した設定情報を受け入れてしまった場合、クライアントのすべての通信は、攻撃者が指定したデフォルトゲートウェイ(つまり攻撃者自身)を経由して行われることになる。これは、あたかも宅配便の荷物が、本来の届け先に向かう途中で、一度攻撃者の家に立ち寄ってから届けられるような状態である。これにより、攻撃者はクライアントが送受信するすべてのデータを傍受できるようになり、通信内容の盗聴、改ざん、さらには特定のWebサイトへのアクセスを偽のサイトへ誘導(フィッシング)するといったMan-in-the-Middle攻撃が可能になる。また、不正なDNSサーバのアドレスを配布することで、特定のドメイン名解決要求を攻撃者が指定するIPアドレスに誘導することもできる。さらに、誤ったネットワーク設定を大量に配布し、正規のIPアドレスの払い出しを妨害することで、クライアントがネットワークに接続できなくなるサービス妨害(DoS)攻撃を引き起こす可能性もある。
このようなDHCPスプーフィング攻撃への対策として、最も効果的な方法の一つが「DHCPスヌーピング」である。DHCPスヌーピングは、主にネットワークスイッチのセキュリティ機能として提供される。この機能が有効なスイッチは、DHCP関連のメッセージを監視し、どのポートからDHCP Offerメッセージが送信されるべきかを厳密に制御する。具体的には、正規のDHCPサーバが接続されているポートのみを「信頼できるポート(Trusted Port)」として設定し、その他のクライアントが接続されるポートを「信頼できないポート(Untrusted Port)」とする。DHCPスヌーピングが有効なスイッチは、信頼できないポートからDHCP Offerメッセージが送信された場合、それを不正なDHCPサーバからのものと判断し、ブロックする。これにより、攻撃者がネットワーク内に偽のDHCPサーバを設置しても、そのOfferメッセージがクライアントに届くことを防げるため、DHCPスプーフィング攻撃を未然に防ぐことが可能となる。その他にも、ネットワーク監視ツールを用いて不審なDHCPサーバの存在を検知する、スイッチのポートセキュリティ機能で許可されていないMACアドレスからの通信を制限する、などの対策も併用される場合がある。