DNS enumeration
DNS enumeration is for finding more information about all DNS components in a target. It is useful for identifying usernames, DNS record names, DNS domain names, and IP addresses of a target, increasing the attack surface of a target.
dnsenum
DNSenum is perl script identifying DNS information of target.
# dnsenum --noreverse <domain>
dnsrecon
dnsrecon is a Python script that provides the ability to:
Check all NS Records for Zone Transfers.
Enumerate General DNS Records for a given Domain (MX, SOA, NS, A, AAAA, SPF and TXT).
Perform common SRV Record Enumeration.
Top Level Domain (TLD) Expansion.
Check for Wildcard Resolution.
Brute Force subdomain and host A and AAAA records given a domain and a wordlist.
Perform a PTR Record lookup for a given IP Range or CIDR.
Check a DNS Server Cached records for A, AAAA and CNAME
Records provided a list of host records in a text file to check.
Enumerate Hosts and Subdomains using Google.
nslookup
nslookup
is a command line utility useful for identifying DNS infrastructure.
# nslookup
> set type=any
> ls -d <domain>
It uses the default DNS server to get the A
and AAAA
records related to a domain. For example:
nslookup clinic.thmredteam.com
nslookup
set type=MX
target.com
Then use nslookup
again to resolve the FQDNs of the mail servers to IP adressess.
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
Name: clinic.thmredteam.com
Address: 104.21.93.169
Name: clinic.thmredteam.com
Address: 172.67.212.249
Name: clinic.thmredteam.com
Address: 2606:4700:3034::ac43:d4f9
Name: clinic.thmredteam.com
Address: 2606:4700:3034::6815:5da9
nmap
Nmap is a port scanner used to identify open ports. Click Here for Nmap Cheatsheet
# nmap -sC -sV -p53 192.168.x.0/24
dig
dig is a command line tool for querying DNS servers. Use dig
to perform DNS profiling of the target organisation.
To determine the IP address of a system:
dig www.target.com +short
To determine the DNS servers:
dig target.com NS +short
To determine the email servers for the organisation:
dig target.com MX +short
digprovides a lot of query options and even allows specifying a different DNS server to use. For example, we can use Cloudflare's DNS server with:
dig @1.1.1.1 tryhackme.com`.
# dig axfr <domain> @<ns-domain>
host
host
is another useful alternative for querying DNS servers for DNS records.
# host <domain>
For example:
host clinic.thmredteam.com
clinic.thmredteam.com has address 104.21.93.169
clinic.thmredteam.com has address 172.67.212.249
clinic.thmredteam.com has IPv6 address 2606:4700:3034::ac43:d4f9
clinic.thmredteam.com has IPv6 address 2606:4700:3034::6815:5da9
fierce
Reconnaissance tool that quickly scans a target domain for DNS related vulnerabilities.
# fierce -dns <domain>
AltDNS
AltDNS is useful for identifying subdomains through alteration and permutation.
git clone https://github.com/infosec-au/altdns.git
cd altdns
pip install -r requirements.txt
DNSdumpster
DNSdumpster.com is a free domain research tool that can discover hosts related to a domain.