Wat is een subdomein?

Een subdomein is een naam onder een domain, zoals mail.example.com, api.example.com of dev.example.com onder example.com. Elk subdomein kan via eigen DNS-records naar een eigen server verwijzen. Organisaties gebruiken subdomeinen daarom om hun websites, mailservers, API's, testomgevingen en interne tools op te delen. DNS biedt geen manier om alle namen onder een domain op te sommen. Daarom moeten subdomeinen worden gevonden door namen één voor één op te vragen en de records te lezen waarin ze worden vermeld.

Beschrijving van de tool

De subdomeinzoeker zoekt uitsluitend aan de hand van DNS-records naar subdomeinen van een domain. Voer een domain in. De tool leest de eigen records van het domain om namen te vinden die ernaar verwijzen en controleert vervolgens een lijst met 350 veelvoorkomende subdomeinnamen, zoals www, mail, api, dev en staging. Elk gevonden subdomein wordt weergegeven in een tabel met de IPv4- en IPv6-adressen, het CNAME-doel en het record waarmee het is gevonden.

Functies

  • Vindt subdomeinen die worden vermeld in de NS-, MX-, SOA-, SRV- en SPF-records van het domain, zoals naamservers, mailservers en _spf-include-records
  • Controleert 350 veelvoorkomende subdomeinnamen en behoudt de namen met een IPv4- of IPv6-adres
  • Volgt CNAME-records één stap: een CNAME-doel binnen het domain wordt ook als subdomein toegevoegd
  • Blijft veelvoorkomende namen controleren als het domain een wildcard-DNS-record heeft en vermeldt de namen waarvan de records afwijken van die van de wildcard
  • Toont de IP-adressen, het CNAME-doel en de bron van elk subdomein in een tabel die je kunt sorteren en exporteren als CSV of JSON
  • Een URL of www.-adres wordt teruggebracht tot het domain. Zo zoekt https://www.example.com/page naar example.com
  • Je kunt ook onderliggende subdomeinen zoeken: voer dev.example.com in om te zoeken naar namen daaronder

Waar de subdomeinen vandaan komen

  • Veelvoorkomende naam: de naam staat op de lijst van de tool en heeft een A- of AAAA-record. Bij een wildcard wordt de naam vermeld als de records ervan afwijken van die van de wildcard.
  • NS-record: de naamservers van het domain worden gehost onder het domain, zoals ns1.example.com.
  • MX-record: de mailservers van het domain, zoals mail.example.com.
  • SOA-record: de primaire naamserver die wordt genoemd in het SOA-record van het domain.
  • SRV-record: het doel van een veelvoorkomend servicerecord, zoals _autodiscover._tcp, _sip._tcp, _xmpp-server._tcp of _imaps._tcp.
  • SPF-record: een naam die wordt gebruikt door een term include:, a:, mx:, ptr:, exists: of redirect= in het SPF-record van het domain.
  • CNAME-record: het CNAME-doel van een ander gevonden subdomein.

Namen uit records worden ook vermeld als ze geen IP-adres hebben, omdat het record laat zien dat ze in gebruik zijn. SPF-include-namen zoals _spf.example.com bevatten bijvoorbeeld doorgaans alleen een TXT-record.

Domains met een wildcardrecord

Een wildcardrecord zoals *.example.com geeft antwoord voor elke naam onder het domain die geen eigen records heeft. Daardoor verwijzen alle veelvoorkomende namen naar een bestemming en bewijst het opvragen ervan op zichzelf niets. De tool vraagt eerst drie willekeurige namen op om te bepalen welk antwoord de wildcard geeft. Vervolgens controleert de tool de A-, CNAME-, AAAA-, TXT- en MX-records van elke veelvoorkomende naam en vergelijkt die met de records van de wildcard. Een wildcard is nooit van toepassing op een naam met eigen records. Een naam wordt daarom vermeld als de antwoorden afwijken, bijvoorbeeld:

  • de naam verwijst naar andere adressen of heeft een CNAME naar een ander doel
  • de naam heeft een TXT- of MX-record dat de wildcard niet heeft, of een AAAA-record dat bij de wildcard ontbreekt
  • de naam heeft geen A-record terwijl de wildcard er wel een heeft, zoals bij een naam met alleen een MX-record

Een naam waarvan de records exact overeenkomen met die van de wildcard, bijvoorbeeld een A-record met hetzelfde adres en verder niets, is daar niet van te onderscheiden en wordt niet vermeld. Als de wildcard bij elke opvraging een ander adres teruggeeft, zoals bij platforms met load balancing, kunnen adressen niet worden vergeleken. In dat geval wordt alleen gecontroleerd of elk recordtype bestaat. Mislukte of verlopen opvragingen worden nooit als een verschil meegeteld.

Veiligheid en beperkingen

  • Er worden alleen DNS-query's uitgevoerd, en die gaan naar Google Public DNS. De tool maakt nooit verbinding met de gevonden subdomeinen.
  • Alleen openbare domeinnamen op een echt hoofddomein worden geaccepteerd. IP-adressen, localhost en interne namen zoals .local of .corp worden geweigerd.
  • Zoneoverdrachten (AXFR) worden niet geprobeerd. Subdomeinen die niet in de bovenstaande records staan en ook niet op de lijst met veelvoorkomende namen voorkomen, worden dus niet gevonden.
  • De volledige zoekopdracht duurt maximaal 3,5 seconden. Als de tijd om is, worden de tot dan toe gevonden subdomeinen weergegeven met een waarschuwing dat de lijst mogelijk onvolledig is.
  • Er worden maximaal 100 namen uit records en 10 IP-adressen per subdomein weergegeven.
  • Sommige DNS-providers antwoorden met ‘geen gegevens’ in plaats van ‘naam bestaat niet’ voor niet-bestaande namen. Daarom telt een veelvoorkomende naam alleen als gevonden wanneer deze een adres heeft.