DNSポイズニングの定義
DNSポイズニングとは、名前解決(ドメイン名→IPアドレス)に関する情報を攻撃者が改ざんし、利用者が本来アクセスすべきではない宛先へ誘導されるようにする行為を指します。結果として、ブラウザで開こうとしたサイト名が、別のIPアドレスとして解決される状態が起きます。
ここで重要なのは、「攻撃者が直接あなたの端末に侵入して表示を差し替える」とは限らない点です。DNSは名前解決の仕組みであり、DNS応答が誤れば、その先の接続先が変わる可能性が生まれます。
仕組みを“簡単なモデル”で理解する
DNSの応答は、一般に次のような流れで決まります。
- あなたの端末(またはルータ)が、指定されたDNSサーバに対してドメイン名の問い合わせを送る
- DNSサーバが、問い合わせに対応するIPアドレスなどの情報を返す
- 端末が返ってきたIPアドレスへ通信を行う
DNSポイズニングでは、(2)の「返してくる情報」を、攻撃者の都合のものにすり替えることが狙いです。すり替えに成功すると、端末は“そのドメイン名に対応するIP”として偽の情報を受け取り、結果的に別のサーバへ向かいます。
ただし、DNS応答は完全に自由に上書きできるわけではなく、タイミングや整合性の条件など、成立しやすさに現実的な制約があります。どの環境でも同じ確率で起きるとは限らないため、「どの段階が影響点か」を分解して考えるのが実用的です。
攻撃の影響と制限(どこまで起きるか)
DNSポイズニングの影響は、主に次の要素で左右されます。
- 解決経路:端末が参照しているDNSサーバがどこか(自宅のルータ配下か、別のDNSか)
- キャッシュの扱い:一度解決した情報がキャッシュされていると、誤った情報がしばらく残り得ます
- 応答の整合性:攻撃者が“正しい応答として見せる”必要がある場合、失敗要因が増えます
- 検知のしやすさ:誤解決が起きたとしても、上流で追加の検証が働けば、影響が限定されることがあります
ここでの言い換えとして、「DNSを狙う」といっても、成功すれば必ず全員に同じように起きるという性質ではありません。利用者ごとのDNS設定、端末やネットワークの挙動、問い合わせタイミングによって見え方が変わります。
関連概念との違いを押さえる
DNSポイズニングは“名前解決の結果”に手を入れる発想です。似た言葉や同じ場面で語られる概念がありますが、目的や発生点が異なります。
- DNSリダイレクト:DNSの結果として別先へ誘導する挙動は似ていますが、用語としては必ずしも「改ざん」を強調しない場合があります。
- 偽サイト(フィッシング等):結果として偽ページが表示される点は共通でも、DNS以外の要因(リンクの操作、メールや広告の誘導など)で成立することがあります。
- 通信の盗聴・改ざん:これはDNSではなく、ネットワーク層〜上位での別の問題です。
