DNSサーバへの攻撃【情報処理安全確保支援士講座】

2024年6月30日

情報処理安全確保支援士 DNSサーバへの攻撃

今回は情報処理安全確保支援士の試験で問われる、DNSサーバへの攻撃について解説します。

アカリ
アカリ
普段使っているサイトにアクセスしたはずなんだけど、何か変?
トモル
トモル
DNSに偽の情報を入れられたのかも?

本記事のまとめ!

  1. DNSサーバに対する攻撃の概要
  2. DNSサーバに対する攻撃の種類
  3. DNSサーバに対する攻撃の対策

DNSサーバに対する攻撃

情報処理安全確保支援士 DNSキャッシュポイズニング

DNSサーバを対象とした攻撃手法や対策について確認していきましょう。

ゾーン転送要求による登録情報の収集

情報処理安全確保支援士 ゾーン転送要求による情報収集

DNSサーバは、プライマリ・セカンダリの2台構成で運用されており、双方のサーバの内容は同期されています。

キュー
キュー
プライマリサーバとセカンダリサーバの同期をゾーン転送と言うんやで

DNSサーバに対する名前解決要求は53/UDPポートで行われます。一方でゾーン転送要求は53/TCPポートで行われ、セカンダリDNSサーバからプライマリのDNSサーバに対して定期的に実行されます。

制限を設けていない場合、セカンダリDNSサーバ以外のホストからもnslookupコマンドにより容易にゾーン転送要求を行なえます。

トモル
トモル
ゾーン転送要求を行なえば、ターゲットのネットワークやサーバ構成を簡単に知れるよ。

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

情報処理安全確保支援士 DNSキャッシュポイズニング

DNSキャッシュポイズニング攻撃は、DNSサーバから上位のサーバへの名前解決要求に対し、悪意のあるDNSサーバが正当な上位サーバからの応答を貰う前に悪意のあるサイトへ誘導するための不正な名前解決情報を返す攻撃です。

キュー
キュー
結果として、不正なサイトがDNSのキャッシュに登録されるで

キャッシュの汚染されたDNSサーバを利用したユーザは、悪意のあるサイトに誘導され個人情報の窃取などを受けます。

DNSキャッシュポイズニング攻撃が成功するためには、以下の条件を満たす必要があります。

DNSキャッシュポイズニング攻撃の条件
  • 標的DNSサーバのキャッシュに登録されていない名前解決要求を行うこと
  • 標的DNSサーバが上位サーバに問い合わせた際の送信元ポート番号宛に返答すること
  • 標的DNSサーバが上位サーバに問い合わせたときのトランザクションIDと応答IDを一致させること
  • 正当な上位サーバからの応答より先に返答すること
📝【出題履歴】令和3年度春期 午後Ⅰ問2 DNSキャッシュポイズニングに関する出題

【問題文】

DNSキャッシュポイズニング攻撃が成功すると,攻撃対象のフルサービスリゾルバが管理するリソースレコードのうち,メールサーバの c レコードのIPアドレスが,例えば攻撃者のメールサーバのものに書き換えられてしまい,電子メールが攻撃者のサーバに送信されてしまう。

【設問】

設問1
(4) 本文中の c に入れるDNSのリソースレコードのタイプ名を6字以内で答えよ。

出題:令和3年度春期 午後Ⅰ問2

カミンスキー攻撃

カミンスキー攻撃は、セキュリティ研究家のKaminsky氏によって考案・公表されたDNSキャッシュポイズニング攻撃の一種です。

攻撃の流れを確認しておきましょう。

STEPLIST
  1. 攻撃者は標的DNSサーバに対し、汚染情報を登録したいドメイン名と同じドメインかつ、存在しないFQDNの名前解決要求を実施
  2. 名前解決要求を受けたDNSサーバは、キャッシュに登録されていないため上位サーバへ問い合わせる
  3. 攻撃者は、問合せ応答が返る前に偽の応答を任意のIDで返す。
  4. 汚染情報が標的のDNSサーバのキャッシュに登録される
キュー
キュー
最近では、DNSキャッシュポイズニング攻撃と同じ目的で、hostsファイルの書換え攻撃も確認されてるで。

サービス不能攻撃

DNSサーバの仕様や実装における脆弱性を突いて不正な要求を与え、サービス不能状態に引き起こす攻撃をサービス不能攻撃と呼びます。

過去には世界に複数台あるルートDNSサーバが一斉にDDoS攻撃を受け、正常なサービスを提供できなくなる事件がありました。

キュー
キュー
DNSへのサービス不能攻撃はDNSサーバのバージョンを最新にしたり、適切な設定にしておけば防げるで!

DNSリフレクション攻撃(DNS amp 攻撃)

DNSリフレクション攻撃は、反射・増幅型のDDoS攻撃の一種です。他のサイトを攻撃するためにDNSサーバを攻撃パケットの踏み台として悪用します。

DNSリフレッション攻撃によって踏み台となったDNSサーバ自体の負荷が高まりサービス不能となるケースもあります。

トモル
トモル
応答メッセージを増幅させて負荷を高めるから、DNS amp 攻撃とも呼ばれるよ

DNSリフレクション攻撃の手順は以下の通りです。

STEPLIST
  1. 攻撃者が発信元アドレスを最終的なターゲットとなるホストのIPアドレスに詐称し、攻撃に加担させるDNSサーバにクエリを送る。
  2. クエリを受け取ったDNSサーバは、偽装された送信元アドレスに対して応答する。

この作業を複数のDNSサーバに対し一度に送ることで、DNSリフレクション攻撃が成立します。

DMZに設置されたDNSキャッシュサーバが、インターネット上の任意のホストからのクエリを無条件に受け付けるオープンリゾルバになっていると、DNSリフレクション攻撃に悪用される危険性が高まります。

📝【出題履歴】平成28年度春期 午後Ⅰ問2 DNSリフレクション攻撃に関する出題

【問題文】

情報セキュリティスペシャリスト試験 平成28年度春期 午後Ⅰ問2 図3

Kさんは,プロキシサーバがDNS c 攻撃に悪用されないようにする対策を含めて,他の設定を点検し,他に問題がないことを確認した。

【設問】

設問2
図3及び本文中の c に入る適切な字句を,10字以内で答えよ。

出題:平成28年度春期 午後Ⅰ問2

DNS水責め攻撃

情報処理安全確保支援士 DNS水責め攻撃

DNS水責め攻撃は、オープンリゾルバとなっているDNSキャッシュサーバに対して、攻撃対象のドメインのランダムなサブドメイン名を大量に発生させ、不正な名前解決要求を行う手法です。

攻撃対象ドメインの権威DNSサーバが過負荷に陥ります。

キュー
キュー
ランダムサブドメイン攻撃って名称でも呼ばれるで

DNSトンネリング

DNSトンネリングは、内部に侵入したマルウェアが外向けDNSキャッシュサーバを介して、攻撃者がC&Cサーバとしてインターネット上に設置した不正な権威DNSサーバと通信する手法です。

マルウェアは侵入した組織の外向けDNSキャッシュサーバに対し、不正な権威DNSサーバが管理するドメインについての再帰的クエリを送信します。

トモル
トモル
結果的に、外向けDNSキャッシュサーバが不正な権威DNSサーバに対して非再帰的なクエリを送信してC&C通信が確立するよ。

DNSトンネリングは組織の外向けDNSキャッシュサーバに脆弱性が無くても成立する可能性があり、防御は容易でありません。

しかし、不正な権威DNSサーバのホスト名にはランダムな長い文字列が使われるケースが多いため、当該サーバとの間でのDNSクエリログを分析すれば検知可能です。

DNSサーバへの攻撃の対策

DNSサーバへの攻撃の対策方法を確認しておきましょう。

予防・防止

DNSサーバへの攻撃の予防・防止策
  • DNSサーバのソフトウェアのバージョンを最新にする
  • DNSの送信元ポート番号をランダムにする
  • DNSSECを利用する
  • ゾーン転送をセカンダリDNSサーバ飲みに許可する
  • 脆弱性検査によるセキュリティーホールを確認し対処する
  • DNSキャッシュサーバが不要なクエリを拒否するようアクセス制限を施す

検知・追跡

DNSサーバへの攻撃の検知・追跡策
  • ネットワーク監視型IDS・IPSを用いてDNSサーバに対する攻撃を検知する
  • DNSクエリログを分析し、DNSサーバを悪用した攻撃を検知する

回復

DNSサーバへの攻撃の回復策
  • 攻撃を受けた原因となった脆弱性を特定する
スポンサーリンク

DNSサーバに対する攻撃・例題

実際に例題を解いて問題に慣れていきましょう。

問1

DNSキャッシュポイズニング攻撃に対して有効な対策はどれか。(H.28春/問12)

ア:DNSサーバで,マルウェアの侵入をリアルタイムに検知する。
イ:DNS問合せに使用するDNSヘッダー内のIDを固定せずにランダムに変更する。
ウ:DNS問合せに使用する送信元ポート番号を53番に固定する。
エ:外部からのDNS問合せに対しては,宛先ポート番号53のものだけに応答する。

(ログイン後回答すると、ここに前回の正誤情報が表示されます)

問1の正解を表示

問1の解説を表示

DNSキャッシュポイズニング攻撃を成功させるためには、ポート番号・DNSヘッダ内のトランザクションIDを本来の応答レコードに合致させなければいけません。

これらの値を固定せず、ランダムな値に変更することがDNSキャッシュポイズニングの有効な対策になります。

これより、「イ」が正解です。

問2

DNS水責め攻撃(ランダムサブドメイン攻撃)の手口と目的に関する記述のうち,適切なものはどれか。(H.29春/問6)

ア:ISPが管理するDNSキャッシュサーバに対して,送信元を攻撃対象のサーバのIPアドレスに詐称してランダムかつ大量に生成したサブドメイン名の問合せを送り,その応答が攻撃対象のサーバに送信されるようにする。
イ:オープンリゾルバとなっているDNSキャッシュサーバに対して,攻撃対象のドメインのサブドメイン名をランダムかつ大量に生成して問い合わせ,攻撃対象の権威DNSサーバを過負荷にさせる。
ウ:攻撃対象のDNSサーバに対して,攻撃者が管理するドメインのサブドメイン名をランダムかつ大量に生成してキャッシュさせ,正規のDNSリソースレコードを強制的に上書きする。
エ:攻撃対象のWebサイトに対して,当該ドメインのサブドメイン名をランダムかつ大量に生成してアクセスし,非公開のWebページの参照を試みる。

(ログイン後回答すると、ここに前回の正誤情報が表示されます)

問2の正解を表示

問2の解説を表示

DNS水責め攻撃は、問い合わせ元のアドレスや問い合わせ対象ドメインの制限なくオープンリゾルバになっているDNSキャッシュサーバに対し、攻撃対象のドメインのランダムなサブドメイン名を大量に発生させ不正な名前解決要求を行う攻撃です。

ア:ISPが管理するDNSキャッシュサーバに対して,送信元を攻撃対象のサーバのIPアドレスに詐称してランダムかつ大量に生成したサブドメイン名の問合せを送り,その応答が攻撃対象のサーバに送信されるようにする。
→DNS amp 攻撃の説明です。したがって誤りです。

イ:オープンリゾルバとなっているDNSキャッシュサーバに対して,攻撃対象のドメインのサブドメイン名をランダムかつ大量に生成して問い合わせ,攻撃対象の権威DNSサーバを過負荷にさせる。
→DNS水責め攻撃の説明です。したがって正解です。

ウ:攻撃対象のDNSサーバに対して,攻撃者が管理するドメインのサブドメイン名をランダムかつ大量に生成してキャッシュさせ,正規のDNSリソースレコードを強制的に上書きする。
→DNSキャッシュポイズニング攻撃の一種です。したがって誤りです。

エ:攻撃対象のWebサイトに対して,当該ドメインのサブドメイン名をランダムかつ大量に生成してアクセスし,非公開のWebページの参照を試みる。
→DNS水責め攻撃は、非公開Webページの参照を試みるわけではありません。したがって誤りです。

これより、「イ」が正解です。

問3

企業のDMZ上で1台のDNSサーバをインターネット公開用と社内用で共用している。このDNSサーバが,DNSキャッシュポイズニングの被害を受けた結果,引き起こされ得る現象はどれか。(H.25春/問12)

ア:DNSサーバのハードディスク上のファイルに定義されたDNSサーバ名が書き換わり,外部からの参照者が,DNSサーバに接続できなくなる。
イ:DNSサーバのメモリ上にワームが常駐し,DNS参照元に対して不正プログラムを送り込む。
ウ:社内の利用者が,インターネット上の特定のWebサーバを参照しようとすると,本来とは異なるWebサーバに誘導される。
エ:社内の利用者間で送信された電子メールの宛先アドレスが書き換えられ,正常な送受信ができなくなる。

(ログイン後回答すると、ここに前回の正誤情報が表示されます)

問3の正解を表示

問3の解説を表示

DNSキャッシュポイズニングは、DNSサーバからの名前解決要求に対して、悪意あるサイトに誘導するための不正な名前解決情報を返し当該DNSサーバのキャッシュに登録させる攻撃です。

ア:DNSサーバのハードディスク上のファイルに定義されたDNSサーバ名が書き換わり,外部からの参照者が,DNSサーバに接続できなくなる。
→DNSキャッシュポイズニング攻撃はDNSサーバ名を書き換えるわけではありません。したがって誤りです。

イ:DNSサーバのメモリ上にワームが常駐し,DNS参照元に対して不正プログラムを送り込む。
→DNSキャッシュポイズニング攻撃はワームと無関係です。したがって誤りです。

ウ:社内の利用者が,インターネット上の特定のWebサーバを参照しようとすると,本来とは異なるWebサーバに誘導される。
→DNSキャッシュポイズニング攻撃によって引き起こされる症状です。したがって正解です。

エ:社内の利用者間で送信された電子メールの宛先アドレスが書き換えられ,正常な送受信ができなくなる。
→DNSキャッシュポイズニング攻撃では電子メールのあて先アドレスが書き換えられることはありません。したがって誤りです。

これより、「ウ」が正解です。

問4

DNSに対するカミンスキー攻撃(Kaminsky’s attack)への対策はどれか。(R.5春/問5)

ア:DNSキャッシュサーバと権威DNSサーバとの計2台の冗長構成とすることによって,過負荷によるサーバダウンのリスクを大幅に低減させる。
イ:SPF(Sender Policy Framework)を用いてMXレコードを認証することによって,電子メールの送信元ドメインが詐称されていないかどうかを確認する。
ウ:問合せ時の送信元ポート番号をランダム化することによって,DNSキャッシュサーバに偽の情報がキャッシュされる確率を大幅に低減させる。
エ:プレースホルダを用いたエスケープ処理を行うことによって,不正なSQL構文によるDNSリソースレコードの書換えを防ぐ。

(ログイン後回答すると、ここに前回の正誤情報が表示されます)

問4の正解を表示

問4の解説を表示

カミンスキー攻撃は、DNSキャッシュポイズニングの一種でキャッシュに存在しないサブドメインへのDNSクエリ発行を利用し攻撃を従来より効率的に成功させる手法です。

ア:DNSキャッシュサーバと権威DNSサーバとの計2台の冗長構成とすることによって,過負荷によるサーバダウンのリスクを大幅に低減させる。
DoS攻撃の説明です。したがって誤りです。

イ:SPF(Sender Policy Framework)を用いてMXレコードを認証することによって,電子メールの送信元ドメインが詐称されていないかどうかを確認する。
→スパムメール対策の説明です。したがって誤りです。

ウ:問合せ時の送信元ポート番号をランダム化することによって,DNSキャッシュサーバに偽の情報がキャッシュされる確率を大幅に低減させる。
→カミンスキー攻撃への対策です。したがって正解です。

エ:プレースホルダを用いたエスケープ処理を行うことによって,不正なSQL構文によるDNSリソースレコードの書換えを防ぐ。
SQLインジェクションへの対策です。したがって誤りです。

これより、「ウ」が正解です。

DNSサーバに対する攻撃・まとめ

本記事のまとめ!

  1. DNSサーバに対する攻撃の概要
  2. DNSサーバに対する攻撃の種類
  3. DNSサーバに対する攻撃の対策

DNSサーバへの攻撃手法と対策は午前試験・午後試験共に頻出です。

DNSのおさらいをしつつ、具体的な攻撃手法や対策方法を学んでおきましょう

キュー
キュー
DNSキャッシュポイズニングは特に派生形も多いから注意して覚えなあかんで!

次回はDoS攻撃について学習します。


本気で支援士を狙うなら・・・
支援士ゼミがおすすめです!
  • ベテラン講師による手厚いサポート
  • モチベーションを保てるセキュリティコラムが満載!
  • マンツーマン形式で個別相談もできる!

スポンサーリンク