43 - Pentesting WHOIS

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks

Osnovne informacije

Protokol WHOIS predstavlja standardni način za ispitivanje o registrantima ili nosiocima različitih Internet resursa putem specifičnih baza podataka. Ti resursi obuhvataju domenska imena, blokove IP adresa i autonomne sisteme, između ostalog. Pored toga, protokol se koristi za pristup širem spektru informacija.

Podrazumevani port: 43

PORT   STATE  SERVICE
43/tcp open   whois?

Sa ofanzivne tačke gledišta, imajte na umu da je WHOIS samo plain-text TCP servis: klijent šalje upit, server vraća tekst čitljiv ljudima, i zatvaranje konekcije označava kraj odgovora. U protokolu nema ugrađene autentifikacije, integriteta ili poverljivosti.

Savremena realnost: WHOIS vs RDAP

Za podatke o registraciji internet domena, WHOIS više nije autoritativna opcija za mnoge javne gTLD tokove rada. ICANN je ukinuo WHOIS za gTLD registration data on 2025-01-28, čime je RDAP postao protokol koji treba preferirati za mašinski-čitljive pretrage podataka o registraciji domena.

Međutim, TCP/43 i dalje vredi testirati jer se pojavljuje u:

  • Zastarjelim ili privatnim WHOIS servisima
  • RIR / tokovima dodele IP adresa
  • Internim registrima i prilagođenim bazama podataka o resursima
  • Alatima trećih strana za web i staroj automatizaciji koja i dalje veruje WHOIS odgovorima

Ako vam je cilj reverse whois, šire asset expansion, ili rekurzivni external recon, pogledajte the External Recon Methodology page da biste izbegli dupliciranje posla ovde.

Enumerate

Prikupite sve informacije koje WHOIS servis ima o domenu:

whois -h <HOST> -p <PORT> "domain.tld"
printf 'domain.tld\r\n' | nc -vn <HOST> <PORT>

Ako pronađete javno dostupnu WHOIS uslugu, testirajte i upite u stilu domain i IP/ASN, jer mnoge implementacije izlažu različite backends ili parsers u zavisnosti od tipa objekta:

# 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

Obratite pažnju da ponekad, kada tražite informacije od WHOIS servisa, baza podataka koja se koristi pojavljuje se u odgovoru:

Referral Chasing i bolje enumerisanje

Mnoge korisne WHOIS enumeracije su skrivene iza referrals. Na primer, jedan server može samo da vas uputi na sledeći autoritativni WHOIS server za TLD ili RIR. Vredno je ovo testirati ručno, jer neke prilagođene usluge nepravilno obrađuju naknadne upite, nedosledno cenzurišu polja ili leak-uju dodatne backend metapodatke.

Korisne opcije i pomoćni alati:

# 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>

Zanimljiva polja za pivot kada servis nije potpuno redigovan:

  • Registrar / Org / abuse contact za izveštavanje o phishingu ili mapiranje organizacije
  • Creation / update / expiration times za otkrivanje novo registrovane infrastrukture
  • Nameservers za grupisanje domena kojima upravlja isti operator
  • Referral server names za pronalaženje nasleđene ili zaboravljene WHOIS infrastrukture

RDAP kao strukturisani naslednik

Čak i ako izloženi servis koristi klasični WHOIS na portu 43, proverite da li isti provajder takođe nudi RDAP, jer je RDAP često lakši za parsiranje i bolji za automatizaciju:

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.

Ofanzivne napomene

Backend Injection in Custom WHOIS Gateways

Takođe, WHOIS servis obično mora koristiti bazu podataka da bi skladištio i dohvaćao informacije. Dakle, moguća je SQLInjection kada se pri upitu u bazu koriste podaci koje obezbedi korisnik. Na primer, izvršavanjem: whois -h 10.10.10.155 -p 43 "a') or 1=1#" mogli biste uspeti da izvučete sve informacije sačuvane u bazi.

Ne ograničavajte testiranje samo na SQLi. U internim ili nišnim WHOIS implementacijama, upit može biti proxied ka:

  • SQL / NoSQL backends
  • LDAP directories
  • shell wrappers oko drugih lookup alata
  • HTTP APIs koje koriste registrar ili portali za asset-management

Dakle, fuzz-ujte sa payloadima za SQLi, LDAP injection, zloupotrebom delimitera, veoma dugim stringovima i neispravnim UTF-8 / kontrolnim karakterima. Sam protokol je jednostavan; opasan deo je obično parser ili backend glue code.

Rogue / Stale WHOIS serveri

Relevantna putanja napada iz 2024–2025 je zloupotreba outdated WHOIS trust. Ako registar ili alat promeni svoj WHOIS hostname i stari domen istekne, napadač može registrovati stari hostname i pokrenuti rogue WHOIS server.

To napadaču daje kontrolu nad telom odgovora koje vide:

  • stari WHOIS klijenti sa hardkodovanim mapiranjima servera
  • web aplikacije koje dohvaćaju WHOIS output i prikazuju ga korisnicima
  • automatizacija koja i dalje koristi WHOIS za validaciju domena ili workflow-e vezane za vlasništvo

Ovo je važno jer rogue WHOIS odgovor može postati ulazna tačka za:

  • stored/reflected XSS u web WHOIS frontend-ovima
  • parser bugs / command injection / eval bugs u bibliotekama koje konzumiraju tekstualni odgovor
  • loše automatizacione odluke kada sistemi veruju WHOIS kontakt podacima kojima upravlja napadač

Kada nađete privatni ili legacy WHOIS servis, uvek proverite da li vraćene vrednosti refer: / Whois Server:, baneri ili TLD mapiranja ukazuju na expired or attacker-registerable domains.

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}

Reference

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks