Skip to the content.

まず結論

オープンリゾルバとは、不特定多数の相手からDNSの再帰問い合わせを受け付けてしまうDNSキャッシュサーバのことです。

SG試験では、オープンリゾルバを次のように押さえると判断しやすくなります。

用語 役割・意味
キャッシュDNSサーバ 利用者の代わりにDNSを問い合わせるサーバ
再帰問い合わせ 利用者の代わりに最終的な答えまで調べる問い合わせ
オープンリゾルバ 不特定多数からの再帰問い合わせを受け付ける危険な状態
DNSリフレクター攻撃 DNSサーバを踏み台にして大量の応答を被害者へ送る攻撃

ポイントは、オープンリゾルバ自体が攻撃手法というより、攻撃に悪用されやすいDNSサーバの設定状態だということです。


直感的な説明

DNSキャッシュサーバは、本来、社内の利用者や契約している利用者のために、DNSの名前解決を代行するサーバです。

たとえるなら、社内向けの「住所案内係」です。

しかし、この住所案内係が、外部の誰からの依頼でも受け付けてしまうとどうなるでしょうか。

攻撃者が大量の問い合わせを送り、その応答を別の相手に向けさせることで、DNSサーバが攻撃の踏み台になってしまうことがあります。

このように、本来は限られた利用者だけに提供すべき再帰問い合わせを、インターネット上の誰にでも開放してしまっている状態がオープンリゾルバです。


定義・仕組み

再帰問い合わせとは

再帰問い合わせとは、DNSキャッシュサーバが利用者の代わりに、最終的な答えが得られるまでDNS問い合わせを行う仕組みです。

たとえば、利用者がWebサイトにアクセスするとき、端末はキャッシュDNSサーバに問い合わせます。

キャッシュDNSサーバは、必要に応じてルートDNSサーバ、TLD DNSサーバ、権威DNSサーバなどへ問い合わせ、最終的なIPアドレスを利用者へ返します。

利用者
  ↓ 再帰問い合わせ
キャッシュDNSサーバ
  ↓ 必要に応じて問い合わせ
各DNSサーバ
  ↓ 応答
キャッシュDNSサーバ
  ↓ 最終結果を返す
利用者

つまり、再帰問い合わせは、利用者にとって便利な仕組みです。

ただし、誰からでも受け付けてよいものではありません。

オープンリゾルバとは

オープンリゾルバとは、DNSキャッシュサーバが、不特定多数からの再帰問い合わせを受け付ける状態です。

本来、再帰問い合わせは、次のような利用者に限定するのが基本です。

  • 社内ネットワークの利用者
  • 契約している利用者
  • 許可されたIPアドレス範囲の端末

ところが、設定ミスなどにより、インターネット上の誰からでも再帰問い合わせを受け付けてしまうと、オープンリゾルバになります。


どんな場面で問題になる?

DNSリフレクター攻撃の踏み台になる

オープンリゾルバは、DNSリフレクター攻撃に悪用されることがあります。

DNSリフレクター攻撃では、攻撃者が送信元IPアドレスを被害者のIPアドレスに偽装して、DNSサーバへ問い合わせを送ります。

DNSサーバは、問い合わせの送信元を被害者だと思い、DNS応答を被害者へ返します。

これが大量に行われると、被害者に大量のDNS応答が届き、サービス妨害につながります。

攻撃者
  ↓ 送信元IPを被害者に偽装して問い合わせ
オープンリゾルバ
  ↓ DNS応答が被害者へ向かう
被害者

このとき、オープンリゾルバは攻撃の「反射板」のように使われます。

DNSアンプ攻撃につながる

DNS問い合わせよりもDNS応答の方が大きくなる場合、少ない通信量で大きな応答を発生させることができます。

このように、通信量を増幅して攻撃するものをDNSアンプ攻撃と呼びます。

SG試験では、細かい通信量の計算よりも、次の流れを押さえることが重要です。

  1. 攻撃者が送信元IPアドレスを偽装する
  2. オープンリゾルバへDNS問い合わせを送る
  3. DNS応答が被害者へ返る
  4. 大量の応答により被害者のネットワークやサーバに負荷がかかる

対策

オープンリゾルバ対策の基本は、再帰問い合わせを受け付ける範囲を制限することです。

再帰問い合わせを許可する範囲を限定する

DNSキャッシュサーバでは、再帰問い合わせを受け付ける相手を限定します。

たとえば、次のように設定します。

対策 内容
許可するIPアドレス範囲を限定する 社内ネットワークや契約者だけに再帰問い合わせを許可する
外部からの再帰問い合わせを拒否する インターネット上の不特定多数からの利用を防ぐ
権威DNSサーバとキャッシュDNSサーバの役割を分ける 公開用DNSと内部向けDNSの役割を混同しない

権威DNSサーバとキャッシュDNSサーバを混同しない

公開される権威DNSサーバは、外部から問い合わせを受けます。

一方、キャッシュDNSサーバの再帰問い合わせは、原則として許可された利用者だけに限定します。

ここを混同すると、外部に公開すべきでない再帰問い合わせまで開放してしまう可能性があります。


よくある誤解・混同

誤解1:オープンリゾルバはDNSSECの機能である

これは誤りです。

DNSSECは、DNS応答の正当性と完全性をデジタル署名で検証する仕組みです。

一方、オープンリゾルバは、DNSキャッシュサーバが不特定多数からの再帰問い合わせを受け付けてしまう状態です。

用語 見るポイント
DNSSEC DNS応答の署名検証
オープンリゾルバ 再帰問い合わせの受付範囲

誤解2:オープンリゾルバは可用性を高めるための仕組みである

これも誤りです。

DNSの可用性を高めるには、DNSサーバの冗長化やセカンダリDNSサーバの利用などを考えます。

オープンリゾルバは、可用性向上策ではなく、攻撃に悪用される危険な設定状態です。

誤解3:再帰問い合わせは常に危険である

再帰問い合わせそのものが悪いわけではありません。

利用者の代わりに名前解決を行うために必要な仕組みです。

問題は、再帰問い合わせを不特定多数に開放してしまうことです。

誤解4:オープンリゾルバはDNSキャッシュポイズニングそのものである

これも別の話です。

DNSキャッシュポイズニングは、DNSキャッシュに偽の情報を覚え込ませる攻撃です。

オープンリゾルバは、不特定多数から再帰問い合わせを受け付ける状態です。

どちらもDNSに関係しますが、試験では次のように切り分けましょう。

用語 何が問題か
DNSキャッシュポイズニング 偽のDNS情報をキャッシュに覚え込ませる
オープンリゾルバ 不特定多数からの再帰問い合わせを受け付ける
DNSリフレクター攻撃 DNS応答を被害者に反射させて負荷をかける

SG試験での判断ポイント

オープンリゾルバの問題では、次のキーワードに注目すると判断しやすくなります。

正解に近いキーワード

  • DNSキャッシュサーバ
  • 再帰問い合わせ
  • 不特定多数
  • 外部からの問い合わせ
  • 踏み台
  • DNSリフレクター攻撃
  • DDoS攻撃
  • 送信元IPアドレスの偽装

特に、次のような説明はオープンリゾルバの要点に近いです。

不特定多数からの再帰問い合わせを受け付けるDNSキャッシュサーバは、DNSリフレクター攻撃の踏み台として悪用されるおそれがある。

誤りを切るキーワード

表現 切り分け
DNS応答にデジタル署名を付ける DNSSECの話
DNSサーバを二重化する 可用性向上の話
リソースレコードの正当性を検証する DNSSECの話
偽のDNS情報をキャッシュに注入する DNSキャッシュポイズニングの話
再帰問い合わせの受付範囲を制限する オープンリゾルバ対策として正しい

ミニ問題

オープンリゾルバに関する説明として、最も適切なものはどれか。

DNS応答にデジタル署名を付け、リソースレコードの正当性と完全性を検証する仕組みである。

不特定多数からの再帰問い合わせを受け付けるDNSキャッシュサーバであり、DNSリフレクター攻撃の踏み台として悪用されるおそれがある。

プライマリDNSサーバとセカンダリDNSサーバを二重化し、名前解決の可用性を高める仕組みである。

DNSキャッシュに偽の情報を覚え込ませ、利用者を偽サイトへ誘導する攻撃である。

回答と解説 正解は、です。 オープンリゾルバは、不特定多数からの再帰問い合わせを受け付けてしまうDNSキャッシュサーバの状態です。 攻撃者に悪用されると、DNSリフレクター攻撃やDNSアンプ攻撃の踏み台になるおそれがあります。 - ア:DNSSECの説明です。 - ウ:DNSサーバの冗長化、可用性向上の説明です。 - エ:DNSキャッシュポイズニングの説明です。 SG試験では、オープンリゾルバを「再帰問い合わせの受付範囲が広すぎる危険な状態」と押さえましょう。

まとめ(試験直前用)

オープンリゾルバは、不特定多数からの再帰問い合わせを受け付けてしまうDNSキャッシュサーバです。

試験直前には、次の3点を押さえておきましょう。

  • 再帰問い合わせは、利用者の代わりにDNSの最終結果まで調べる仕組み
  • オープンリゾルバは、不特定多数に再帰問い合わせを開放している危険な状態
  • DNSリフレクター攻撃やDNSアンプ攻撃の踏み台として悪用されるおそれがある

SG試験では、オープンリゾルバをDNSSECやDNSキャッシュポイズニングと混同しないことが大切です。

オープンリゾルバ=再帰問い合わせを誰にでも開放してしまう危険なDNSキャッシュサーバと覚えておきましょう。

🔗 関連記事


🏠 情報セキュリティマネジメントトップに戻る