メインコンテンツにスキップする

DNSとは?

DNSは、「ドメインネームシステム」を表し、インターネットのインデックスと呼ばれる場合もあります。ユーザーはDNSを使用して、ドメイン名(kaspersky.comなど)を対応するIPアドレスに変換することで情報にアクセスします。IPアドレスは、ブラウザーがインターネットリソース(たとえば、この記事)を読み込むために必要です。DNSはシステムとして、世界中のWebサイトを追跡、分類、規制するために使用されます。

DNSのより詳細な全体図を把握するには、DNSの仕組みを調べる必要があります。ただし、最初にこのトピックに関わる用語を明確にすることが重要です。

インターネットプロトコル(IP)アドレスは、一意の各コンピューターおよびサーバーに割り当てられる数字です。これらのIDは、コンピューターが互いに相手を見つけて「対話」するために使用されます。

ドメイン(またはドメイン名)は、人間が具体的なWebサイトとそのサービスを記憶、特定し、これらに接続するために使用するテキスト名です。たとえば、「www.kaspersky.com」などのドメインは、実際のターゲットサーバーID(すなわちIPアドレス)を理解するための簡単な手段として使用されます。

ドメインネームシステムサーバー(DNSサーバーまたはDNSネームサーバー)は、「DNSルックアップ」プロセスを構成する4つのサーバー種別の集合です。これには、名前解決サーバー、ルートネームサーバー、トップレベルドメイン(TLD)ネームサーバー、権威ネームサーバーが含まれます。より深く理解するために、これらの各サーバーの仕様を詳しくみてみましょう。

  1. 名前解決サーバー(または再帰リゾルバー)は、DNSルックアッププロセスの変換コンポーネントです。これは、(Webブラウザーまたはアプリを介して)クライアントからクエリを受け取り、これらのクエリを(以下に示す)一連のWebサーバーに伝えて、ドメイン名のターゲットIPアドレスを探すよう設計されています。これは、以前にキャッシュされたデータを使用して返信したり、ルートネームサーバーにクエリを送信したりできます。名前解決サーバーは、ルックアッププロセス中に以下のサーバーと定期的に通信しています。
  2. ルートネームサーバー(ルートサーバー)は、すべてのDNSルックアップが開始される場所です。DNSを階層のようなものだと想像してみると、「ルートゾーン」が一番上にあります。ルートサーバーは、ルートゾーン内で動作するDNSネームサーバーです。これはしばしば、ルックアッププロセス内の参照ポイントとして機能します。
  3. トップレベルドメイン(TLD)ネームサーバーは、ルートゾーンの1つ下の階層にあります。ルックアップの次の段階には、ドメイン名のすべての情報が含まれ、これには、一般的な「ドメイン拡張子」(.comや.netなど)が含まれます。
  4. 権威ネームサーバーは、ルックアップの最終部分で、検索対象のドメイン名に固有の情報が含まれます。これは、名前解決サーバーに適切なIPアドレスを提供できます。

これでDNSの定義とDNSとそのサーバーの一般的な理解を得られたので、DNSの正確な仕組みについて調べてみることができます。

DNSの仕組み

ブラウザー上でドメイン名を介してWebサイトを検索する場合、「ルックアップ」と呼ばれるプロセスを開始します。ルックアップの全行程には、6つの段階があります。

  1. Webブラウザーとオペレーティングシステム(OS)が、ドメイン名に割り当てられたIPアドレスを呼び出そうとします。これが以前に呼び出されたIPアドレスであれば、コンピューターの内部ストレージまたはメモリキャッシュから呼び出すことができます。
  2. どちらのコンポーネントにも送信先IPアドレスの場所がキャッシュされていない場合、このプロセスは続行されます。
  3. OSは、IPアドレスについて名前解決サーバーにクエリを発行します。このクエリにより、ドメインに一致するIPを見つけるためにドメインネームシステムサーバーチェーンを通じた検索が始まります。
  4. このクエリは最初にルートネームサーバーに到達し、ルートネームサーバーはこのクエリを(リゾルバーを介して)TLDサーバーに送信します。
  5. TLDサーバーは、このクエリを(今回もリゾルバーを介して)権威ネームサーバーに渡すか差し向けます。
  6. 最終的に、リゾルバーは権威ネームサーバーとの通信を介してIPアドレスを見つけてOSに渡します。OSは、これをWebブラウザーに戻します。これにより、ユーザーがリクエストしたWebサイトまたはページが表示されます。

DNSルックアッププロセスは、インターネット全体で使用される重要なフレームワークです。残念ながら、犯罪者はDNSのぜい弱性を悪用できます。つまり、しばしば「スプーフィング」 や「ポイズニング」と呼ばれるリダイレクトを介して行われる可能性がある詐欺に注意する必要があります。これらの脅威を回避するために、DNSスプーフィングとDNSポイズニングの概要とその仕組みについて説明します。

a picture of a DNS server circuit board with a glowing blue chip in the shape of a spider

DNSスプーフィングとDNSポイズニングの定義

ドメインネームシステム(DNS)のスプーフィングとポイズニングは、DNSサーバーのぜい弱性を悪用してトラフィックの進路を正規のサーバーから偽のサーバーに変えるサイバー攻撃の種別です。詐欺ページに移動したら、解決できるのは自分しかいないにもかかわらず、解決方法に戸惑うかもしれません。自分自身を守るには、正確にそのページの仕組みを理解する必要があります。

DNSスプーフィングとその拡張機能であるDNSキャッシュポイズニングは、詐欺的なサイバー脅威の中でもより詐欺性の強い脅威です。インターネットを使用してWebサイトにアクセスする方法を理解していないと、Webサイト自体がハッキングされていると騙される可能性があります。場合によっては、ハッキングされているのは自分のデバイスであることもあります。さらに悪いことに、サイバーセキュリティスイートが止めることができるのは、一部のDNSスプーフィングに関連する脅威だけの場合もあります。

DNSスプーフィングとDNSキャッシュポイズニングの仕組み

DNSに関しては、最も有名な脅威は2部構成です。

  1. DNSスプーフィングは、DNSの結果として生じる脅威で、正規のサーバーの送信先を模倣して、ドメインのトラフィックをリダイレクトします。無防備な被害者は、DNSスプーフィング攻撃のさまざまな手段の結果として生まれた目的地である、悪意のあるWebサイトに辿り着きます。
  2. DNSキャッシュポイズニングは、DNSスプーフィングのユーザー側の手段です。この場合、ユーザーのシステムが不正なIPアドレスをローカルメモリキャッシュに記録します。これにより、問題が解決されたりサーバー側には存在していないとしても、DNSがまさにユーザーのために間違ったサイトを呼び出します。

DNSスプーフィングまたはDNSキャッシュポイズニング攻撃の手段

さまざまなDNSスプーフィング攻撃の中でも、より一般的な手段は以下のとおりです。

中間者攻撃:攻撃者は、ユーザーのWebブラウザーとDNSサーバーの間に介入します。ローカルデバイスでのキャッシュポイズニングとDNSサーバーでのサーバーポイズニングを同時に行うためにツールが使用されます。この結果、攻撃者独自のローカルサーバー上でホスティングされている悪意のあるサイトにリダイレクトされます。

DNSサーバーハイジャック:犯罪者は、サーバーを直接再構成し、リクエストしたすべてのユーザーを悪意のあるWebサイトにリダイレクトします。不正なDNSエントリがDNSサーバーに挿入されたら、スプーフィングされたドメインに対するIPリクエストはすべて、偽のサイトに辿り着きます。

スパムを介したDNSキャッシュポイズニング:DNSキャッシュポイズニングのコードは、多くの場合、スパムメールで送信されたURLに埋め込まれています。これらのメールの指示に従って、記載されたURLをクリックすると、コンピューターが感染します。メールや信頼できないWebサイトのバナー広告や画像も、ユーザーをこうしたコードに誘導されることがあります。感染すると、本物に見えるよう偽装された偽のWebサイトに連れて行かれます。ここでデバイスに真の脅威が埋め込まれます。

DNSスプーフィングとDNSポイズニングのリスク

DNSスプーフィングとDNSポイズニングの一般的なリスクは、以下のとおりです。

  • データの盗難
  • マルウェアの感染
  • セキュリティの更新の停止
  • 検閲

DNSスプーフィングによって複数のリスクがもたらされ、各リスクによってデバイスと個人データが危険に曝されます。

データの盗難は、DNSスプーフィングの攻撃者にとって特に利益の大きい攻撃である場合があります。銀行のWebサイトや人気のあるオンラインショッピングサイトは狙われやすく、パスワード、クレジットカード、または個人情報が侵害される危険性があります。リダイレクト先は、ユーザーの情報を収集することを目的としたフィッシングWebサイトです。

マルウェア感染は今もなお、DNSスプーフィングを使用したもう1つの一般的な脅威です。ユーザーをリダイレクトするスプーフィングでは、目的地が悪意のあるダウンロードに感染したサイトである可能性があります。ドライブバイダウンロードは、ユーザーのシステムを自動的に感染させる簡単な方法です。最終的に、インターネットセキュリティを使用していない場合、 スパイウェアキーロガー、またはワームなどのリスクに曝されます。

セキュリティの更新の停止は、DNSスプーフィングの結果として起こる可能性があります。スプーフィングされたサイトにインターネットセキュリティプロバイダーが含まれる場合、正規のセキュリティ更新が実行されなくなります。この結果、ウイルスやトロイの木馬などの別の脅威にコンピューターが曝される可能性があります。

検閲は、世界の一部の地域では実際に一般化しているリスクです。たとえば、中国は、DNSの派生形を使用して、国内で閲覧されるすべてのWebサイトが承認されるよう徹底しています。「グレートファイアウォール」と呼ばれるこの国レベルのブロックは、DNSスプーフィングがどれほど強力であるかを示す一例です。

特に、DNSキャッシュポイズニングを排除するのは困難です。感染したサーバーをクリーニングしても、デスクトップやモバイルデバイスの問題は取り除かれないため、デバイスはスプーフィングされたサイトに戻ってしまいます。また、クリーンなデスクトップが感染したサーバーに接続すると、セキュリティが再度侵害されます。

DNSスプーフィングとDNSキャッシュポイズニングを防止する方法

DNSスプーフィングを防止する方法に目を向けると、ユーザー側の保護手段は限られています。Webサイトの所有者とサーバーのプロバイダーの場合は、自らとサーバーを保護する手段が多少多く用意されています。全員の安全を適切に維持するには、両者がスプーフィングを回避しようと試みる必要があります。

Webサイトの所有者とDNSサーバーのプロバイダーがこれらの攻撃を防止する方法を以下に示します。

  1. DNSスプーフィングの検知ツール
  2. ドメインネームシステムセキュリティ拡張
  3. エンドツーエンドの暗号化

エンドポイントユーザーがこれらの攻撃を防止する方法を以下に示します。

  1. 知らないリンクは決してクリックしない
  2. コンピューターにマルウェアがないか定期的にスキャンする
  3. DNSキャッシュをクリアしてポイズニングを解決する
  4. バーチャルプライベートネットワーク(VPN)を使用する

Webサイトの所有者とDNSサーバーのプロバイダー向けの防止に関するヒント

Webサイトの所有者とDNSサーバーのプロバイダーには、ユーザーを防護する確固たる責任があります。脅威を排除するためにさまざまな保護ツールやプロトコルを導入できます。これらのリソースのうち、以下のいくつかを使用することをお勧めします。

  1. DNSスプーフィングの検知ツール:エンドポイントユーザーのセキュリティ製品と同等のツールとして、この検知ツールが、受信したすべてのデータを送信する前に事前にスキャンします。
  2. ドメインネームシステムセキュリティ拡張(DNSSEC):実質的にDNSが「検証された本物である」ことを示すラベルであるDNSSECシステムは、DNSルックアップがスプーフィングの心配のない信頼できるものであることを維持します。
  3. エンドツーエンドの暗号化:DNSのリクエストと応答の送信に暗号化されたデータを使用することで、犯罪者を排除し、犯罪者が正規のWebサイトの一意のセキュリティ証明書を複製できないようにします。

ユーザー向けの防止に関するヒント

ユーザーは特にこの種の脅威に対してぜい弱です。DNSポイズニング攻撃の被害に遭わないようにするには、以下の簡単なヒントに従う必要があります。

  1. 知らないリンクは決してクリックしない。これには、メール、テキストメッセージ、ソーシャルメディアのリンクが含まれます。URLを短縮するツールを使用するとリンクの目的地がさらに隠されるため、これらはできるだけ使用しないようにしてください。特に安全を確保するには、常にURLをアドレスバーに手動で入力することを選択してください。ただし、そうするのは、そのURLが公式の本物のURLであることを確認してからにしてください。
  2. コンピューターにマルウェアがないか定期的にスキャンする。DNSキャッシュポイズニングを検知できない可能性があるため、セキュリティソフトウェアが結果として発生した感染を発見して排除する上で役に立ちます。スプーフィングされたサイトはあらゆる種別の悪意のあるプログラムを送り込む可能性があるため、ウイルス、スパイウェア、その他の隠された問題を常にスキャンする必要があります(マルウェアがスプーフィングを送り込む可能性があるため、逆の可能性もあります)。また、ポイズニングによってWeb経由の結果が偽装される可能性があるため、スキャンは常にホストバージョンではなくローカルプログラムで実行してください。
  3. 必要に応じてDNSキャッシュをクリアしてポイズニングを回避する。感染したデータをクリーニングしない限り、キャッシュポイズニングはシステム内に長期間残ります。このプロセスは、Windowsの[ファイル名を指定して実行]プログラムを開き、コマンドとして「ipconfig /flushdns」と入力するだけですみます。Mac、iOS、Androidにもクリアオプションがあります。これらは通常、「ネットワーク設定リセット」オプション、機内モードの切り替え、デバイスの再起動、または特定のネイティブのWebブラウザーURLとして用意されています。特定のデバイスの方法に関してはガイダンスを参照してください。
  4.  バーチャルプライベートネットワーク(VPN)を使用する。このサービスでは、すべてのWebトラフィックを対象として暗号されたトンネルが用意され、エンドツーエンドで暗号されたリクエストを排他的に使用するプライベートDNSサーバーを利用します。この結果、DNSスプーフィングに対してはるかに復元性に優れたサーバーや、中断されないリクエストを使用できるようになります。

DNSスプーフィングとマルウェア攻撃に対して自分自身をぜい弱な状態のままにしないでください。カスペルスキーのホームセキュリティ製品を使用して今すぐ身を守ってください。

関連記事やリンク:

関連製品:

DNSとは?

DNSとは何か、その意味と仕組みをご覧ください。DNSがどのようにスプーフィングおよびポイズニングされるか、そして、デバイスへの感染を防止する方法についても説明します。
Kaspersky logo