Garden of KnowledgeApplied Sciences › Computer Science › Software › Security › Offensive › Tools
February 15, 2025

Why nmap choose to scan these ports ?

nmap is a command line interface port scanner.

A ttl of 128 means that the operating system is probably Windows

Why nmap choose to scan these ports ?§

By default, nmap creates a map of the most frequently used ports. If the user performs a simple nmap IP scan. The command will scan the 1000 most used ports. You can find this map in the /usr/share/nmap/nmap-services file.

Scanning Options§

Nmap OptionDescription
-snDisables port scanning.
-PnDisables ICMP Echo Requests
-nDisables DNS Resolution.
-PEPerforms the ping scan by using ICMP Echo Requests against the target.
--packet-traceShows all packets sent and received.
--reasonDisplays the reason for a specific result.
--disable-arp-pingDisables ARP Ping Requests.
--top-ports=<num>Scans the specified top ports that have been defined as most frequent.
-p-Scan all ports.
-p22-110Scan all ports between 22 and 110.
-p22,25Scans only the specified ports 22 and 25.
-FScans top 100 ports.
-sSPerforms an TCP SYN-Scan.
-sAPerforms an TCP ACK-Scan.
-sUPerforms an UDP Scan.
-sVScans the discovered services for their versions.
-sCPerform a Script Scan with scripts that are categorized as “default”.
--script <script>Performs a Script Scan by using the specified scripts.
-OPerforms an OS Detection Scan to determine the OS of the target.
-APerforms OS Detection, Service Detection, and traceroute scans.
-D RND:5Sets the number of random Decoys that will be used to scan the target.
-eSpecifies the network interface that is used for the scan.
-S 10.10.10.200Specifies the source IP address for the scan.
-gSpecifies the source port for the scan.
--dns-server <ns>DNS resolution is performed by using a specified name server.

Output Options§

Nmap OptionDescription
-oA filenameStores the results in all available formats starting with the name of “filename”.
-oN filenameStores the results in normal format with the name “filename”.
-oG filenameStores the results in “grepable” format with the name of “filename”.
-oX filenameStores the results in XML format with the name of “filename”.

Performance Options§

Nmap OptionDescription
--max-retries <num>Sets the number of retries for scans of specific ports.
--stats-every=5sDisplays scan’s status every 5 seconds.
-v/-vvDisplays verbose output during the scan.
--initial-rtt-timeout 50msSets the specified time value as initial RTT timeout.
--max-rtt-timeout 100msSets the specified time value as maximum RTT timeout.
--min-rate 300Sets the number of packets that will be sent simultaneously.
-T <0-5>Specifies the specific timing template.

Available scirpts§

Nmap proposes a lot of script for specific usage each.

CategoryDescriptionExample Scripts
AuthScripts for authentication bypass or testing.http-auth, ssh-auth-methods, smb-brute
BroadcastDiscovers hosts on a network using broadcast and multicast.broadcast-dhcp-discover, broadcast-ping
BrutePerforms brute-force password attacks.ftp-brute, http-brute, smtp-brute
DefaultDefault scripts run with -sC or --script=default.ssl-cert, dns-service-discovery, http-title
DiscoveryFinds hosts, services, or information about the target.dns-zone-transfer, snmp-brute, ssh-hostkey
DosTests or executes Denial of Service (DoS) attacks.syn-flood, http-slowloris
ExploitExploits vulnerabilities on the target system.http-shellshock, ms08-067, cve-2020-0796
ExternalUses external web services to gather information.ip-geolocation, whois
FuzzerFuzzes services to find potential vulnerabilities.ftp-fuzz, http-fuzz
IntrusivePerforms intrusive or potentially harmful checks.http-sql-injection, smb-vuln-ms17-010
MalwareDetects malware or backdoors.http-malware-host, irc-botnet-channels
SafeScripts considered non-intrusive and safe for production systems.banner, http-headers
VersionEnhances version detection for services.ssl-enum-ciphers, http-server-header
VulnDetects known vulnerabilities in software.http-vuln-cve2017-5638, smb-vuln-ms08-067

To explore all available scripts on your system, you can use the following command:

ls /usr/share/nmap/scripts

You can count them via the command:

ls /usr/share/nmap/scripts | wc -l

Or use nmap directly to list them:

nmap --script-help all
—The Gardener