Rappel :

Attention dans cet article l'outils est utilisé pour la recherche et l'apprentissage. Ce type d'outils ne doit pas être utilisé vers un serveur qui ne vous appartient pas, ceci peut être puni par la loi (voir les articles 323-XX).

Environnement de test :

Pour cela nous allons utiliser une VM tournant sur la distribution Kali. DNSEnum est installé de base sur Kali.

Utilisation :

La commande et ses options

 1 root@kali:~# dnsenum
 2 dnsenum.pl VERSION:1.2.3
 3 Usage: dnsenum.pl [Options] <domain>
 4 [Options]:
 5 Note: the brute force -f switch is obligatory.
 6 GENERAL OPTIONS:
 7   --dnsserver   <server>
 8                         Use this DNS server for A, NS and MX queries.
 9   --enum                Shortcut option equivalent to --threads 5 -s 15 -w.
10   -h, --help            Print this help message.
11   --noreverse           Skip the reverse lookup operations.
12   --nocolor             Disable ANSIColor output.
13   --private             Show and save private ips at the end of the file domain_ips.txt.
14   --subfile <file>      Write all valid subdomains to this file.
15   -t, --timeout <value> The tcp and udp timeout values in seconds (default: 10s).
16   --threads <value>     The number of threads that will perform different queries.
17   -v, --verbose         Be verbose: show all the progress and all the error messages.
18 GOOGLE SCRAPING OPTIONS:
19   -p, --pages <value>   The number of google search pages to process when scraping names,
20                         the default is 5 pages, the -s switch must be specified.
21   -s, --scrap <value>   The maximum number of subdomains that will be scraped from Google (default 15).
22 BRUTE FORCE OPTIONS:
23   -f, --file <file>     Read subdomains from this file to perform brute force.
24   -u, --update  <a|g|r|z>
25                         Update the file specified with the -f switch with valid subdomains.
26         a (all)         Update using all results.
27         g               Update using only google scraping results.
28         r               Update using only reverse lookup results.
29         z               Update using only zonetransfer results.
30   -r, --recursion       Recursion on subdomains, brute force all discovred subdomains that have an NS record.
31 WHOIS NETRANGE OPTIONS:
32   -d, --delay <value>   The maximum value of seconds to wait between whois queries, the value is defined randomly, default: 3s.
33   -w, --whois           Perform the whois queries on c class network ranges.
34                          Warning: this can generate very large netranges and it will take lot of time to performe reverse lookups.
35 REVERSE LOOKUP OPTIONS:
36   -e, --exclude <regexp>
37                         Exclude PTR records that match the regexp expression from reverse lookup results, useful on invalid hostnames.
38 OUTPUT OPTIONS:
39   -o --output <file>    Output in XML format. Can be imported in MagicTree (www.gremwell.com)

La commande par l'exemple

 1 root@kali:~# dnsenum example.com
 2 dnsenum.pl VERSION:1.2.3
 3 
 4 -----   example.com   -----
 5 
 6 
 7 Host's addresses:
 8 
 9 
10 example.com.                             16690    IN    A        93.184.216.34
11 
12 
13 Name Servers:
14 
15 
16 a.iana-servers.net.                      1712     IN    A        199.43.132.53
17 b.iana-servers.net.                      1756     IN    A        199.43.133.53
18 
19 
20 Mail (MX) Servers:
21 
22 
23 
24 
25 Trying Zone Transfers and getting Bind Versions:
26 __________________________________
27 
28 
29 Trying Zone Transfer for example.com on a.iana-servers.net ...
30 AXFR record query failed: Response code from server: REFUSED
31 
32 Trying Zone Transfer for example.com on b.iana-servers.net ...
33 AXFR record query failed: Response code from server: REFUSED
34 
35 brute force file not specified, bay.

L'outils fait de base de une résolution DNS du domaine, récupère les NS et teste la récupération de transfert de zone. Je n'ai pas trouvé de résultats interessant avec les options.