“Nmap (“Network Mapper”) is a free and open source (license) utility for network discovery and security auditing. Many systems and network administrators also find it useful for tasks such as network inventory, managing service upgrade schedules, and monitoring host or service up time. Nmap uses raw IP packets in novel ways to determine what hosts are available on the network, what services (application name and version) those hosts are offering, what operating systems (and OS versions) they are running, what type of packet filters/firewalls are in use, and dozens of other characteristics. It was designed to rapidly scan large networks, but works fine against single hosts. Nmap runs on all major computer operating systems, and official binary packages are available for Linux, Windows, and Mac OS X. In addition to the classic command-line Nmap executable, the Nmap suite includes an advanced GUI and results viewer (Zenmap), a flexible data transfer, redirection, and debugging tool (Ncat), a utility for comparing scan results (Ndiff), and a packet generation and response analysis tool (Nping).”
This definition from the Nmap site itself is fairly easy to understand however I created a little info sheet for myself from various sources that I was able to understand the best.
Nmap (network mapper)
The site below contains what Nmap is capable of, listing the commands as well as what their functions are. This is super convenient in comparison to using the nmap -h command.
Commands Cheat Sheet: https://highon.coffee/blog/nmap-cheat-sheet/
What is Nmap?
- used to discover hosts and services on a computer network, builds a map of the network
- sends specially crafted packets to the target host(s) and analyzes their responses
- host discovery and operating-system detection provide more advanced service detection, vulnerability detection, and other features
- Nmap can adapt to network conditions including latency and congestion during a scan
Features of Nmap
- Host discovery – Identifying hosts on a network. For example, listing the hosts that respond to TCP and/or ICMP requests or have a particular port open.
- Port scanning – Enumerating the open ports on target hosts.
- Version detection – Interrogating network services on remote devices to determine application name and version number.
- OS detection – Determining the operating system and hardware characteristics of network devices.
- Scriptable interaction with the target – using Nmap Scripting Engine (NSE) and Lua programming language.
The features in Nmap are capable of being used to do the following and much more:
- Can Identify open ports on a target host
- Examining the security of a device or firewall. This is done by identifying the network connections which can be made to, or through it.
- Of course, network mapping. Important to understand the physical connectivity of a network which is difficult to do remotely but with Nmap becomes possible.
- Can Identify new servers added to the network
- Can be used for response analysis and response time measurements being that Nmap can generate traffic to hosts on a network
- Finding exploitable vulnerabilities in a network
Definitions not explained in descriptions
*TCP(Transmission Control Protocol) – core protocol of the internet protocol suite. Provides reliable, ordered, and error-checked delivery of stream of bytes between applications running on hosts communicating by an IP network.
*ICMP(Internet Control Message Protocol) – another main protocol for internet suite, used by network devices like routers to send error messages