Dynamic Host Configuration Protocol
基本のDHCPには、認証のメカニズムは含まれていない。このため、様々な攻撃に対して脆弱である。DHCPを利用した攻撃は、主に以下の3つのカテゴリに分類される。
不正なDHCPサーバがクライアントに誤った情報を提示する。
無許可のクライアントがリソースにアクセスする。
悪意のあるDHCPクライアントからのリソース枯渇攻撃。
クライアントにはDHCPサーバの身元を検証する方法がないため、攻撃者が不正DHCP(英語版)サーバ(rogue DHCP)をネットワーク上に設置して、DHCPクライアントに誤った情報を提示する可能性がある。これは、クライアントがネットワーク接続にアクセスするのを妨げるDoS攻撃や、中間者攻撃に使うことができる。DHCPサーバはDHCPクライアントにDNSサーバなどのサーバIPアドレスを提供するため、攻撃者はDHCPクライアントに自分のDNSサーバを介してDNS問い合わせを実行させることができる。これにより、攻撃者は自分自身を介してネットワークトラフィックをリダイレクトし、接続しているクライアントとネットワークサーバ間の接続を盗聴したり、単にそれらのネットワークサーバを自分のネットワークサーバに置き換えることができる。
DHCPサーバは、管理者によって事前定義されたマッピングに基づいて、各クライアントのクライアント識別子(またはクライアントのMACアドレス)に応じてIPアドレスを発行する。この機能は、ルータのメーカーによって様々な名称で呼ばれている。DD-WRTは静的DHCP割り当て(static DHCP assignment)、dhcpdでは固定アドレス(fixed-address)、ネットギアではアドレス予約(address reservation)、シスコとリンクシスはDHCP予約(DHCP reservation)または静的DHCP(static DHCP)としているほか、IPアドレス予約(IP address reservation)やMAC/IPアドレスバインディング(MAC/IP address binding)とも呼ばれる。クライアントのクライアント識別子またはMACアドレスに一致するものがマッピングになかった場合、サーバは動的割り当てまたは自動割り当てにフォールバックしてIPアドレスを割り当てる場合と、IPアドレス割り当て自体をしない場合がある。
いずれの方法でも、通常配信されたIPアドレスはDHCPサーバーからリース(貸与)されたものとなっており、永続的に適用出来るものではない。貸与期間の有効期限はDHCP Optionとして配信される。Optionの値は32bit値で単位は秒のため、1秒〜約136年の間で指定が可能である。
次の表は、 RFC 2132 およびIANAレジストリで定義されている利用可能なDHCPオプションを一覧にしたものである。
DHCPサーバにはクライアントを認証するための安全なメカニズムがないため、クライアント識別子など、他のDHCPクライアントに属する資格情報を提示することで、攻撃者のクライアントはIPアドレスを不正に取得することができる。これにより、DHCPクライアントがDHCPサーバのIPアドレスのプールを全て使い果たすことも可能になる。アドレスを尋ねる度に新しい資格を提示することにより、クライアントは特定のネットワークリンク上の全ての利用可能なIPアドレスを消費できる。
DHCPでは、これらの問題を軽減するためのメカニズムをいくつか提供している。リレーエージェント情報オプションプロトコル拡張( RFC 3046 、通常は実際のオプション番号から"Option 82"と呼ばれる)は、これらのメッセージがネットワーク事業者の信頼できるネットワークに届くときにDHCPメッセージにタグを付けることをネットワーク事業者に許可する。このタグは、クライアントのネットワークリソースへのアクセスを制御するための認証トークンとして使用される。クライアントはリレーエージェントの上流にあるネットワークにアクセスできないため、認証がなくてもDHCPサーバオペレータが認可トークンに依存することを妨げることはない。