- A Practical Guide to Nmap (Network Security Scanner) in Kali Linux
- System Requirements
- Kali Linux – Working with Nmap
- How to Find Live Hosts on My Network?
- Find and Ping All Live Hosts on My Network
- Find Open Ports on Hosts
- Find Services Listening on Ports on Hosts
- Find Anonymous FTP Logins on Hosts
- Check for Vulnerabilities on Hosts
- If You Appreciate What We Do Here On TecMint, You Should Consider:
- Kali Linux Nmap Guide
- Kali Linux working with Nmap:
- Finding live hosts on your network:
- Find open ports via Nmap:
- Find Services Listening on Ports on host Kali machine:
- Find Anonymous FTP Logins on Hosts:
- Check for Vulnerabilities on Hosts:
- Conclusion:
- About the author
- Younis Said
A Practical Guide to Nmap (Network Security Scanner) in Kali Linux
In the second Kali Linux article, the network tool known as ‘nmap‘ will be discussed. While nmap isn’t a Kali only tool, it is one of the most useful network mapping tools in Kali.
Nmap, short for Network Mapper, is maintained by Gordon Lyon (more about Mr. Lyon here: http://insecure.org/fyodor/) and is used by many security professionals all over the world.
The utility works in both Linux and Windows and is command line (CLI) driven. However for those a little more timid of the command line, there is a wonderful graphical frontend for nmap called zenmap.
It is strongly recommended that individuals learn the CLI version of nmap as it provides much more flexibility when compared to the zenmap graphical edition.
What purpose does nmap server? Great question. Nmap allows for an administrator to quickly and thoroughly learn about the systems on a network, hence the name, Network MAPper or nmap.
Nmap has the ability to quickly locate live hosts as well as services associated with that host. Nmap’s functionality can be extended even further with the Nmap Scripting Engine, often abbreviated as NSE.
This scripting engine allows administrators to quickly create a script that can be used to determine if a newly discovered vulnerability exists on their network. Many scripts have been developed and included with most nmap installs.
A word of caution – nmap is a commonly used by people with both good and bad intentions. Extreme caution should be taken to ensure that you aren’t using nmap against systems that permission has not be explicitly provided in a written/legal agreement. Please use caution when using the nmap tool.
System Requirements
- Kali Linux (nmap is available in other operating systems and functions similar to this guide).
- Another computer and permission to scan that computer with nmap – This is often easily done with software such as VirtualBox and the creation of a virtual machine.
- For a good machine to practice with, please read about Metasploitable 2
- Download for MS2 Metasploitable2
- A valid working connection to a network or if using virtual machines, a valid internal network connection for the two machines.
Kali Linux – Working with Nmap
The first step to working with nmap is to log into the Kali Linux machine and if desired, start a graphical session (This first article in this series installed Kali Linux with the Enlightenment Desktop Environment).
During the installation, the installer would have prompted the user for a ‘root‘ user password which will be needed to login. Once logged in to the Kali Linux machine, using the command ‘startx‘ the Enlightenment Desktop Environment can be started – it is worth noting that nmap doesn’t require a desktop environment to run.
Start Desktop Environment in Kali Linux
Once logged into Enlightenment, a terminal window will need to be opened. By clicking on the desktop background, a menu will appear. Navigating to a terminal can be done as follows: Applications -> System -> ‘Xterm‘ or ‘UXterm‘ or ‘Root Terminal‘.
The author is a fan of the shell program called ‘Terminator‘ but this may not show up in a default install of Kali Linux. All shell programs listed will work for the purposes of nmap.
Launch Terminal in Kali Linux
Once a terminal has been launched, the nmap fun can begin. For this particular tutorial, a private network with a Kali machine and a Metasploitable machine was created.
This made things easier and safer since the private network range would ensure that scans remained on safe machines and prevents the vulnerable Metasploitable machine from being compromised by someone else.
How to Find Live Hosts on My Network?
In this example, both of the machines are on a private 192.168.56.0 /24 network. The Kali machine has an IP address of 192.168.56.101 and the Metasploitable machine to be scanned has an IP address of 192.168.56.102.
Let’s say though that the IP address information was unavailable. A quick nmap scan can help to determine what is live on a particular network. This scan is known as a ‘Simple List’ scan hence the -sL arguments passed to the nmap command.
Nmap – Scan Network for Live Hosts
Sadly, this initial scan didn’t return any live hosts. Sometimes this is a factor of the way certain Operating Systems handle port scan network traffic.
Find and Ping All Live Hosts on My Network
Not to worry though, there are some tricks that nmap has available to try to find these machines. This next trick will tell nmap to simply try to ping all the addresses in the 192.168.56.0/24 network.
Nmap – Ping All Connected Live Network Hosts
This time nmap returns some prospective hosts for scanning! In this command, the -sn disables nmap’s default behavior of attempting to port scan a host and simply has nmap try to ping the host.
Find Open Ports on Hosts
Let’s try letting nmap port scan these specific hosts and see what turns up.
Nmap – Network Ports Scan on Host
Wow! This time nmap hit a gold mine. This particular host has quite a bit of open network ports.
These ports all indicate some sort of listening service on this particular machine. Recalling from earlier, the 192.168.56.102 IP address is assigned to the metasploitable vulnerable machine hence why there are so many open ports on this host.
Having this many ports open on most machines is highly abnormal so it may be a wise idea to investigate this machine a little closer. Administrators could track down the physical machine on the network and look at the machine locally but that wouldn’t be much fun especially when nmap could do it for us much quicker!
Find Services Listening on Ports on Hosts
This next scan is a service scan and is often used to try to determine what service may be listening on a particular port on a machine.
Nmap will probe all of the open ports and attempt to banner grab information from the services running on each port.
Nmap – Scan Network Services Listening of Ports
Notice this time nmap provided some suggestions on what nmap thought might be running on this particular port (highlighted in the white box). Also nmap also tried to determine information about the operating system running on this machine as well as its hostname (with great success too!).
Looking through this output should raise quite a few concerns for a network administrator. The very first line claims that VSftpd version 2.3.4 is running on this machine! That’s a REALLY old version of VSftpd.
Searching through ExploitDB, a serious vulnerability was found back in 2011 for this particular version (ExploitDB ID – 17491).
Find Anonymous FTP Logins on Hosts
Let’s have nmap take a closer look at this particular port and see what can be determined.
Nmap – Scan Particular Post on Machine
With this command, nmap was instructed to run its default script (-sC) on the FTP port (-p 21) on the host. While it may or may not be an issue, nmap did find out that anonymous FTP login is allowed on this particular server.
Check for Vulnerabilities on Hosts
This paired with the earlier knowledge about VSftd having an old vulnerability should raise some concern though. Let’s see if nmap has any scripts that attempt to check for the VSftpd vulnerability.
Nmap – Scan VSftpd Vulnerability
Notice that nmap has a NSE script already built for the VSftpd backdoor problem! Let’s try running this script against this host and see what happens but first it may be important to know how to use the script.
Learn Nmap NSE Script Usage
Reading through this description, it is clear that this script can be used to attempt to see if this particular machine is vulnerable to ExploitDB issue identified earlier.
Let’s run the script and see what happens.
Nmap – Scan Host for Vulnerable
Yikes! Nmap’s script returned some dangerous news. This machine is likely a good candidate for a serious investigation. This doesn’t mean that the machine is compromised and being used for horrible/terrible things but it should bring some concerns to the network/security teams.
Nmap has the ability to be extremely selective and extremely quite. Most of what has been done so far has attempted to keep nmap’s network traffic moderately quiet however scanning a personally owned network in this fashion can be extremely time consuming.
Nmap has the ability to do a much more aggressive scan that will often yield much of the same information but in one command instead of several. Let’s take a look at the output of an aggressive scan (Do note – an aggressive scan can set off intrusion detection/prevention systems!).
Nmap – Complete Network Scan on Host
Notice this time, with one command, nmap has returned a lot of the information it returned earlier about the open ports, services, and configurations running on this particular machine. Much of this information can be used to help determine how to protect this machine as well as to evaluate what software may be on a network.
This was just a short, short list of the many useful things that nmap can be used to find on a host or network segment. It is strongly urged that individuals continue to experiment with nmap in a controlled manner on a network that is owned by the individual (Do not practice by scanning other entities!).
There is a official guide on Nmap Network Scanning by author Gordon Lyon, available from Amazon.
Please feel free to post comments or questions (or even more tips/advice on nmap scans)!
If You Appreciate What We Do Here On TecMint, You Should Consider:
TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.
If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.
We are thankful for your never ending support.
Источник
Kali Linux Nmap Guide
Kali Linux working with Nmap:
You will have to open the terminal window once you have logged into enlightenment. The menu will appear by clicking the desktop background. To navigate to the terminal can be done as follows :
Applications –> System –> “Root Terminal”.
All shell programs work for purposes of the Nmap. After the successful launching of the terminal, Nmap fun can begin.
Finding live hosts on your network:
The IP address of the kali machine is 10.0.2.15, and the IP address of the target machine is ‘192.168.56.102’.
What is live on a particular network can be determined by a quick Nmap scan. It is a ‘Simple List’ scan.
Unfortunately, no live hosts were returned by using this initial scan.
Find and Ping All Live Hosts on My Network:
Fortunately, you do not have to worry, because using some tricks enabled by Nmap, we can find these machines. Trick mentioned will tell Nmap to ping all addresses in the 192.168.56.0/24 network.
So, Nmap has returned some potential hosts for scanning.
Find open ports via Nmap:
Let nmap perform a port scan to find particular targets and see the results.
Some listening service on this specific machine is indicated by these ports. An IP address is assigned to metasploitable vulnerable machines; this is why there are open ports on this host. A lot of ports opened on most machines is abnormal. It would be wise to investigate the machine closely. The physical machine on the network can be tracked down by administrators.
Find Services Listening on Ports on host Kali machine:
It is a service scan performed via Nmap, and its purpose is to check which services might be listening on a specific port. Nmap will investigate all open ports and will collect information from services running on each port.
It works to obtain information about the hostname and the current operating system running on the target system. The “vsftpd” version 2.3.4 is running on this machine, which is a pretty old version of VSftpd, which is alarming for the administrator. For this particular version (ExploitDB ID – 17491), a serious vulnerability was found back in 2011.
Find Anonymous FTP Logins on Hosts:
To gather more information, let Nmap have a closer look.
The above command has found out that anonymous FTP sign-in is allowed on this specific server.
Check for Vulnerabilities on Hosts:
As the mentioned earlier version of VSftd is old and vulnerable, so it is quite concerning. Let us see if Nmap can check for the vulnerability of vsftpd.
It is notable that for the VSftpd backdoor problem, Nmap has NSE script, (Nmap Scripting Engine) is one of Nmap’s most useful and adaptable features. It allows users to write simple scripts to mechanize a broad range of networking tasks. Before running this script against the host, we should know how to use it.
It can be used to check if the machine is vulnerable or not.
Run the following script:
Nmap has the quality to be quite and selective. In this manner, to scan a personally owned network can be tedious. A more aggressive scan can be done by using Nmap. It will give somewhat the same information, but the difference that lies is we can do it by using one command instead of using loads of them. Use the following command for aggressive scan:
It is evident that using only one command, Nmap can return loads of information. Much of this information can be used to check what software may be on the network and to determine how to protect this machine.
Conclusion:
Nmap is a versatile tool to be used in the hacking community. This article provides you with a brief description of Nmap and its function.
About the author
Younis Said
I am a freelancing software project developer, a software engineering graduate and a content writer. I love working with Linux and open-source software.
Источник