Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
subjack — クラウドプロバイダ全体でCNAME、NS、AXFR、SPF、MX、SRV、および古いAレコードの脆弱性を検出する同時DNSテイクオーバースキャナー。マルチレベルのチェーン分析機能付き。 | Kitploit
ツール/GitHubGitHub/haccer/subjack
脆弱性スキャナーウェブセキュリティペネトレーションテストサブドメイン列挙DNS分析
GitHubhaccer/subjack

subjack

クラウドプロバイダ全体でCNAME、NS、AXFR、SPF、MX、SRV、および古いAレコードの脆弱性を検出する同時DNSテイクオーバースキャナー。マルチレベルのチェーン分析機能付き。

リポジトリを見る
2.1k349368日前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

subjack

CI Go Reference GitHub license

subjack logo
DNSテイクオーバースキャナー

SubjackはGoで書かれたDNSテイクオーバースキャナーで、ドメインのリストを並行してスキャンし、ハイジャック可能なものを特定するために設計されています。Goの速度と効率性により、このツールは大量テストにおいて際立っています。誤検出を排除するため、常に結果を手動で再確認してください。

Subjackが検出するもの:

  • CNAMEテイクオーバー — 未取得のサードパーティサービスを指す宙に浮いたCNAME
  • NS委任テイクオーバー — 期限切れのネームサーバードメインおよび宙に浮いたクラウドDNSゾーン (Route 53、Google Cloud DNS、Azure DNS、DigitalOcean、Vultr、Linode)
  • 古いAレコード — クラウドプロバイダー (AWS、GCP、Azure、DigitalOcean、Linode、Vultr、Oracle) 上の死んだIPを指すAレコード
  • ゾーン転送 (AXFR) — ゾーンファイル全体を漏洩させる設定ミスのネームサーバー、NSホスト名のブルートフォース付き
  • SPF includeテイクオーバー — メールスプーフィングを可能にするSPF include: ディレクティブ内の期限切れドメイン
  • MXレコードテイクオーバー — メール傍受を可能にする期限切れのメールサーバードメイン
  • CNAMEチェーンテイクオーバー — 中間ターゲットが取得可能な多段CNAMEチェーン
  • SRVレコードテイクオーバー — 期限切れ/登録可能なドメインを指すSRVレコード
  • NXDOMAIN登録 — 存在せず登録可能なドメイン (available 経由のRDAPで確認済み)

インストール

Go が必要です

go install github.com/haccer/subjack@latest

Linux、macOS、Windows用のビルド済みバイナリも リリースページ で入手できます — コンパイルが遅い小さなVPSに便利です。

使用方法

subjack -w subdomains.txt -t 100 -timeout 30 -o results.txt -ssl
フラグ説明デフォルト
-dチェックする単一ドメイン
-wサブドメインのワードリストへのパス
-t同時スレッド数10
-timeout接続タイムアウトまでの待機秒数10
-o結果をファイルに出力 (JSON出力には .json 拡張子を使用)
-sslHTTPS接続を強制 (精度が向上する場合があります)false
-a特定されたCNAMEを持つURLだけでなく、すべてのURLにリクエストを送信 (推奨)false
-mドメインが登録可能でなくても、死んだCNAMEレコードにフラグを立てるfalse
-rDNSリゾルバーのリストへのパス (1行につき1つのIPまたは host:port、失敗時は 8.8.8.8 にフォールバック)
-nsNSテイクオーバーをチェック (期限切れNSドメイン + 宙に浮いたクラウドDNS委任)false
-ar死んだIPを指す古いAレコードをチェック (ICMPにはrootが必要な場合があります)false
-axfrゾーン転送 (AXFR) をチェック (NSブルートフォースを含む)false
-mailSPF includeおよびMXレコードテイクオーバーをチェックfalse
-srvSRVレコードテイクオーバーをチェック (ドメインあたり約28のDNSクエリを追加)false
-vリクエストごとにより多くの情報を表示false

Stdinサポート

Subjackはstdinからドメインを読み取ることができ、他のツールからの出力を簡単にパイプできます:

subfinder -d example.com | subjack -ssl -o results.json
cat domains.txt | subjack -t 20 -o results.txt

ネームサーバーテイクオーバー

-ns フラグを使用すると、subjackは2種類のネームサーバーテイクオーバーチェックを実行します:

期限切れNSドメイン: ドメインのネームサーバーのいずれかが期限切れで購入可能かどうかをチェックします。期限切れのネームサーバーを登録した攻撃者は、そのドメインのすべてのDNSを完全に制御できます — 任意のレコードを任意の場所にポイントし、メールを傍受し、証明書を発行するなどが可能です。

宙に浮いたNS委任: ドメインのNSレコードがクラウドDNSプロバイダーを指しているが、ホストゾーンが削除されている場合を検出します。Subjackは各ネームサーバーに直接SOAレコードを問い合わせます — すべてが SERVFAIL または REFUSED を返す場合、ゾーンは消滅しており、取得可能な可能性があります。サポートされているプロバイダー:

  • AWS Route 53 (ns-*.awsdns-*)
  • Google Cloud DNS (ns-cloud-*.googledomains.com)
  • Azure DNS (ns*-*.azure-dns.*)
  • DigitalOcean DNS (ns*.digitalocean.com)
  • Vultr DNS (ns*.vultr.com)
  • Linode DNS (ns*.linode.com)
subjack -w subdomains.txt -ns -o results.json

古いAレコードの検出

-ar フラグを使用すると、subjackはAレコードを解決し、IPアドレスが実際に生きているかどうかをチェックします。企業がクラウドサーバーを解約したがDNS Aレコードを削除し忘れた場合、IPはプロバイダーのプールに返却されます。攻撃者はそのプロバイダー上で新しいインスタンスを起動し、同じIPを取得するまで試みることで、サブドメインの制御を得ることができます。

Subjackは可能な場合にクラウドプロバイダー (AWS、GCP、Azure、DigitalOcean、Linode、Vultr、Oracle) を特定し、適切なプラットフォームをターゲットにしやすくします。検出にはICMP ping (rootが必要) とポート80/443でのTCPフォールバックを使用します。

sudo subjack -w subdomains.txt -ar -o results.json

結果は STALE A RECORD としてフラグが立てられ、手動で検証する必要があります — 応答しないIPが常に再利用可能であるとは限りません。

ゾーン転送の検出

-axfr フラグを使用すると、subjackはDNSゾーン転送 (AXFR) を試みます。これはドメイン全体のDNSレコードを露出させる可能性があります。Subjackはドメインの公式ネームサーバーをテストするだけでなく、一般的なネームサーバーホスト名 (ns1、dns-0、ns-backup など) もブルートフォースします。これは、隠された、または忘れられたネームサーバーが、プライマリのものがロックダウンされた後でも保護されていないままであることが多いためです。

subjack -d example.com -axfr -o results.json
subjack -w domains.txt -axfr -o results.json

結果は ZONE TRANSFER としてフラグが立てられ、脆弱なネームサーバーと露出したレコード数が示されます。

メールテイクオーバーの検出

-mail フラグを使用すると、subjackは2つのメールベースのテイクオーバーベクターをチェックします:

SPF includeテイクオーバー: SPF TXTレコードを解析し、include: ドメインが期限切れで登録可能かどうかをチェックします。インクルードされたドメインを登録した攻撃者は、SPFとDMARCをバイパスして、ターゲットとして完全に認証されたメールを送信できます。

MXレコードテイクオーバー: MXレコードのターゲットが期限切れで登録可能かどうかをチェックします。メールサーバーを制御する攻撃者は、すべての受信メールを傍受できます — パスワードリセット、2FAコードなど。

subjack -w domains.txt -mail -o results.json

CNAMEチェーンとSRVの検出

CNAMEチェーンテイクオーバー はすべてのスキャンで自動的に実行されます: 多段CNAMEチェーン (最大10段) を追跡し、中間ターゲットが取得可能かどうかをチェックします。標準のCNAME検出は最初のホップのみをチェックします — チェーンはより深いテイクオーバーの機会を捉えます。

SRVレコードテイクオーバー は -srv フラグでオプトインです。一般的なSRVロケーション (SIP、XMPP、LDAP、Kerberos、IMAP、CalDAVなど) をプローブすると、ドメインあたり約28のDNSクエリが追加されるためです:

subjack -w domains.txt -srv -o results.json

実用的な使用

scanio.sh を使用できます。これはRapid7のProject Sonarの結果を使用して脆弱なサブドメインを大量に特定するための一種のPoCスクリプトです。このスクリプトはダンプを解析およびgrepして目的のCNAMEレコードを探し、subjackで悪意のあるサブドメインテイクオーバーに対して脆弱かどうかをチェックするための大量のサブドメインリストを作成します。責任を持って使用してください。

ワードリスト形式

ワードリストにはサブドメインのリストを1行に1つずつ含める必要があります:

assets.xen.world
assets.github.com
b.xen.world
big.example.com
cdn.xen.world
dev.xen.world
dev2.twitter.com

テスト

テストスイートはヘルメティックです — ローカルのDNSおよびHTTPフィクスチャに対して実行され、ネットワークを必要としません:

go test -race ./...

参考文献

DNSテイクオーバーに関する追加情報:

  • Can I take over XYZ?
  • Hostile Subdomain Takeover using Heroku/GitHub/Desk + More
  • Can I take over DNS?

ライセンス

subjackは MIT License の下でリリースされています。

ツールをダウンロード