Enumeration belongs to the first phase of Ethical Hacking, i.e., “Information Gathering”. This is a process where the attacker establishes an active connection with the victim and try to discover as much attack vectors as possible, which can be used to exploit the systems further.

Enumeration can be used to gain information on:

  1. Network shares
  2. SNMP data, if they are not secured properly
  3. IP Tables
  4. Usernames of different systems
  5. Passwords policies lists

Enumerations depend on the services that the systems offer:

  1. DNS
  2. NTP
  3. SNMP
  4. Linux/Windows
  5. SMB

Let us now discuss some of the tools that are widely used for Enumeration


NTP Suite is used for NTP enumeration. This is important because in a network environment, you can find other primary servers that help the hosts to update their times and you can do it without authenticating the system.

Take a look at the following example.


01 Sept 12:50:49 ntpdate[627]: adjust time server offset - 0.005030 sec


# ntpdc [-ilnps] [-c command] [hostname/IP_address]
ntpdc -c sysinfo
***Warning changing to older implementation
***Warning changing the request packet size from 160 to 48 system peer:
system peer mode: client

leap indicator: 00
stratum: 5
precision: -15
root distance: 0.00107 s root dispersion: 0.02306 s
reference ID: []
reference time: f66s4f45.f633e130, Sept 01 2016 22:06:23.458 system flags: monitor ntp stats calibrate
jitter: 0.000000 s
stability: 4.256 ppm
broadcastdelay: 0.003875 s
authdelay: 0.000107 s

enum4linux is used to enumerate Linux systems. Take a look at the following screenshot and observe how we have found the usernames present in a target host.



smtp-user-enum tries to guess usernames by using SMTP service. Take a look at the following screenshot to understand how it does so.



It is recommended to disable all services that you don’t use. It reduces the possibilities of OS enumeration of the services that your systems are running.