Nmap is a free utility tool for network discovery, port scanning and security auditing, even though we can use it for more than that but in this article we will learn how to do these three things with nmap.
The original author of nmap is Gordon Lyon (Fyodor). Nmap is licensed under GPL v2 and has available ports in many different languages. Nmap is available for Linux, Windows, and Mac OS X. You can download your copy of nmap from their website.
Lets get started with nmap.
When performing pentests we always look for networks we are going to attack. We need to identify live hosts on the network so that we can attack them. There are plenty of tools available for finding live hosts on a network but nmap is one of the best tools for doing this job.
Lets start with simple host (target) discovery scans i,e scans that will tell us which ip address is up on our target network. Those ip addresses which are up on our target network are the ones that are assigned to a device connected on our target network. Every device on the network is going to have a unique ip address.
To perform a simple host discovery scan we use the following command
nmap -v -sn 10.10.10.0/24
flags we used in the above command are
-v for verbose output
-sn to disable port scan (we don't want to scan for ports right now)
Following the flags is the ip address of the target network on which we want to look for live hosts. The /24 at the end of the ip address is the CIDR that specifies the subnet of the network on which we are looking for live hosts.
After running the above command you should get a list of live hosts on your target network.
If you just want to know the list of ip addresses your command is going to scan, you can use the -sL flag of the nmap like this.
nmap -sL 10.10.10.0/24
this command will simply output the list of ip addresses to scan.
We sometimes want to do dns resolution (resolving ip addresses to domain names) when performing our network scans and sometimes we don't want dns resolution. While performing a host discovery scan with nmap if we want to perform dns resolution we use -R flag in our command like this:
nmap -v -sn -R 10.10.10.0/24
And if we don't want to perform dns resolution of hosts during our scan we add the -n flag to our command like this:
nmap -v -sn -n 10.10.10.0/24
After we have discovered the hosts that are up on our target network, we usually put the ip addresses of these hosts into a file for further enumeration.
Next step in our enumeration would be to detect which operating system and which ports are running on these live hosts, for that we run this command:
nmap -O -v 10.10.10.119
here we use -O (capital o not zero) for operating system detection and by default nmap performs SYN Scan for port discovery. However nmap scans for 1000 ports only by default of a particular host.
To make nmap go over a list of ip addresses in a file we use -iL flag like this:
nmap -O -v -iL targetlist
where targetlist is the name of the file which contains ip addresses that we want to perform port scan on.
To make nmap scan all the ports of a target we use the -p flag like this:
nmap -p- -v 10.10.10.121
We can also specify a range of ports using the -p flag like this:
nmap -p1-500 -v 10.10.10.121
here 1-500 means scan all the ports from 1 to 500.
We can use a number of scan techniques to discover open ports on our network but I will only discuss some of them for brevity.
We can perform a TCP SYN scan using nmap with -sS flag like this:
nmap -sS -v 10.10.10.150
We have also flags for TCP connect and ACK scans which are -sT -sA
nmap -sT -v 10.10.10.150
nmap -sA -v 10.10.10.150
We can also perform UDP scan as well instead of TCP scan using -sU flag
nmap -sU -v 10.10.10.150
We can perform TCP Null, FIN, and Xmas scans using the flags -sN, -sF, -sX
nmap -sN -v 10.10.10.150
nmap -sF -v 10.10.10.150
nmap -sX -v 10.10.10.150
If you don't know what these scans are then please visit Port Scanning Techniques and Algorithms for explanation.
After discovering the open ports on our target host, we want to enumerate what services are running on those open ports. To enumerate services and versions information on open ports we use the -sV flag like this:
nmap -sV -v 10.10.10.118
This should give us information about what services are running on what ports and what versions of those services are running on the target host.
nmap has an interesting feature called NSE nmap scripting engine. It allows users to write their own scripts, using the Lua programming language, to automate a wide variety of networking tasks. nmap ships with a diverse set of scripts which are very helpful to enumerate a target. To use the nmap default set of scripts while enumerating the target, we use the -sC flag like this:
nmap -sC -sV -v 10.10.10.118
We can also save the results of our nmap scans to a file using the -o flag like this
nmap -sC -sV -v -oA defaultscan 10.10.10.119
here -oA tells the nmap to output results in the three major formats at once and defaultscan is the name of the file that will be prepended to all the three output files.
This is the end of this short tutorial see you next time.
References:
https://nmap.org/book/scan-methods-null-fin-xmas-scan.html
Related articles
- Ethical Hacker Tools
- Hacker Tools Github
- Hacker Tools For Windows
- Top Pentest Tools
- Best Pentesting Tools 2018
- Pentest Tools Subdomain
- Hacking Tools Hardware
- Hacker Tools 2019
- Github Hacking Tools
- Hacker Tools Software
- Android Hack Tools Github
- Hacker Tools
- Computer Hacker
- Android Hack Tools Github
- Black Hat Hacker Tools
- Black Hat Hacker Tools
- Hacking Tools Windows 10
- What Are Hacking Tools
- Pentest Automation Tools
- Hacking Tools For Windows Free Download
- Hacking Tools Kit
- Pentest Tools Review
- Tools 4 Hack
- Hack Website Online Tool
- Pentest Tools Framework
- Nsa Hack Tools Download
- Hacker Tools Software
- Hacker Tools Free Download
- Tools Used For Hacking
- Hacker Tools Mac
- Game Hacking
- Hacking Tools 2019
- Hacks And Tools
- Hack Tools
- Hacker Tools Free Download
- Nsa Hack Tools Download
- Hacks And Tools
- Hacking Tools Pc
- How To Make Hacking Tools
- Pentest Tools Website Vulnerability
- Hacking Tools Pc
- Hack Apps
- Hack Tools For Mac
- Hacker Tools Windows
- Tools 4 Hack
- Android Hack Tools Github
- Hacking Tools For Kali Linux
- Pentest Reporting Tools
- Hack Tools Pc
- Hacker Tools Software
- Underground Hacker Sites
- Hacker Tool Kit
- Hacking Tools Windows 10
- Hacker Security Tools
- Hack Tools Mac
- Hacker Tools Software
- Pentest Recon Tools
- Hacking Tools For Games
- Hack Tools 2019
- Best Hacking Tools 2020
- Hacker Tools Windows
- Hacking Tools Software
- Hacking Tools Windows
- Pentest Tools Download
- Underground Hacker Sites
- Hack Tools For Mac
- Hacker Tools Github
- Hack Tools Github
- Bluetooth Hacking Tools Kali
- Hack Rom Tools
- Hacking App
- Hack Tool Apk
- Hacker Tools Hardware
- Tools 4 Hack
- Hack Apps
- Pentest Tools For Mac
- Hack Tools For Games
- Nsa Hacker Tools
- Blackhat Hacker Tools
- Black Hat Hacker Tools
- Pentest Recon Tools
- Pentest Tools Apk
- World No 1 Hacker Software
- Blackhat Hacker Tools
- Pentest Tools Download
- Pentest Tools List
- Hack Tools 2019
- Kik Hack Tools
- Game Hacking
- Hack Tools For Ubuntu
- Underground Hacker Sites
- Pentest Tools Kali Linux
- Hack Tools Download
- Growth Hacker Tools
- Best Hacking Tools 2019
- Kik Hack Tools
- Physical Pentest Tools
- Hack Tools For Ubuntu
- Hacking Tools Mac
- Hacker
- Hack Tools For Games
- Hacking Tools For Windows 7
- Pentest Tools Free
- Hacking Tools Mac
- Blackhat Hacker Tools
- Tools 4 Hack
- Top Pentest Tools
- What Are Hacking Tools
- Hacker Tools Windows
- Hacking Tools For Beginners
- Pentest Tools Download
- Hacker Tools For Windows
- Hacking Tools 2020
- Hacker Tool Kit
- Hacking Tools For Windows
- Tools Used For Hacking
- Hacking Tools Github
- Pentest Tools Windows
- Underground Hacker Sites
- Pentest Tools For Ubuntu
- Hacker Tools 2020
- Pentest Tools Android
- Hacker Tools 2019
- Hack Tools For Games
- Hacking Tools 2019
- What Is Hacking Tools
- Pentest Tools Windows
- Hacker
- Hack Tools Github
- Hacking Tools Free Download
- Hackrf Tools
- Hacking Tools Windows
- Hack Tools
- Pentest Tools Download
- Hack Tools For Games
- Hack Tool Apk No Root
- Hacker Tools Online
- Hacking Tools Hardware
- Github Hacking Tools
- Hacker Tools Windows
- Pentest Tools
- Pentest Tools Open Source
- Pentest Tools Port Scanner
- New Hacker Tools
- Hacking Tools Github
- Hacking Tools 2020
- Hacking Tools 2020
- Hacker Tools Github
- Pentest Tools Online
- Usb Pentest Tools
- Hacker Tools For Ios
- World No 1 Hacker Software
- Pentest Recon Tools
- Top Pentest Tools
- Ethical Hacker Tools
- Easy Hack Tools
- Pentest Tools Port Scanner
- Install Pentest Tools Ubuntu
- Hack Tools
- Pentest Tools Android
- Hacking Tools Free Download
- New Hacker Tools
- Android Hack Tools Github
- Pentest Automation Tools
- Pentest Tools Android
- Hack Tools For Games
- Hack Tools For Ubuntu
- Hacking Tools And Software
- Wifi Hacker Tools For Windows
- Hacking Tools For Kali Linux
- Install Pentest Tools Ubuntu
- Hacking Tools For Games
- Hacker
- Hacker Tools Hardware