# NMAP Cheat Sheet ## Table of Contents 1. [Ping Scanning](#ping-scanning) 2. [ARP Scanning](#arp-scanning) 3. [SYN Scanning](#syn-scanning) 4. [UDP Scanning](#udp-scanning) 5. [Useful Nmap Switches](#useful-nmap-switches) 6. [Identifying OS and Applications](#identifying-os-and-applications) 7. [Nmap Scripts](#nmap-scripts) 8. [Batch Script for Nmap](#batch-script-for-nmap) --- ## Ping Scanning \`\`\`bash nmap -sn 192.168.10.1 nmap -sP 192.168.10.2 \`\`\` --- ## ARP Scanning \`\`\`bash nmap -sP -PR 192.168.10.1 \`\`\` > **Note**: Press the spacebar to show the current progression of the scan. --- ## SYN Scanning \`\`\`bash nmap -sS 192.168.10.1 \`\`\` --- ## UDP Scanning \`\`\`bash nmap -sU 192.168.10.1 \`\`\` --- ## Useful Nmap Switches - `-h` : Help - `-v` : Verbose - `-vv` : Very Verbose - `-n` : No DNS Reverse Lookup - `-T` : Sets the speed of the scan (`-T5` being the fastest, `-T0` the slowest) - `-p` : Specify ports - `-p 80` : Specific port - `-p 1-10` : Range of ports - `-p-` : All ports - `-o` : To output a file --- ## Identifying OS and Applications - `-sV` : Enable Version Detection - `-O` : Enable OS Detection - `-A` : Enable OS Detection, Version Detection, Script Scanning, and Traceroute - `--osscan-guess` : Aggressive OS guessing --- ## Nmap Scripts **Syntax**: `nmap —script scriptname targetIP` Examples: \`\`\`bash nmap —script http-headers 192.168.10.1 nmap —script smtp-commands 192.168.10.1 nmap -sV --script=banner 192.168.10.1 nmap -sV --script=smb* 192.168.10.1 nmap --script=http-title 192.168.10.1 nmap --script=http-enum 192.168.10.0/24 \`\`\` > [How to Use Nmap Script Engine (NSE) Scripts in Linux](https://www.tecmint.com/use-nmap-script-engine-nse-scripts-in-linux/) --- ## Batch Script for Nmap 1. First, download Neovim or your favorite text editor. 2. Create a file named `nmapScan.sh`. \`\`\`bash #!/bin/bash nmap -sT -p 1-10000 -v -v -T5 -sV -O --osscan-guess --script=banner -oN 192.168.10.1TCP.txt 192.168.10.1 nmap -sU -p 1-500 -v -v --scan-delay 1s -sV --script=banner -oN 192.168.10.1UDP.txt 192.168.10.1 nmap -sT -p 1-10000 -v -v -T5 -sV -O --osscan-guess --script=banner -oN 192.168.10.2TCP.txt 192.168.10.2 nmap -sU -p 1-500 -v -v --scan-delay 1s -sV --script=banner -oN 192.168.10.2UDP.txt 192.168.10.2 \`\`\` 3. Save and exit. 4. Make the script executable: \`\`\`bash sudo chmod +x nmapScan.sh \`\`\` 5. Run the script: \`\`\`bash sudo ./nmapScan.sh \`\`\` ---