Dnsenum
Dnsenum is a multithreaded Perl script to enumerate DNS information of a domain and discover non-contiguous IP blocks. It gathers comprehensive details including host addresses, name servers, MX records, and subdomains.
Description
Dnsenum is designed to gather as much information as possible about a domain through various DNS enumeration techniques. It is particularly useful for pentesters, ethical hackers, and forensics experts conducting security tests and reconnaissance.
The tool performs operations such as retrieving A records, name servers, MX records, AXFR queries, Google scraping for subdomains, brute force subdomain enumeration, whois queries on network ranges, and reverse lookups. It supports multithreading for efficiency and can output results in XML format for further analysis.
Use cases include domain reconnaissance in penetration testing, identifying potential attack surfaces, and mapping network infrastructure during security assessments.
How It Works
Dnsenum operates as a multithreaded Perl script using protocols like DNS queries for A, NS, MX records, and AXFR zone transfers on name servers. It performs Google scraping with queries like 'allinurl: -www site:domain' to find subdomains, brute forces subdomains from a wordlist with optional recursion on those having NS records, calculates C-class network ranges, runs whois queries, and conducts reverse lookups on discovered IP blocks. All operations are threaded for speed, with configurable timeouts, delays, and output options including XML.
Installation
sudo apt install dnsenumFlags
Examples
dnsenum --noreverse -o mydomain.xml example.comdnsenum -hdnsenum --enum example.comdnsenum --dnsserver 8.8.8.8 example.comdnsenum --threads 10 example.comdnsenum -f /path/to/wordlist.txt example.comdnsenum -p 10 -s 20 example.com