Nmap Scanning
Nmap is a versatile tool used for network discovery, scanning, and security auditing. It allows you to combine multiple options in a single command to perform various tasks efficiently. Below is a compact guide to the most commonly used Nmap arguments.
Basic Syntax#
Nmap allows you to combine different options in a single command for flexible scanning. The general syntax is:
nmap [options] [target]
For example:
nmap -sSVO -p- target_ip
This performs a SYN scan (-sS), detects service versions (-V), identifies the operating system (-O), and scans all ports (-p-) in one execution.
Scanning Options#
Scan Types:
-sS: Perform a SYN scan (stealth scan).-sT: Perform a full TCP connect scan.-sU: Perform a UDP scan.-sA: Perform a TCP ACK scan (useful for firewall rules detection).-sn: Ping scan (discovery without scanning ports).-Pn: Disable ping to scan directly without checking host availability.
Port Specification:
-p-: Scan all 65535 ports.-p [port_list]: Scan specific ports or ranges (e.g.,-p 22,80,443).-F: Scan the top 100 common ports.--top-ports <num>: Scan the top<num>most commonly used ports.
Service and OS Detection:
-sV: Detect service versions on open ports.-O: Perform OS detection to identify the target’s operating system.-A: Aggressive scan (combines OS detection, service version detection, and script scanning).
Timing and Performance:
-T<0-5>: Timing template for scan speed (0 is slowest, 5 is fastest).--min-rate <num>: Ensure a minimum packet send rate (e.g.,--min-rate 10000sends 10,000 packets per second).--max-retries <num>: Set the maximum number of retries for scanning specific ports.--stats-every <time>: Show scan progress at regular intervals (e.g.,--stats-every=5s).-v/-vv: Increase verbosity (more detailed scan output).
Host Discovery and Obfuscation#
Host Discovery:
-PE: Perform a ping scan using ICMP Echo Requests.--disable-arp-ping: Disable ARP Ping Requests for discovering hosts.-n: Disable DNS resolution (speeds up scans by skipping DNS queries).
Obfuscation and Interface:
-D RND:<num>: Use random decoys to obfuscate the source IP.-e <interface>: Specify the network interface to use for the scan.-S <source_ip>: Set a specific source IP address for the scan.-g <port>: Specify the source port for the scan.--dns-server <ns>: Use a specified name server for DNS resolution.
Output Options#
Normal Output:
-oN <file>: Save the scan results in a human-readable format.
Grepable Output:
-oG <file>: Save results in a grepable format (easy to filter withgrep).
XML Output:
-oX <file>: Save the results in XML format.
Save in All Formats:
-oA <file>: Store results in all available formats (normal,XML,grepable).
Example Command#
Here’s an example combining multiple options into one command:
nmap -sSVO -p 22,80,443 -T4 --min-rate 10000 -oN result.txt target_ip
-sS: SYN scan (stealth).-V: Detect service versions.-O: OS detection.-p 22,80,443: Scan ports 22, 80, and 443.-T4: Use an aggressive timing template for faster results.--min-rate 10000: Send at least 10,000 packets per second.-oN result.txt: Save the output in a readable fileresult.txt.
With Nmap, you can easily combine options into a single command for efficient scanning. By understanding how different arguments and options work together, you can optimize network discovery and auditing processes.