Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ksubdomain — サブドメイン列挙ツール、非同期DNSパケット、pcapを使用して1秒間に1600,000のサブドメインをスキャン | Kitploit
ツール/GitHubGitHub/boy-hack/ksubdomain
偵察DNSおよびサブドメイン列挙情報収集ペネトレーションテストサブドメイン列挙DNSファジングDNS分析DNSファジング 第9位DNSおよびサブドメイン列挙 第14位サブドメイン列挙 第14位
1.2k162125ヶ月前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
GitHubboy-hack/ksubdomain

ksubdomain

サブドメイン列挙ツール、非同期DNSパケット、pcapを使用して1秒間に1600,000のサブドメインをスキャン

リポジトリを見る

KSubdomain: 超高速ステートレスサブドメインブルートフォースツール

Release Go Report Card License

English | 日本語

KSubdomainは、ステートレス技術に基づくサブドメインブルートフォースツールで、これまでにないスキャン速度と極めて低いメモリ使用量を実現します。 生のソケットを使用してネットワークアダプタを直接操作し、システムカーネルのプロトコルスタックをバイパスします。信頼性の高い状態テーブル再送メカニズムにより、結果の完全性を保証します。Windows、Linux、macOSに対応しており、大規模なDNSアセット探索のための最適なツールです。

🚀 コアアドバンテージ

  • 電光石火の速度: ステートレススキャンはネットワークカードを直接操作するため、massdnsの7倍、dnsxの10倍以上の速度を発揮します
  • 極めて低いリソース消費: オブジェクトプール + グローバルメモリプールにより、大量のドメイン名処理でもメモリ使用量が低く抑えられます
  • 動的タイムアウト適応: TCP RFC 6298 RTT スライディング平均(EWMA)に基づいてタイムアウトを動的に調整。手動パラメータ調整は不要です
  • マルチネットワークカード同時送信: --interface を繰り返し指定して複数のネットワークカードを使用可能。帯域幅を積み重ね、複数の出口IPを活用できます
  • ストリーミングSDK: EnumStream/VerifyStream コールバックAPIを提供し、結果をリアルタイムで処理できます
  • クロスプラットフォーム対応: Windows、Linux、macOSで完全に動作します

⚡ パフォーマンス比較

4コアCPU、5M帯域幅、10万語彙のテスト:

📦 インストール

プリコンパイル済みバイナリのダウンロード

Releases から、お使いのシステムに対応する最新バージョンをダウンロードしてください。

依存関係のインストール:

  • Windows: Npcap ドライバをインストール
  • Linux: 静的コンパイル済みのため、通常は操作不要。問題がある場合は libpcap-dev をインストール
  • macOS: システムに libpcap が含まれているため、インストール不要

ソースコードからのコンパイル

root@kitploit:~
git clone https://github.com/boy-hack/ksubdomain.git
cd ksubdomain
# ldflags でバージョン番号を注入することを推奨
go build -ldflags "-X github.com/boy-hack/ksubdomain/v2/pkg/core/conf.Version=v2.x.y" \
    -o ksubdomain ./cmd/ksubdomain

または go install を使用:

root@kitploit:~
go install github.com/boy-hack/ksubdomain/v2/cmd/ksubdomain@latest

注意: 実行には root / CAP_NET_RAW 権限が必要です(生ソケットキャプチャ)

📖 使用説明

root@kitploit:~
使い方:
  ksubdomain [グローバルオプション] <コマンド> [コマンドオプション]

コマンド:
  enum, e      列挙モード: メインドメインのサブドメインをブルートフォース
  verify, v    検証モード: ドメインリストが解決されるか確認
  test         ローカルネットワークカードの最大送信速度をテスト
  device       利用可能なネットワークカード情報を表示
  help, h      ヘルプを表示

グローバルオプション:
  --help, -h       ヘルプを表示
  --version, -v    バージョン情報を表示

検証モード (verify)

指定されたドメインリストに DNS 解決レコードがあるかどうかを確認します。

root@kitploit:~
オプション:
  --domain, -d          ドメインを指定(繰り返し可能)
  --filename, -f        ファイルからドメインリストを読み込む
  --stdin               標準入力から読み込む
  --bandwidth, -b       帯域幅制限(例: 5m、10m、100m)(デフォルト 3m)
  --resolvers, -r       DNSサーバーを指定(デフォルトは内蔵)
  --output, -o          出力ファイルパス
  --format, -f          出力形式: txt(デフォルト)、json、csv、jsonl
  --silent, -s          サイレントモード、ドメインのみ出力(バナーやログは表示しない)
  --only-domain, --od   ドメインのみ出力、IP/レコードは表示しない
  --retry               リトライ回数、-1 は無限リトライ(デフォルト 3)
  --timeout             単一クエリのタイムアウト秒数(デフォルト 6)
  --interface, -e       ネットワークカード名を指定(繰り返し可能、マルチネットワークカード同時)
  --wildcard-filter     ワイルドカードフィルター: none(デフォルト)、basic、advanced
  --predict             サブドメイン予測モードを有効化
  --quiet, -q           結果を画面に出力しない(ファイル書き込みのみ)
  --color, -c           カラー出力
root@kitploit:~
# 単一/複数ドメインの検証
./ksubdomain v -d www.example.com -d mail.example.com

# ファイルから読み込み、txt として保存
./ksubdomain v -f domains.txt -o output.txt

# パイプライン入力、帯域幅 10M、サイレントモードでダウンストリームツールに連携
cat domains.txt | ./ksubdomain v --stdin -b 10m -s --od | httpx -silent

# 高度なワイルドカードフィルター、JSONL 出力
./ksubdomain v -f domains.txt --wildcard-filter advanced --format jsonl -o output.jsonl

# マルチネットワークカード同時(帯域幅を積み重ねる)
./ksubdomain v -f domains.txt --interface eth0 --interface eth1

列挙モード (enum)

辞書と予測アルゴリズムに基づいて、指定されたドメインのサブドメインをブルートフォースします。

root@kitploit:~
オプション:
  --domain, -d          ターゲットメインドメイン(繰り返し可能)
  --domain-list, --ds   バルクメインドメインファイル
  --filename, -f        辞書ファイルパス(デフォルトは内蔵辞書)
  --use-ns-records      ドメインの NS レコードを読み込み、DNS リゾルバに追加
  (その他のオプションは verify モードと同じ)
root@kitploit:~
# 単一ドメインの列挙(内蔵辞書使用)
./ksubdomain e -d example.com

# 辞書ファイルを指定
./ksubdomain e -d example.com -f subdomains.txt -o result.txt

# 予測モード + 高度なワイルドカードフィルターを有効化
./ksubdomain e -d example.com --predict --wildcard-filter advanced

# 複数メインドメインを一括列挙
./ksubdomain e --domain-list roots.txt -b 10m --format jsonl -o result.jsonl

# パイプラインで httpx に連携
./ksubdomain e -d example.com --od -s | httpx -silent

テスト/デバイスコマンド

root@kitploit:~
# ネットワークカードの最大送信速度をテスト
./ksubdomain test

# 利用可能なネットワークカードを表示
./ksubdomain device

✨ 機能詳細

動的タイムアウト適応

--timeout を手動で設定する必要はありません。エンジンが実測 RTT(指数加重移動平均、EWMA α=0.125)に基づいてタイムアウトの上下限を動的に調整し、漏れを減らしつつ不必要な待ち時間を回避します。

マルチネットワークカード同時

--interface を繰り返し指定することで、複数のネットワークカードを使用して同時にパケットを送信できます。複数の goroutine が同じ domainChan を共有して競合消費することで、自然に負荷分散が実現されます:

root@kitploit:~
./ksubdomain e -d example.com --interface eth0 --interface eth1 -b 20m

予測モード

--predict を有効にすると、ツールは発見されたサブドメインに基づいて存在する可能性のある関連サブドメインを予測し、発見率を向上させます。

ワイルドカードフィルター

  • none: フィルターなし(デフォルト)
  • basic: 基本フィルター、明らかなワイルドカード IP を除去
  • advanced: 高度フィルター、複数の次元から総合的に判断

出力形式

🔗 ツール連携例

root@kitploit:~
# httpx と連携して生存 Web を検出
./ksubdomain e -d example.com -s --od | httpx -silent

# nuclei と連携して脆弱性スキャン
./ksubdomain e -d example.com -s --od | nuclei -l /dev/stdin

# JSONL ストリーム処理、A レコードのみ取得
./ksubdomain e -d example.com --format jsonl | jq -r 'select(.type=="A") | .domain'

# 複数ドメイン一括 + 重複除去
./ksubdomain e --domain-list roots.txt -s --od | sort -u > all_subs.txt

🌐 プラットフォーム注意事項

macOS:

root@kitploit:~
# BPF バッファが小さいため、帯域幅を制限することを推奨
sudo ./ksubdomain e -d example.com -b 5m

WSL/WSL2:

root@kitploit:~
# 通常は eth0 を使用
./ksubdomain e -d example.com --interface eth0

Windows:

root@kitploit:~
# まず Npcap をインストールし、管理者権限で実行
.\ksubdomain.exe enum -d example.com

🧩 Go SDK

root@kitploit:~
go get github.com/boy-hack/ksubdomain/v2/sdk
root@kitploit:~
import "github.com/boy-hack/ksubdomain/v2/sdk"

scanner := sdk.NewScanner(&sdk.Config{
    Bandwidth:      "5m",
    Retry:          3,
    WildcardFilter: "advanced",
})

// ブロッキング方式、すべての結果を収集
results, err := scanner.Enum("example.com")

// ストリームコールバック、リアルタイム処理
err = scanner.EnumStream(ctx, "example.com", func(r sdk.Result) {
    fmt.Printf("%s => %v\n", r.Domain, r.Records)
})

詳細は SDK ドキュメント および API ドキュメント を参照してください。

🧪 テスト

root@kitploit:~
# ユニットテスト(root 不要)
go test ./pkg/...

# リグレッションテスト(root + ネットワークが必要)
go build -o ksubdomain ./cmd/ksubdomain
sudo go test ./test/regression/... -tags regression -v -timeout 120s

💡 参考

  • 元の KSubdomain プロジェクト: knownsec/ksubdomain
  • ステートレススキャンの原理: paper.seebug.org/1052
  • KSubdomain の紹介: paper.seebug.org/1325

📜 License

MIT License — 詳細は LICENSE を参照してください。

ツールをダウンロード
ツール方式所要時間成功数
KSubdomainpcap ネットワークカード送信~30秒1397
massdnspcap/socket~3分29秒1396
dnsxsocket~5分26秒1396
形式説明適用シーン
txtドメイン => レコード、リアルタイム出力デフォルト、手動確認
json完全な JSON、完了後に書き込みプログラム解析
csvCSV テーブル、完了後に書き込みデータ分析
jsonl1行1JSON、リアルタイム出力ストリーム処理、パイプライン連携