Hermes Agent Wiki 非公式・日本語wiki
この skill をそのまま使う: GitHub で原文を見る

英語原文・frontmatter 込みで、Hermes が読み込む実体そのままです(このページの本文は日本語版)。

Domain Intel

目次

サブドメイン・SSL 証明書・WHOIS・DNS を受動的に調べます。

skill の情報

提供元 オプション — hermes skills install official/research/domain-intel で導入します
パス optional-skills/research/domain-intel
バージョン 1.0.0
作者 FurkanL0, Hermes Agent
ライセンス MIT
対応プラットフォーム linux, macos, windows
タグ Domains, OSINT, DNS, Research

参考: SKILL.md 全文

Domain Intelligence — 受動的な OSINT

Python の標準ライブラリだけでドメインを受動的に調べます。 依存パッケージなし。API キーなし。Linux・macOS・Windows で動きます。

補助スクリプト

この skill には scripts/domain_intel.py が入っています。ドメイン調査の操作をひととおりまかなえる CLI ツールです。

# Subdomain discovery via Certificate Transparency logs
python3 SKILL_DIR/scripts/domain_intel.py subdomains example.com

# SSL certificate inspection (expiry, cipher, SANs, issuer)
python3 SKILL_DIR/scripts/domain_intel.py ssl example.com

# WHOIS lookup (registrar, dates, name servers — 100+ TLDs)
python3 SKILL_DIR/scripts/domain_intel.py whois example.com

# DNS records (A, AAAA, MX, NS, TXT, CNAME)
python3 SKILL_DIR/scripts/domain_intel.py dns example.com

# Domain availability check (passive: DNS + WHOIS + SSL signals)
python3 SKILL_DIR/scripts/domain_intel.py available coolstartup.io

# Bulk analysis — multiple domains, multiple checks in parallel
python3 SKILL_DIR/scripts/domain_intel.py bulk example.com github.com google.com
python3 SKILL_DIR/scripts/domain_intel.py bulk example.com github.com --checks ssl,dns

SKILL_DIR は、この SKILL.md が置かれているディレクトリです。出力はすべて構造化された JSON です。

使えるコマンド

コマンド 何をするか データの取得元
subdomains 証明書のログからサブドメインを探す crt.sh(HTTPS)
ssl TLS 証明書の詳細を調べる 対象の TCP:443 へ直接接続
whois 登録情報・登録事業者・各種の日付 WHOIS サーバー(TCP:43)
dns A・AAAA・MX・NS・TXT・CNAME レコード システムの DNS と Google DoH
available ドメインが登録済みかを調べる DNS・WHOIS・SSL のシグナル
bulk 複数のドメインに複数の検査をまとめて実行 上記すべて

組み込みツールとの使い分け

  • インフラまわりの疑問(サブドメイン・SSL 証明書・WHOIS・DNS レコード・空き状況)には この skill を使います
  • そのドメインや会社が何をしているかを広く調べるなら web_search を使います
  • ページの中身そのものを取りたいなら web_extract を使います
  • 「この URL につながるか」を手早く見たいだけなら terminalcurl -I を使います
やりたいこと 向いているツール 理由
「example.com は何をしているサイト?」 web_extract DNS/WHOIS ではなくページの中身が取れる
「ある会社の情報を調べたい」 web_search ドメイン限定ではない一般的な調査向き
「このサイトは安全?」 web_search 評判の確認には Web 上の文脈が要る
「URL につながるか確かめたい」 terminalcurl -I 単純な HTTP の確認
「X のサブドメインを探したい」 この skill 受動的に調べられる手段はこれだけ
「SSL 証明書はいつ切れる?」 この skill 組み込みツールでは TLS を覗けない
「このドメインの登録者は誰?」 この skill WHOIS の情報は Web 検索では出てこない
「coolstartup.io は空いている?」 この skill DNS+WHOIS+SSL による受動的な空き確認

動作環境

Python の標準ライブラリだけで動きます(socketsslurllibjsonconcurrent.futures)。 Linux・macOS・Windows のいずれでも、追加の依存なしに同じように動きます。

  • crt.sh への問い合わせは HTTPS(ポート 443)を使うので、たいていのファイアウォールの内側でも通ります
  • WHOIS への問い合わせは TCP のポート 43 を使うため、制限の厳しいネットワークでは塞がれていることがあります
  • DNS の問い合わせは MX/NS/TXT に Google DoH(HTTPS)を使うので、ファイアウォールと相性がよいです
  • SSL の確認は対象のポート 443 へ接続します。ここだけが唯一の「能動的な」操作です

データの取得元

問い合わせはすべて受動的です。ポートスキャンも脆弱性検査もしません。

  • crt.sh — Certificate Transparency のログ(サブドメインの発見、HTTPS のみ)
  • WHOIS サーバー — 100 を超える TLD の権威ある登録事業者へ TCP で直接接続
  • Google DNS-over-HTTPS — MX・NS・TXT・CNAME の解決(ファイアウォールと相性がよい)
  • システムの DNS — A/AAAA レコードの解決
  • SSL の確認だけが唯一の「能動的な」操作です(対象の 443 番への TCP 接続)

補足

  • WHOIS の問い合わせは TCP のポート 43 を使うため、制限の厳しいネットワークでは塞がれていることがあります
  • WHOIS サーバーによっては登録者情報を伏せています(GDPR)。その旨を利用者に伝えてください
  • crt.sh は人気のあるドメインだと時間がかかることがあります(証明書が何千件もあるため)。待ち時間の見込みを伝えてください
  • 空き状況の確認は 3 つの受動的なシグナルにもとづく推定です。登録事業者の API のように確定的ではありません

*Contributed by @FurkanL0*