フリーキーズ | 独学プログラミング

DNSキャッシュポイズニングとは

DNSキャッシュポイズニングは、DNSスプーフィングとも呼ばれ、ハッカーがドメインネームシステム(DNS)キャッシュを操作して、ユーザーを正規のWebサイトから悪意のあるWebサイトにリダイレクトするサイバー攻撃の一種です。DNSは、人間が読めるドメイン名( www.example.com )を、コンピュータがネットワーク上でお互いを識別するためのIPアドレスに変換する重要なインターネットサービスです。

Webサイトを閲覧する際、コンピュータは通常、DNSサーバーに問い合わせを行い、ドメイン名と関連付けられたIPアドレスを取得します。DNSサーバーからの応答は、コンピュータのDNSキャッシュに保存され、将来、より迅速にアクセスできるようになります。しかし、ハッカーがDNSキャッシュの改竄に成功した場合、コンピュータにドメイン名と間違ったIPアドレスを関連付けさせることができます。

DNSキャッシュポイズニングの例

  1. あなたは、銀行のWebサイト( www.mybank.com )にアクセスしたいと思います。
  2. あなたのコンピューターは、DNSサーバーにリクエストを送り、 www.mybank.com のIPアドレスを探します。
  3. 攻撃者は、DNSサーバーの脆弱性を利用するか、その他の方法でサーバーのキャッシュを操作し、www.mybank.com に関連付けられた間違ったIPアドレスを返させます。
  4. エンドユーザーのコンピュータは、この誤ったIPアドレスをDNSキャッシュに保存します。
  5. エンドユーザーが www.mybank.com にアクセスしようとすると、エンドユーザーのコンピュータは、正当な銀行のWebサイトではなく、誤ったIPアドレスでホストされている悪意のあるWebサイトにエンドユーザーを送信します。
  6. 悪意のあるWebサイトは、銀行のWebサイトと同じように見え、ログイン情報やその他の機密情報を入力させ、攻撃者に盗まれる可能性があります。

まとめ

DNSキャッシュポイズニングは、ユーザーの機密情報を漏洩させたり、マルウェアを拡散させるなど、深刻な結果をもたらす可能性があります。この種の攻撃から保護するために、インターネットサービスプロバイダや組織は、安全なDNSプロトコルを使用し、DNSソフトウェアを定期的に更新し、DNSSEC(Domain Name System Security Extensions)を実装してDNSデータの整合性を確保する必要があります。また、ユーザーはオンラインで機密情報を入力する際に慎重になり、フィッシングやなりすましのWebサイトの兆候を探す必要があります。