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
- Hacker Tools Software
- Pentest Tools Android
- Pentest Tools For Windows
- Android Hack Tools Github
- Nsa Hacker Tools
- Hacking App
- Hack App
- Hack Tool Apk No Root
- Hacker Tool Kit
- Hack Tools For Windows
- Hacking Tools Hardware
- Pentest Tools Android
- Pentest Tools Download
- Pentest Tools Apk
- Pentest Tools For Windows
- Hack Tools Pc
- Hacker Search Tools
- Hack Apps
- Pentest Reporting Tools
- Hak5 Tools
- Free Pentest Tools For Windows
- Wifi Hacker Tools For Windows
- Hacking Tools Windows 10
- Pentest Automation Tools
- Hackers Toolbox
- Hacking Tools For Beginners
- Pentest Tools Free
- Hacker Tools Free Download
- Hacking Tools For Beginners
- Hacker Tools List
- Pentest Tools For Mac
- Pentest Tools Website
- Hacker Tools Windows
- Hacker Tools For Pc
- Hacking Tools For Windows Free Download
- Blackhat Hacker Tools
- Hack Apps
- Wifi Hacker Tools For Windows
- Hacking Tools Mac
- Hacking Tools
- Best Hacking Tools 2019
- Kik Hack Tools
- Hacker Tools For Pc
- Usb Pentest Tools
- Hack Tools For Windows
- Pentest Reporting Tools
- Hacking Tools Name
- Free Pentest Tools For Windows
- Pentest Tools
- Pentest Tools List
- Pentest Tools Alternative
- Tools 4 Hack
- Hacking Tools Windows 10
- Bluetooth Hacking Tools Kali
- Hacker Tools Github
- Pentest Tools Find Subdomains
- Nsa Hacker Tools
- Top Pentest Tools
- Hack Tools Online
- Pentest Tools Online
- Hacking App
- Pentest Tools Windows
- Free Pentest Tools For Windows
- Pentest Tools Android
- Tools 4 Hack
- Bluetooth Hacking Tools Kali
- Hacking Tools For Mac
- Pentest Recon Tools
- How To Make Hacking Tools
- Bluetooth Hacking Tools Kali
- Android Hack Tools Github
- Android Hack Tools Github
- Android Hack Tools Github
- Hack App
- Pentest Tools Online
- Hack Tools Github
- Pentest Tools Download
- Pentest Tools Framework
- Computer Hacker
- How To Install Pentest Tools In Ubuntu
- World No 1 Hacker Software
- Hacking Tools For Windows 7
- Pentest Tools Url Fuzzer
- Hacking Tools For Kali Linux
- Hacking Tools Online
- Wifi Hacker Tools For Windows
- Hacking Tools And Software
- Hacking Apps
- Pentest Tools Android
- Physical Pentest Tools
- Hacking App
- Kik Hack Tools
- Pentest Automation Tools
- Pentest Box Tools Download
- Hacker Tools Apk
- Hack Rom Tools
- Hacker Tools Free Download
- Pentest Tools Download
- Pentest Tools Windows
- Pentest Tools
- Hack Tools For Pc
- Usb Pentest Tools
- Tools 4 Hack
- Hacker Tools Apk Download
- Hacker Security Tools
- Hacker Tools
- Pentest Tools Tcp Port Scanner
- Pentest Tools Open Source
- Pentest Recon Tools
- Hacker Hardware Tools
- Hackers Toolbox
- Hack Tools For Pc
- Hacking Tools For Windows Free Download
- Hacking Tools Pc
- Hacker Tools Windows
- Hacking Tools For Pc
- Github Hacking Tools
- Hacker Search Tools
- Pentest Tools For Windows