Subdomain Finder MCP について
Subdomain Finder MCPは、セキュリティ調査担当者やバグバウンティチーム向けに、公開CTログからホスト名を列挙し、DNS状態を確認するMCPサーバーです。証明書履歴、ホスト解決、攻撃対象領域の分類を提供し、対象サーバーへのプローブは行いません。
主な機能
- 01certspotterとcrt.shからホスト名を列挙
- 02A、AAAA、CNAMEレコードを確認
- 03稼働ホストとダングリングCNAMEを判定
- 04証明書履歴と発行者を確認
- 05攻撃対象領域の役割別に分類
活用シーン
- 01証明書に現れるドメインのサブドメインを把握
- 02ホストのDNS解決とダングリングCNAMEを確認
- 03特定ホストの証明書発行履歴を調査
- 04ステージング、管理、APIのホスト名を整理
MCP 対応
MCPクライアント向けに、`find_subdomains`、`resolve_subdomains`、`get_certificate_history`、`summarize_attack_surface` ツールを提供します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://subdomain-finder-mcp.lipmichal.workers.dev/mcpclaude mcp add --transport http theluckystrike-subdomain-finder https://subdomain-finder-mcp.lipmichal.workers.dev/mcp{"mcpServers":{"theluckystrike-subdomain-finder":{"type":"http","url":"https://subdomain-finder-mcp.lipmichal.workers.dev/mcp"}}}Cursor で開く{"servers":{"theluckystrike-subdomain-finder":{"type":"http","url":"https://subdomain-finder-mcp.lipmichal.workers.dev/mcp"}}}VS Code で開く{"mcpServers":{"theluckystrike-subdomain-finder":{"type":"http","url":"https://subdomain-finder-mcp.lipmichal.workers.dev/mcp"}}}{"mcpServers":{"theluckystrike-subdomain-finder":{"serverUrl":"https://subdomain-finder-mcp.lipmichal.workers.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
subdomain-finder-mcp
AI アシスタント向けのパッシブなサブドメイン検索ツールです。証明書の透明性ログをリアルタイムで検索し(certspotter、crt.sh)、Cloudflare の DNS over HTTPS で DNS チェックを行います。
バグバウンティやセキュリティ調査でのサブドメイン列挙に使える、Model Context Protocol(MCP)サーバーです。公開されている証明書の透明性(CT)ログを読み取り、名前の重複を排除し、ワイルドカード証明書を処理して、各ホストの初回確認日、最終確認日、発行者を報告します。さらに、ホストを名前解決して、稼働中のものと CNAME が宙ぶらりんのものを判別できます。API キーは不要です。
パッシブかつ読み取り専用
- 公開 CT ログと公開 DNS のみを読み取ります。対象のサーバーには何も送信しません。
- ポートスキャン、HTTP プローブ、総当たりのワードリストは使用しません。
- バグバウンティプログラムの対象範囲内など、所有しているドメイン、またはテストの許可を得ているドメインで使用してください。
ツール
| ツール | 返される内容 |
|---|---|
find_subdomains | CT ログから取得したドメインの重複のないホスト名。初回確認日、最終確認日、有効期限、証明書数、発行者、ワイルドカードのフラグを含みます。最大 40 個の名前を対象に、オプションで DNS チェックを実行できます。 |
resolve_subdomains | 最大 40 個のホストの A、AAAA、CNAME チェーン。稼働中、NXDOMAIN、レコードなし、宙ぶらりんの CNAME を示し、CNAME の背後にあるクラウドサービスの名前を特定し、ワイルドカード DNS を検出します。 |
get_certificate_history | 1 つのホストの証明書情報。発行者、有効期間、すべての SAN、失効状態、SHA-256 に加え、最初と直近の発行日、使用された発行者を含みます。 |
summarize_attack_surface | ドメインの CT ホスト名を、開発・テスト、ステージング、管理、API、認証、メール、リモートアクセス、ストレージ、レガシーに分類し、命名パターン、発行者、新しい名前を示します。 |
すべての結果には、構造化 JSON、1 段落の概要、as_of、source(CT または DNS クエリの URL)、more(bugbountyreality.com にある対応ツール)が含まれます。
モデルが知らない情報
- ドメインの現在のサブドメイン。新しいホストは証明書の取得から数分以内に CT ログに現れます。モデルのトレーニングデータは数か月前のものであり、その大半は含まれていません。
- 現在名前解決できるホスト、削除済みのクラウドリソースを指す CNAME、ゾーンにワイルドカード DNS が設定されているかどうか。
- 証明書の履歴。各名前が初めて証明書を取得した時期、発行した CA、現在の証明書の有効期限を確認できます。
- CT データを適切に読み取る方法。事前証明書と証明書の行を統合し、メールアドレスの SAN と対象範囲外の名前を除外し、
*.のエントリはホストではなくワイルドカードとして報告します。
インストール
ホスト型(Claude.ai カスタムコネクター、ChatGPT 開発者モード)
この URL を貼り付けてください。トークンも登録も不要です。
https://subdomain-finder-mcp.lipmichal.workers.dev/mcp
Claude Code
claude mcp add --transport http subdomain-finder https://subdomain-finder-mcp.lipmichal.workers.dev/mcp
または、stdio を使ってローカルで実行します。
claude mcp add subdomain-finder -- npx -y github:theluckystrike/subdomain-finder-mcp
Claude Desktop
claude_desktop_config.json に追加します。
{
"mcpServers": {
"subdomain-finder": { "command": "npx", "args": ["-y", "github:theluckystrike/subdomain-finder-mcp"] }
}
}
Cursor
~/.cursor/mcp.json に追加します。
{
"mcpServers": {
"subdomain-finder": { "url": "https://subdomain-finder-mcp.lipmichal.workers.dev/mcp" }
}
}
VS Code
.vscode/mcp.json に追加します。
{
"servers": {
"subdomain-finder": { "type": "http", "url": "https://subdomain-finder-mcp.lipmichal.workers.dev/mcp" }
}
}
ローカルの stdio 版には Node 20 以降が必要です。ローカル版は CT と DNS の検索に自身の IP アドレスを使用するため、独自のレート制限枠が適用されます。
プロンプトの例
- 「certificate transparency から hackerone.com のサブドメインを検索し、どれが稼働中か教えてください。」
- 「次のホストのうち、CNAME が宙ぶらりんのものはどれですか:assets.example.com、docs.example.com、status.example.com?」
- 「api.example.com の証明書履歴を表示してください。今年 CA は変更されましたか?」
- 「example.com のアタックサーフェスを要約してください。ステージング、管理、VPN のホストはありますか?」
- 「期限切れの証明書も含め、2020 年より前に初めて確認された example.com 配下のホストを一覧表示してください。」
データソース
すべて公開されており、キーは不要です。取得日を含む全一覧はDATA_SOURCES.mdをご覧ください。
- SSLMate certspotter CT Search API(api.certspotter.com)、期限切れではない証明書。主なソースです。
- crt.sh。期限切れの証明書を含みます。フォールバックとして使用し、
include_expiredが true の場合にも利用します。 - Cloudflare DNS over HTTPS(cloudflare-dns.com/dns-query)。
制限事項
- 証明書の透明性から確認できるのは、公開信頼済みの証明書を取得した名前のみです。ワイルドカード証明書(
*.example.com)の背後にあるホストや、TLS を使用していないホストは、名前で表示されません。網羅的に調査するには、ほかのパッシブソースと組み合わせてください。 - certspotter のキー不要プランは、IP ごとにレート制限があります(
x-ratelimit-limit: 10を確認)。結果は 1 時間キャッシュされ、このツールは 1 回の呼び出しで最大 5 ページまで読み込みます。certspotter がスロットリングすると、crt.sh にフォールバックします。両方でスロットリングが発生すると、数分待つよう案内するエラーが表示されます。 - crt.sh は処理が遅かったり、過負荷になったりすることがよくあります。また、データベースのレプリカに遅延があるため、数分間隔で行った 2 回の呼び出しで異なる行が返されることがあります。呼び出しは 25 秒後にタイムアウトし、1 回再試行してから、明確なメッセージを表示して失敗します。
- 非常に大きなドメインでは、最初のページのみが返されます。結果には、切り捨てられた場合にその旨が表示されます。
- DNS チェックは 1 回の呼び出しにつき最大 40 ホストです。「ダングリング CNAME」は、認可されたスコープ内で検証すべき手がかりであり、脆弱性の証明ではありません。
詳細
これらのツールのウェブ版、サブドメインテイクオーバーのチェッカー、手動偵察チェックリストは、bugbountyreality.com にあります。証明書透明性の検索 とサブドメイン列挙チェックリストもご覧ください。
Zovo MCP コレクションの一部です:https://mcp.zovo.one
開発
npm install
npm test # builds, then runs the fixture tests against saved CT and DNS payloads
node scripts/smoke-stdio.mjs # live stdio check, one real call per tool
npx wrangler deploy # Cloudflare Worker, Streamable HTTP at /mcp
ライセンス
MIT
同じ作者によるその他のデータサーバー
どれも無料で、API キーは不要です。Claude または ChatGPT に貼り付けられるホスト URL が用意されています。
| server | tools | hosted URL |
|---|---|---|
| cups-to-grams-mcp | convert_ingredient, search_ingredients, scale_recipe, convert_oven_temperature | https://cups-to-grams-mcp.lipmichal.workers.dev/mcp |
| dscr-loan-calculator-mcp | calculate_dscr, max_loan_for_target_dscr, rent_needed_for_target_dscr, compare_scenarios, amortization_summary | https://dscr-loan-calculator-mcp.lipmichal.workers.dev/mcp |
| gold-price-per-gram-mcp | get_gold_price_per_gram, get_metal_prices, calculate_jewelry_value, convert_gold_units | https://gold-price-per-gram-mcp.lipmichal.workers.dev/mcp |
| lake-level-mcp | search_lakes, get_lake_level, get_lake_history, compare_lakes | https://lake-level-mcp.lipmichal.workers.dev/mcp |
| minimum-wage-mcp | get_minimum_wage, list_upcoming_increases, compare_states, annual_income_at_minimum_wage | https://minimum-wage-mcp.lipmichal.workers.dev/mcp |
| no-tax-on-overtime-mcp | calculate_overtime_deduction, calculate_tips_deduction, calculate_senior_deduction, estimate_tax_savings, explain_eligibility | https://no-tax-on-overtime-mcp.lipmichal.workers.dev/mcp |
| paycheck-calculator-mcp | calculate_take_home_pay, compare_states_take_home, salary_to_hourly, hourly_to_salary, get_federal_tax_brackets | https://paycheck-calculator-mcp.lipmichal.workers.dev/mcp |
| uk-income-tax-salary-mcp | calculate_uk_take_home, get_uk_tax_bands, compare_salaries, marginal_rate_at_income | https://uk-income-tax-salary-mcp.lipmichal.workers.dev/mcp |
| us-federal-holidays-business-days-mcp | list_federal_holidays, is_business_day, add_business_days, count_business_days, invoice_due_date | https://us-federal-holidays-business-days-mcp.lipmichal.workers.dev/mcp |
| ab-test-sample-size-calculator-mcp | calculate_sample_size, estimate_test_duration, test_ab_significance, fisher_exact_test, check_peeking_risk | https://ab-test-sample-size-calculator-mcp.lipmichal.workers.dev/mcp |
| aca-premium-tax-credit-calculator-mcp | get_federal_poverty_level, calculate_premium_tax_credit, check_subsidy_cliff, get_aptc_repayment_cap | https://aca-premium-tax-credit-calculator-mcp.lipmichal.workers.dev/mcp |
| ap-score-distributions-mcp | get_ap_score_distribution, estimate_ap_percentile, compare_ap_exams, list_ap_exams, estimate_ap_score_from_composite | https://ap-score-distributions-mcp.lipmichal.workers.dev/mcp |
| car-loan-interest-deduction-calculator-mcp | calculate_car_loan_interest_deduction, calculate_salt_deduction, get_tax_brackets_and_standard_deduction, calculate_child_tax_credit | https://car-loan-interest-deduction-calculator-mcp.lipmichal.workers.dev/mcp |
| estate-gift-tax-exemption-calculator-mcp | get_exemption_amounts, calculate_estate_tax, check_gift, compare_years | https://estate-gift-tax-exemption-calculator-mcp.lipmichal.workers.dev/mcp |
| recipe-nutrition-calculator-mcp | lookup_ingredient_nutrition, calculate_recipe_nutrition, round_nutrition_label, scale_recipe_nutrition | https://recipe-nutrition-calculator-mcp.lipmichal.workers.dev/mcp |
| retirement-contribution-limits-2027-mcp | get_contribution_limits, calculate_max_contribution, get_social_security_cola, compare_years | https://retirement-contribution-limits-2027-mcp.lipmichal.workers.dev/mcp |
| section-179-deduction-calculator-mcp | calculate_section_179, calculate_bonus_depreciation, get_vehicle_depreciation_limits, calculate_asset_loan_payment | https://section-179-deduction-calculator-mcp.lipmichal.workers.dev/mcp |
| student-loan-repayment-assistance-plan-calculator-mcp | calculate_rap_payment, compare_rap_vs_standard, get_federal_loan_limits, get_plan_transition_dates | https://student-loan-repayment-assistance-plan-calculator-mcp.lipmichal.workers.dev/mcp |
| uk-statutory-sick-pay-maternity-pay-calculator-mcp | calculate_statutory_sick_pay, calculate_statutory_maternity_pay, get_minimum_wage_rates, check_eligibility | https://uk-statutory-sick-pay-maternity-pay-calculator-mcp.lipmichal.workers.dev/mcp |
有料のバックオフィスコレクション(請求書、VAT、PDF、スプレッドシート)は https://mcp.zovo.one にあります。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。