DNSゾーン転送の脆弱性

14 Jul 2020

DNSゾーン転送とは何ですか?

DNS ゾーン転送は、DNS クエリー タイプ AXFR とも呼ばれ、DNS サーバーがそのデータベースの一部のコピーを別の DNS サーバーに渡す処理です。

ゾーン転送はTCP (Transmission Control Protocol)を使用し、クライアント-サーバトランザクションの形態をとる。

ゾーン転送を要求するクライアントは、マスターサーバまたはプライマリサーバからデータを要求する、スレーブサーバまたはセカンダリサーバかもしれない。

DNSのゾーン転送は通常いつ行われますか?

ゾーン転送は通常、新しいDNSサーバーをセカンダリDNSサーバーとして立ち上げたときに行われます。

そのゾーンに対してすでにあるレコードを複製するために、すべてのゾーン情報の完全転送が実施されます。 これは時間とリソースを消費するプロセスです。 そこで、インクリメンタルDNS転送が開発されました。

インクリメンタル転送では、サーバーはゾーン内で変更されたリソースレコードのみを取得し、プライマリDNSサーバーとの同期を維持します。

インクリメンタル転送を使用すると、SOAレコードは変更が行われたかどうか比較されます。

プライマリネームサーバ上のゾーンファイルに変更があり、DNS通知リストがある場合、プライマリネームサーバは直ちにセカンダリネームサーバにゾーンファイルが変更されたことを通知します。

通知リストは、ゾーン転送のためにプライマリネームサーバ上のゾーン情報にアクセスすることを許可されるセカンダリネームサーバを指定するIPアドレスのリストである。

以下は、dig:

コマンド:

 dig axfr @nsztm1.digi.ninja zonetransfer.me 

ここで nsztm1.digi.ninja はネームサーバー、zonetransfer.DNS は DNSゾーン転送を行う方法について示した例です。

これらのDNSレコードについて、以下でさらに説明します。

SOA record

DNSゾーンに格納される情報は、SOA (Start Of Authority) レコードから開始されます。

このレコードには、次のような情報が含まれています。

  1. サーバー名

  2. ゾーン管理者名

  3. SOAレコードの現在のバージョン

  4. 更新のチェック前に二次ネームサーバーが待つべき秒数

  5. 失敗したゾーン転送を再試行するまでの待ち時間

  6. リフレッシュまたは期限切れになるまでにセカンダリネームサーバがデータを使用できる最大秒数

  7. デフォルトの時間-秒数リソースレコードのTTL(to-live)ファイル。

ここで、

  1. zonetransfer.me はドメイン名

  2. nsztm1.digi.ninja.com はドメイン名です。はプライマリ・ネームサーバ

  3. robin.digi.ninja. はドメイン担当者

  4. メールアドレス(最初の.を入れ替え)

  5. はドメイン名

  6. はドメイン担当者。 を@に置き換える)

  7. 2014101601- ドメインの現在のSOAシリアル番号

  8. 172800- 変更要求の間にセカンダリネームサーバーを待つべき秒数

  9. 900- 適切な更新に失敗する場合にプライマリネームサーバーを待つべき秒数

  10. 1209600- セカンダリネームサーバーが権威ある情報を持っていると主張できる秒数

  11. 3600- 最小 TTL

MX レコード

メール eXchange レコード (MX レコード ) はドメイン名の代わりにメールメッセージを受け入れる責任があるメールサーバーを指定します。 ここでは、被害者は Google のメール サービスを使用しています。 これは、ソーシャル エンジニアリング攻撃を行う際に役立つ情報です。

TXT record

Text (TXT) record is a type of resource record in the Domain Name System (DNS) used to provide the ability to associate arbitrary text with a host or names, such as human readable information, network, data center, or other accounting information.

TXTレコードには重要情報が含まれることがあります。 このTXTレコードから、電子メールIDと電話番号を取得しました。

SRV record

SRV(サービス)レコードは、SIPサーバーの場所を示し、プロトコル、ホスト、およびポートで実行しているサービスを示すことによって、サービスを識別します。

これは、セッション開始プロトコル(SIP)のTCPポート5060でリッスンしている_sip._tcp.zonetransfer.meというサーバーを指し、 www.zonetransfer.me はサービスを提供するホストです。 ここで与えられた優先度は0、重みは0です。

A record

A recordは、ドメイン名を対応するIPアドレスにマッピングします。 Aレコードから、3つのデータセンターIPと3つのオフィスIPが得られ、合計6つのターゲットが得られます。

CNAME

CanonicalName(CNAME)レコードは、あるドメイン名から別のドメイン名へのエイリアスをマップするために使用されます。 このことから、テストおよびステージング サーバーを見ることができます。

Impact of DNS Zone Transfer Vulnerability

DNS ゾーン転送は、認証を提供しません。 したがって、任意のクライアントまたはクライアントを装った誰かが、DNS サーバーにゾーン全体のコピーを要求できます。

これは、何らかの保護が導入されない限り、誰でも特定のドメインのすべてのホストのリストを取得することができ、多くの潜在的な攻撃ベクトルを与えるということを意味します。 BIND DNS サーバーでこれを修正する方法の例を次に示します。

Navigate to /etc/named.BIND.DNS サーバーに移動します。conf に移動し、以下を追加します。

 ACL trusted-servers { 173.88.21.10; // ns1 184.144.221.82; // ns2 }; zone securitytrails.com { type master; file "zones/zonetransfer.me"; allow-transfer { trusted-servers; }; }; 
  • Use Transaction SIGnatures (TSIG) for Zone transfers
Check your website security today and

identify vulnerabilities before hackers exploit them.BIND DNS サーバーの脆弱性を特定しましょう。

始める

コメントを残す

メールアドレスが公開されることはありません。