サブドメイン乗っ取り診断

CTログで見つけたサブドメインのCNAMEを調べ、乗っ取りに悪用されうる「宙に浮いたDNSレコード」を検出します。

このツールについて

「サブドメイン乗っ取り診断」は、ドメインのサブドメインのうち、すでに存在しないクラウドサービスや未登録ドメインを指したままのCNAMEレコード(ダングリングDNS)を検出するツールです。そのようなサブドメインは、第三者が同名のリソースを作成するだけで乗っ取られ、フィッシングやCookie窃取に悪用される恐れがあります。登録不要・無料。

サブドメインは証明書透明性(CT)ログ(crt.sh / certspotter)から収集し、公開DNSの応答のみを調べます。対象サイトのWebページへはアクセスせず、実際の乗っ取りも行いません。

判定の種類

判定意味
重大CNAME先が存在せず、Azure・AWS Elastic Beanstalk など「名前を再取得できるサービス」を指している、またはCNAME先ドメイン自体が未登録の可能性がある状態。乗っ取られる危険が高い設定です。
注意CNAME先が存在しません。放置されたレコードの可能性が高く、削除を推奨します。
要確認GitHub Pages・S3・Heroku など、リソース削除後もDNSが引けるサービスを指しています。DNSだけでは乗っ取り可否が分からないため、ブラウザで開いて「Not Found」等のエラーページが出ないか確認してください。

このツールの限界

• 対象は、CTログに記録されたサブドメインに限られます(HTTPS未使用・内部限定のサブドメインは含まれません)。
• 最大100件のサブドメインを診断します。それ以上ある場合は一部のみが対象です。
• DNSだけで判定するため、「要確認」は乗っ取り可能と断定するものではありません。
• 「重大」「注意」も、あくまで公開DNS上の状態から推定した結果です。

見つかった場合の対処

  1. そのサブドメインを今後使わないなら、DNSのCNAMEレコードを削除します。
  2. サービス側のリソースを廃止する際は、先にDNSレコードを削除してからリソースを削除します(順序が逆だと、削除後に宙に浮いたレコードが残ります)。
  3. 引き続き使う場合は、サービス側でリソースを作り直して名前を再取得します。

よくある質問

サブドメイン乗っ取りとは何ですか?

サブドメインのCNAMEが、すでに削除されたクラウドサービスのリソースを指したまま残っていると、第三者がそのサービスで同じ名前のリソースを作成し、あなたのサブドメインの内容を自由に差し替えられる問題です。正規ドメインの信頼を使ったフィッシングや、親ドメインのCookie窃取につながります。

「要確認」が多数出ましたが、すべて危険ですか?

いいえ。GitHub Pages や CloudFront などを正しく利用しているだけの場合がほとんどです。リソースがすでに削除されていないかを、ブラウザで開いて確認する目安として表示しています。

他人のドメインを診断しても問題ありませんか?

このツールは公開DNSとCTログという公開情報のみを参照します。ただし、結果の扱いにはご注意ください。見つかった問題を悪用する行為は禁止されています。

診断に時間がかかります。

CTログの取得に加え、サブドメインごとにDNSを問い合わせるため、初回は10〜30秒ほどかかる場合があります。同じドメインの結果は1時間キャッシュされます。

関連リンク