43 - Pentesting WHOIS
Tip
AWSハッキングを学び、実践する:
HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
基本情報
The WHOISプロトコルは、特定のデータベースを通じてさまざまなインターネット資源の登録者や保有者について照会するための標準的な手段です。これらの資源にはドメイン名、IPアドレスのブロック、自律システムなどが含まれます。これに加え、このプロトコルはより広範な情報の取得にも利用されます。
デフォルトポート: 43
PORT STATE SERVICE
43/tcp open whois?
攻撃的観点から言うと、WHOISは単なるプレーンテキストのTCPサービスに過ぎないことを覚えておいてください:クライアントがクエリを送信し、サーバは人間が読めるテキストを返し、接続のクローズがレスポンスの終わりを示す。プロトコルには認証、整合性、機密性の組み込み機能はない。
現状: WHOIS vs RDAP
インターネットのドメイン登録データについては、WHOISは多くの公開gTLDワークフローにおいてもはや権威ある選択肢ではない。ICANNは2025-01-28にgTLD登録データのWHOISを廃止し、機械可読なドメイン登録検索にはRDAPを優先するプロトコルとした。
しかし、TCP/43は依然としてテストする価値がある。なぜなら以下に頻繁に現れるからだ:
- レガシーまたはプライベートな WHOIS サービス
- RIR / IP 割当ワークフロー
- 内部レジストリやカスタム資産データベース
- WHOIS のレスポンスをまだ信頼しているサードパーティのウェブツールや古い自動化
目的が reverse whois、より広い資産拡張、または再帰的な外部 recon である場合は、ここで作業を重複させないようにthe External Recon Methodology pageを確認してください。
Enumerate
ドメインについて whois サービスが持つすべての情報を取得する:
whois -h <HOST> -p <PORT> "domain.tld"
printf 'domain.tld\r\n' | nc -vn <HOST> <PORT>
パブリックに公開されているWHOISサービスを見つけた場合、オブジェクトタイプに応じて多くの実装が異なるバックエンドやパーサーを使用するため、domainおよびIP/ASNスタイルのクエリの両方をテストしてください:
# Domain
printf 'example.com\r\n' | nc -vn <HOST> 43
# IP / CIDR / ASN examples
printf '8.8.8.8\r\n' | nc -vn <HOST> 43
printf 'AS15169\r\n' | nc -vn <HOST> 43
Notice than sometimes when requesting for some information to a WHOIS service the database being used appears in the response:
.png)
Referral Chasing and Better Enumeration
多くの有用な WHOIS 列挙は referrals の背後に隠れています。例えば、あるサーバは TLD や RIR の次の権威ある WHOIS サーバを指し示すだけの場合があります。カスタムサービスの中にはフォローアップのクエリを正しく扱わなかったり、フィールドを一貫性なく修正したり、追加のバックエンドメタデータを leak するものがあるため、これは手動でテストする価値があります。
Useful options and helpers:
# Ask IANA first and then follow the authoritative referral (common Linux whois clients)
whois -I example.com
whois -I 8.8.8.8
# Let Nmap follow domain/IP WHOIS referrals automatically
nmap --script whois-domain <target>
nmap --script whois-ip <target>
# For IP ranges, disable the WHOIS cache if you care about smaller delegated blocks
nmap --script whois-ip --script-args whois.whodb=nocache <target>
サービスが完全にredactedされていない場合にpivotする際の注目フィールド:
- Registrar / Org / abuse contact — phishing reporting や org-mapping のため
- Creation / update / expiration times — 新規登録されたインフラを見つけるため
- Nameservers — 同一運用者が管理するドメインをクラスター化するため
- Referral server names — レガシーや忘れられたWHOISインフラを発見するため
RDAP — 構造化された後継
たとえサービスが古典的なWHOISでポート 43 を使っていても、同じプロバイダがRDAPを提供しているか確認してください。RDAPは解析が容易で自動化に向いていることが多いです:
curl -s https://www.rdap.net/domain/example.com | jq
curl -s https://rdap.arin.net/registry/ip/8.8.8.8 | jq
A practical offensive nuance: a 2024 measurement study comparing WHOIS and RDAP at scale found that they are not always interchangeable, with inconsistencies in fields such as registrar identifiers, creation dates, and nameservers. If your recon pipeline depends on those values, compare both sources before making decisions.
Offensive Notes
Backend Injection in Custom WHOIS Gateways
また、WHOIS service は情報を保存・抽出するために常にdatabaseを使用する必要があります。したがって、ユーザ提供の情報を元にデータベースをqueryingする際に、SQLInjection が存在する可能性があります。例えば whois -h 10.10.10.155 -p 43 "a') or 1=1#" のように実行すると、データベースに保存されているすべての情報をextractできる可能性があります。
テストを SQLi に限定しないでください。内部またはニッチな WHOIS 展開では、クエリが以下にプロキシされることがあります:
- SQL / NoSQL backends
- LDAP directories
- 他のルックアップツールを呼ぶシェルラッパー
- レジストラや資産管理ポータルで使われる HTTP APIs
そのため、SQLi、LDAP injection、区切り文字の悪用、非常に長い文字列、壊れた UTF-8 / 制御文字 のペイロードでファズしてください。プロトコル自体は単純で、危険なのは通常 parser or backend glue code です。
Rogue / Stale WHOIS Servers
2024–2025 年に関連する攻撃経路の一つは、outdated WHOIS trust を悪用することです。もし registry やツールが WHOIS のホスト名を変更し、古いドメインが期限切れになった場合、攻撃者がその古いホスト名を登録して rogue WHOIS server を運用できる可能性があります。
これにより攻撃者は以下で見られるレスポンス本文を制御できるようになります:
- ハードコードされたサーバー対応を持つ古い WHOIS クライアント
- WHOIS 出力を取得してユーザにレンダリングする web アプリケーション
- ドメイン検証や所有権ワークフローでまだ WHOIS を使っている自動化処理
これは重要です。なぜなら rogue WHOIS レスポンスが以下の侵入口になり得るからです:
- web WHOIS フロントエンドでの stored/reflected XSS
- テキストレスポンスを消費するライブラリにおける parser bugs / command injection / eval bugs
- システムが攻撃者管理下の WHOIS 連絡先データを信頼した場合の bad automation decisions
プライベートまたはレガシーな WHOIS サービスを見つけたら、返される refer: / Whois Server: の値、バナー、TLD マッピングが期限切れまたは攻撃者が登録可能なドメインを指していないか常に確認してください。
Shodan
port:43 whois
HackTricks Automatic Commands
Protocol_Name: WHOIS #Protocol Abbreviation if there is one.
Port_Number: 43 #Comma separated if there is more than one.
Protocol_Description: WHOIS #Protocol Abbreviation Spelled out
Entry_1:
Name: Notes
Description: Notes for WHOIS
Note: |
The WHOIS protocol serves as a standard method for inquiring about the registrants or holders of various Internet resources through specific databases. These resources encompass domain names, blocks of IP addresses, and autonomous systems, among others. Beyond these, the protocol finds application in accessing a broader spectrum of information.
https://book.hacktricks.wiki/en/network-services-pentesting/pentesting-smtp/index.html
Entry_2:
Name: Banner Grab
Description: Grab WHOIS Banner
Command: whois -h {IP} -p 43 {Domain_Name} && printf '{Domain_Name}\r\n' | nc -vn {IP} 43
Entry_3:
Name: Nmap WHOIS Referrals
Description: Follow WHOIS referrals for domain and IP lookups
Command: nmap --script whois-domain,whois-ip --script-args whois.whodb=nocache {IP}
参考資料
- ICANN Update: Launching RDAP; Sunsetting WHOIS
- watchTowr Labs - We Spent $20 To Achieve RCE And Accidentally Became The Admins Of .MOBI
Tip
AWSハッキングを学び、実践する:
HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。


