hacktricks/pentesting-web/domain-subdomain-takeover.md

12 KiB
Raw Blame History

ドメイン/サブドメインのテイクオーバー

{% hint style="success" %} AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する: HackTricks Training GCP Red Team Expert (GRTE)

HackTricksをサポートする
{% endhint %}


Trickestを使用して、世界で最も高度なコミュニティツールによって駆動されるワークフローを簡単に構築し、自動化します。
今すぐアクセスを取得:

{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=domain-subdomain-takeover" %}

ドメインテイクオーバー

もし、スコープ内のサービスによって使用されているドメインdomain.tldを発見し、会社がその所有権を失っている場合、登録を試みることができます(十分に安価であれば)し、会社に知らせることができます。このドメインがセッションクッキーのような機密情報GETパラメータやRefererヘッダーで受信している場合、これは確実に脆弱性です。

サブドメインテイクオーバー

会社のサブドメインが未登録の名前のサードパーティサービスを指している場合、このサードパーティサービスアカウントを作成し、使用中の名前を登録できれば、サブドメインのテイクオーバーを実行できます。

可能なテイクオーバーを確認するための辞書を持ついくつかのツールがあります:

BBOTを使用したハイジャック可能なサブドメインのスキャン:

サブドメインテイクオーバーのチェックは、BBOTのデフォルトのサブドメイン列挙に含まれています。シグネチャは直接https://github.com/EdOverflow/can-i-take-over-xyzから取得されます。

bbot -t evilcorp.com -f subdomain-enum

サブドメイン乗っ取りの生成 via DNS ワイルドカード

DNS ワイルドカードがドメインで使用されると、そのドメインの異なるアドレスが明示的に設定されていない任意のサブドメインは、同じ情報に解決されます。これには A IP アドレスや CNAME などが含まれます。

例えば、*.testing.com1.1.1.1 にワイルドカードされている場合、not-existent.testing.com1.1.1.1 を指します。

しかし、IP アドレスを指すのではなく、システム管理者が CNAME を介して第三者サービス にポイントした場合、例えば github サブドメイン (sohomdatta1.github.io) のように、攻撃者は 自分自身の第三者ページ(この場合は GitHubを作成し、something.testing.com がそこを指していると言うことができます。なぜなら、CNAME ワイルドカード により、攻撃者は 被害者のドメインに対して任意のサブドメインを生成し、自分のページにポイントさせることができるからです

この脆弱性の例は、CTF の書き込みで見つけることができます: https://ctf.zeyu2001.com/2022/nitectf-2022/undocumented-js-api

サブドメイン乗っ取りの悪用

サブドメイン乗っ取りは、本質的に特定のドメインに対する DNS スプーフィングであり、攻撃者がドメインの A レコードを設定し、ブラウザが攻撃者のサーバーからのコンテンツを表示することを可能にします。このブラウザの透明性により、ドメインはフィッシングに対して脆弱になります。攻撃者はこの目的のために typosquattingDoppelganger domains を使用することがあります。特に脆弱なのは、フィッシングメールの URL が正当であるように見えるドメインであり、ユーザーを欺き、ドメインの固有の信頼性によりスパムフィルターを回避します。

詳細についてはこの 投稿を確認してください

SSL 証明書

攻撃者が Let's Encrypt のようなサービスを介して生成した SSL 証明書は、これらの偽ドメインの信頼性を高め、フィッシング攻撃をより説得力のあるものにします。

クッキーのセキュリティとブラウザの透明性

ブラウザの透明性は、同一オリジンポリシー のようなポリシーによって管理されるクッキーのセキュリティにも及びます。クッキーは、セッションを管理し、ログイントークンを保存するために使用されることが多く、サブドメイン乗っ取りを通じて悪用される可能性があります。攻撃者は、妥協されたサブドメインにユーザーを誘導することで セッションクッキーを収集 し、ユーザーデータとプライバシーを危険にさらすことができます。

メールとサブドメイン乗っ取り

サブドメイン乗っ取りのもう一つの側面は、メールサービスに関わります。攻撃者は MX レコード を操作して、正当なサブドメインからメールを受信または送信し、フィッシング攻撃の効果を高めることができます。

高次のリスク

さらなるリスクには NS レコードの乗っ取り が含まれます。攻撃者がドメインの NS レコードの一つを制御すると、彼らはトラフィックの一部を自分の制御下にあるサーバーに向けることができます。このリスクは、攻撃者が DNS レコードの高い TTL生存時間 を設定することで増幅され、攻撃の持続時間が延長されます。

CNAME レコードの脆弱性

攻撃者は、もはや使用されていないか、廃止された外部サービスを指す未請求の CNAME レコードを悪用する可能性があります。これにより、信頼されたドメインの下にページを作成し、フィッシングやマルウェアの配布をさらに促進することができます。

緩和戦略

緩和戦略には以下が含まれます:

  1. 脆弱な DNS レコードの削除 - サブドメインがもはや必要ない場合に効果的です。
  2. ドメイン名の請求 - 該当するクラウドプロバイダーでリソースを登録するか、期限切れのドメインを再購入します。
  3. 脆弱性の定期的な監視 - aquatone のようなツールは、脆弱なドメインを特定するのに役立ちます。組織はまた、DNS レコードの作成がリソース作成の最終ステップであり、リソース破棄の最初のステップであることを確認するために、インフラ管理プロセスを見直すべきです。

クラウドプロバイダーにとって、ドメイン所有権の確認はサブドメイン乗っ取りを防ぐために重要です。 GitLab のように、この問題を認識し、ドメイン確認メカニズムを実装しているプロバイダーもあります。

参考文献


Trickest を使用して、世界で最も 高度な コミュニティツールによって駆動される ワークフローを簡単に構築し、自動化 します。
今すぐアクセスを取得:

{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=domain-subdomain-takeover" %}

{% hint style="success" %} AWS ハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCP ハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)

HackTricks をサポートする
{% endhint %}