DNSキャッシュポイズニング攻撃


応用情報技術者平成30年秋期 午前問39

DNSキャッシュサーバに対して外部から行われるキャッシュポイズニング攻撃への対策のうち,適切なものはどれか。

1、DNSキャッシュポイズニング攻撃は、
DNSキャッシュサーバに偽のDNS情報をキャッシュとして登録させることで、利用者を偽のWebサイトに誘導する攻撃です。

2、再帰的な問合せ
リゾルバから名前解決要求を受けたDNSサーバが他のDNSサーバに代理して問合せを行い、最終的な結果をリゾルバに返す必要のある問合せのこと

 ・リゾルバ(Resolver)は、ドメインネームシステムのネームサーバへアクセスしドメイン名前空間から任意のノードの情報を取得するために用いられるクライアントの名称。

3、反復問合せ
リゾルバから再帰的問合せを受けたDNSサーバが、それを解決できるまで繰り返し他のDNSサーバに行う問合せのこと

★攻撃者がDNSキャッシュサーバに偽のキャッシュ情報を登録させる手順:
・攻撃者は、キャッシュサーバに対して偽の再帰的な問合せを行い反復問合せを強制的に生じさせる。
・キャッシュサーバは、コンテンツサーバに対して反復問合せを行う。
・攻撃者は、コンテンツサーバが正規の応答を返すよりも先にキャッシュサーバへ偽の応答を送りつける
・キャッシュサーバは、攻撃者から送られた偽の応答を正規のものと判断しキャッシュに登録する。この時点でDNSクエリは解決済なのでコンテンツサーバから送られた正規の応答は破棄される。

つまり、再帰問い合わせを外部ネットワークからのリクエストを禁止すると、キャッシュサーバに偽キャッシュを登録させるリスクがなくなるので、対策となります。

・リゾルバと(resolver)は、名前解決のためのDNSクライアントのことである。 ドメイン名を元にIPアドレス情報を検索したり(正引き)、IPアドレスからドメイン名の情報を検索したり(逆引き)するのが目的である。 名前解決を行うことから「解決するもの」(resolver)という意味でリゾルバと呼ばれている。

・キャッシュポイズニング(DNS cache poisoning)とは、DNSのキャッシュ情報を意図的に書き換え、利用者を誤ったサイトへ誘導する攻撃である。 例えば、キャッシュポイズニングの攻撃により、オンラインバンキングのサイトの偽情報を流すことができれば、利用者の口座番号やパスワードなどの情報を抜き出すことが可能となる。

参照:
https://www.sc-siken.com/kakomon/26_aki/am2_9.html

リゾルバ(Resolver)
https://ja.wikipedia.org/wiki/%E3%83%AA%E3%82%BE%E3%83%AB%E3%83%90