Nmap Cheat Sheet: Network Discovery dan Port Scanning untuk Security Assessment
Nmap Cheat Sheet untuk network discovery, port scanning, service detection, NSE, UDP scanning, reporting, detection, dan hardening dalam security assessment.
Nmap adalah salah satu tool paling fundamental dalam network security assessment. Sebelum membicarakan exploit, privilege escalation, atau lateral movement, seorang security engineer harus terlebih dahulu memahami apa yang sebenarnya ada di jaringan: host mana yang aktif, port apa yang terbuka, service apa yang berjalan, dan bagaimana hasil reconnaissance tersebut harus dibaca.
Artikel #01 dalam Seri Red Team Cheat Sheet ini membahas Nmap dari fondasinya sampai workflow yang praktis untuk lab dan security assessment yang memiliki authorization.
Batas penggunaan: jalankan Nmap hanya pada sistem milik sendiri, lab/CTF, atau target yang secara eksplisit termasuk dalam scope assessment. Port scanning dapat menghasilkan traffic yang mudah terdeteksi dan pada sistem tertentu dapat memengaruhi service.
Apa Itu Nmap?
Nmap (Network Mapper) adalah tool open-source untuk network discovery dan security auditing. Dalam praktiknya Nmap dapat digunakan untuk menemukan host, memeriksa port TCP/UDP, mengidentifikasi service dan versinya, melakukan perkiraan OS fingerprinting, serta menjalankan script melalui Nmap Scripting Engine (NSE).
Hal terpenting adalah memahami bahwa Nmap bukan sekadar "port scanner". Ia merupakan mesin network enumeration.
Misalnya hasil scan menunjukkan:
22/tcp open ssh
80/tcp open http
3306/tcp open mysql
Informasi tersebut belum mengatakan bahwa host dapat dieksploitasi. Yang kita ketahui baru attack surface: SSH, HTTP, dan MySQL dapat dijangkau dari posisi scanner.
Langkah berikutnya adalah memahami konfigurasi, versi, authentication, exposure, dan konteks masing-masing service.
Instalasi Nmap
Pada Debian, Ubuntu, atau Kali Linux:
sudo apt update
sudo apt install nmap
Pada macOS dengan Homebrew:
brew install nmap
Verifikasi instalasi:
nmap --version
Untuk Windows, installer resmi tersedia dari situs Nmap.
Lab yang Digunakan
Agar contoh mudah diikuti, bayangkan sebuah network lab:
Scanner : 10.10.10.5
Web Server : 10.10.10.15
Network : 10.10.10.0/24
Alamat tersebut hanyalah contoh private network. Ganti dengan alamat lab Anda sendiri.
Sebaiknya gunakan VM atau VLAN terisolasi dan snapshot target sebelum eksperimen.
1. Basic Port Scan
Bentuk paling sederhana:
nmap 10.10.10.15
Secara default Nmap memeriksa sekumpulan port TCP yang umum digunakan.
Output dapat terlihat seperti:
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
3306/tcp open mysql
Ada tiga informasi penting:
- PORT — nomor port dan protocol;
- STATE — kondisi port menurut hasil probe;
- SERVICE — perkiraan service berdasarkan database Nmap.
Jangan langsung menganggap kolom SERVICE sebagai bukti pasti software yang berjalan. Untuk memperoleh informasi lebih baik kita membutuhkan service detection.
Memahami Port State
Beberapa state penting pada Nmap adalah:
open
Ada aplikasi yang menerima koneksi pada port tersebut.
closed
Host dapat dijangkau tetapi tidak ada aplikasi yang menerima koneksi pada port itu.
filtered
Nmap tidak dapat memastikan apakah port terbuka karena packet filtering, firewall, atau mekanisme lain menghalangi probe.
open|filtered
Nmap tidak dapat menentukan apakah port berada pada kondisi open atau filtered. Kondisi ini sering muncul pada beberapa jenis UDP scan.
Memahami state jauh lebih penting daripada sekadar menghitung jumlah port terbuka.
2. Host Discovery
Sebelum melakukan port scan terhadap banyak alamat, kita dapat melakukan host discovery.
nmap -sn 10.10.10.0/24
Opsi -sn meminta Nmap melakukan host discovery tanpa port scan standar.
Ini berguna untuk menjawab pertanyaan pertama:
Host mana yang tampak aktif pada network segment ini?
Dalam environment enterprise, hasil discovery tidak selalu lengkap. Firewall, endpoint policy, routing, dan ICMP filtering dapat memengaruhi hasil.
3. Memilih Port yang Akan Dipindai
Scan port tertentu:
nmap -p 22,80,443 10.10.10.15
Scan rentang port:
nmap -p 1-1024 10.10.10.15
Scan seluruh TCP port:
nmap -p- 10.10.10.15
-p- berarti memeriksa port 1 sampai 65535.
Full port scan menghasilkan lebih banyak traffic dan membutuhkan waktu lebih panjang. Dalam assessment profesional, jangan otomatis menggunakan opsi paling agresif. Sesuaikan dengan tujuan dan Rules of Engagement.
4. SYN Scan
Salah satu mode Nmap yang sangat dikenal adalah SYN scan:
sudo nmap -sS 10.10.10.15
Pada TCP, komunikasi normal dimulai melalui three-way handshake:
Client -> SYN
Server -> SYN/ACK
Client -> ACK
SYN scan menggunakan karakteristik handshake TCP untuk menentukan state port tanpa harus membangun sesi aplikasi penuh pada pola normalnya.
Karena membutuhkan raw packet capability, pada banyak platform mode ini memerlukan privilege administrator/root.
Istilah "stealth scan" sering digunakan untuk SYN scan, tetapi jangan salah mengartikannya sebagai tidak terlihat. Firewall, IDS, IPS, NDR, dan telemetry modern tetap dapat melihat pola scanning.
5. TCP Connect Scan
Jika raw packet privilege tidak tersedia, Nmap dapat menggunakan TCP connect scan:
nmap -sT 10.10.10.15
Mode ini menggunakan mekanisme koneksi TCP dari operating system.
Secara konseptual -sT lebih dekat dengan koneksi TCP biasa dibanding SYN scan.
Untuk security engineer, perbedaan -sS dan -sT penting karena keduanya dapat menghasilkan telemetry yang berbeda pada target maupun network monitoring.
6. Service dan Version Detection
Mengetahui port 80 terbuka belum cukup.
Gunakan:
nmap -sV 10.10.10.15
Nmap akan melakukan probing untuk memperkirakan software dan versi service.
Contoh:
22/tcp open ssh OpenSSH
80/tcp open http nginx
Informasi versi sangat berguna untuk inventory dan vulnerability assessment, tetapi jangan menganggap fingerprint selalu 100% akurat.
Reverse proxy, banner modification, custom build, load balancer, dan konfigurasi tertentu dapat memengaruhi hasil.
7. Default NSE Scripts
Nmap memiliki Nmap Scripting Engine (NSE).
Salah satu penggunaan yang umum:
nmap -sC 10.10.10.15
-sC menjalankan kumpulan script default.
Sering digunakan bersama service detection:
nmap -sC -sV 10.10.10.15
Kombinasi ini sangat berguna untuk enumeration awal karena menghasilkan konteks lebih banyak daripada port scan biasa.
Namun NSE memiliki banyak kategori script dengan perilaku berbeda. Jangan menjalankan script yang belum dipahami terhadap production hanya karena ditemukan dalam cheat sheet.
8. OS Detection
Nmap dapat mencoba memperkirakan operating system target:
sudo nmap -O 10.10.10.15
OS fingerprinting bekerja dengan menganalisis bagaimana network stack target merespons berbagai probe.
Hasilnya merupakan estimasi, bukan identitas absolut.
Network device, firewall, NAT, virtualisasi, dan kondisi jaringan dapat memengaruhi akurasi.
9. Aggressive Detection
Nmap menyediakan opsi:
nmap -A 10.10.10.15
Opsi ini mengaktifkan beberapa kemampuan discovery sekaligus, termasuk detection yang lebih luas.
Nama -A sering membuat pemula menganggapnya tombol "scan terbaik". Itu cara berpikir yang keliru.
Semakin banyak probe yang dikirim, semakin besar pula footprint dan waktu scanning. Gunakan ketika memang membutuhkan informasi tersebut.
10. Scan UDP
Tidak semua service menggunakan TCP.
UDP scan:
sudo nmap -sU 10.10.10.15
UDP scanning biasanya lebih lambat dan interpretasinya lebih kompleks karena UDP tidak memiliki handshake seperti TCP.
Untuk assessment yang lebih terarah, pilih port tertentu:
sudo nmap -sU -p 53,123,161 10.10.10.15
Contoh service yang sering menggunakan UDP antara lain DNS, NTP, dan SNMP.
11. Ketika Host Discovery Tidak Mendapat Respons
Kadang host diketahui aktif tetapi discovery Nmap tidak menganggapnya online karena probe discovery diblokir.
Dalam lab atau scope yang sudah dipastikan, opsi berikut dapat digunakan:
nmap -Pn 10.10.10.15
-Pn melewati host discovery dan memperlakukan target sebagai online untuk tahap scanning.
Konsekuensinya jelas: jika digunakan pada rentang besar, Nmap akan mencoba melakukan scan terhadap setiap alamat, termasuk yang sebenarnya tidak aktif.
12. Menyimpan Hasil Scan
Jangan membangun assessment berdasarkan terminal history.
Nmap dapat menyimpan output normal:
nmap -oN scan.txt 10.10.10.15
Output XML:
nmap -oX scan.xml 10.10.10.15
Atau beberapa format sekaligus:
nmap -oA assessment-01 10.10.10.15
-oA sangat berguna karena hasil dapat dipakai untuk dokumentasi dan diproses tool lain.
Gunakan nama file yang konsisten, misalnya:
2026-08-20-webserver-01
2026-08-20-dmz-discovery
2026-08-20-internal-segment-a
Dokumentasi yang baik adalah bagian dari assessment, bukan pekerjaan tambahan setelah assessment selesai.
Nmap Cheat Sheet Cepat
# Basic scan
nmap 10.10.10.15
# Host discovery
nmap -sn 10.10.10.0/24
# Specific ports
nmap -p 22,80,443 10.10.10.15
# All TCP ports
nmap -p- 10.10.10.15
# SYN scan
sudo nmap -sS 10.10.10.15
# TCP connect scan
nmap -sT 10.10.10.15
# Service/version detection
nmap -sV 10.10.10.15
# Default NSE scripts + version detection
nmap -sC -sV 10.10.10.15
# OS detection
sudo nmap -O 10.10.10.15
# UDP scan on selected ports
sudo nmap -sU -p 53,123,161 10.10.10.15
# Skip host discovery
nmap -Pn 10.10.10.15
# Save multiple output formats
nmap -oA assessment 10.10.10.15
Cheat sheet ini sebaiknya digunakan sebagai pengingat syntax setelah memahami fungsi setiap opsi.
Workflow Nmap untuk Security Assessment
Daripada langsung menjalankan satu command besar, workflow bertahap biasanya menghasilkan data yang lebih mudah dianalisis.
Tahap 1 — Tentukan Scope
Pastikan alamat dan network yang akan dipindai termasuk dalam authorization.
Misalnya:
Scope: 10.10.10.0/24
Exclude: 10.10.10.1
Dokumentasikan pengecualian sebelum scanning.
Tahap 2 — Discovery
nmap -sn 10.10.10.0/24 -oA discovery
Tujuannya membuat inventory awal host yang terlihat.
Tahap 3 — Port Enumeration
Terhadap host yang relevan:
nmap -p- 10.10.10.15 -oA ports-web01
Tahap 4 — Service Enumeration
Setelah port diketahui, fokuskan probe pada port yang ditemukan:
nmap -sC -sV -p 22,80,3306 10.10.10.15 -oA services-web01
Pendekatan bertahap memisahkan discovery, port enumeration, dan service enumeration sehingga evidence lebih mudah dibaca.
Studi Kasus: Web Server Internal
Misalkan sebuah server internal memberikan hasil:
22/tcp open ssh
80/tcp open http
3306/tcp open mysql
Kesalahan pemula adalah langsung mencari exploit untuk ketiga service tersebut.
Security assessor yang baik justru mulai bertanya:
- Mengapa MySQL dapat dijangkau dari network scanner?
- Apakah port 3306 memang dibutuhkan dari segment tersebut?
- Apakah SSH hanya seharusnya dapat diakses dari management network?
- Apakah HTTP seharusnya dialihkan ke HTTPS?
- Apakah service version sesuai baseline organisasi?
- Apakah firewall rule terlalu luas?
Temuan terbesar mungkin bukan vulnerability software, melainkan arsitektur jaringan yang terlalu permisif.
Inilah perbedaan antara menjalankan scanner dan melakukan security assessment.
Perspektif Blue Team: Seperti Apa Nmap Terlihat?
Port scanning meninggalkan pola network.
Secara sederhana, satu source host dapat mencoba berkomunikasi dengan banyak destination port dalam waktu relatif singkat. Network IDS/IPS, firewall, NDR, dan SIEM dapat menggunakan pola tersebut sebagai indikator reconnaissance.
Blue Team dapat memonitor:
- jumlah destination port per source IP;
- koneksi ke port yang jarang digunakan;
- banyak koneksi gagal dalam interval pendek;
- scan lintas banyak host;
- pola SYN yang tidak berkembang menjadi sesi normal;
- aktivitas dari workstation yang biasanya tidak melakukan network administration.
Detection tidak boleh hanya berbasis "lebih dari X port berarti attacker". Vulnerability scanner, monitoring system, inventory platform, dan administrator dapat menghasilkan pola serupa.
Context menentukan kualitas detection.
Hardening Berdasarkan Temuan Nmap
Nmap sering mengungkap masalah yang sebenarnya sederhana.
Tutup Service yang Tidak Dibutuhkan
Setiap service yang tidak diperlukan memperbesar attack surface.
Batasi dengan Firewall
Database tidak harus dapat diakses seluruh user network hanya karena aplikasinya membutuhkan database.
Gunakan Network Segmentation
Pisahkan management, server, workstation, guest, IoT, dan zone lain sesuai kebutuhan organisasi.
Batasi Management Interface
SSH, RDP, hypervisor management, database administration, dan interface administratif lainnya sebaiknya hanya dapat dijangkau dari network yang memang membutuhkan akses.
Patch dan Lifecycle Management
Service detection dapat membantu menemukan software lama, tetapi hasilnya harus diverifikasi terhadap inventory resmi.
Monitoring
Firewall rule tanpa logging membuat investigasi jauh lebih sulit. Tentukan telemetry yang diperlukan berdasarkan risiko.
Kesalahan Umum Menggunakan Nmap
Menjalankan -A untuk Semua Target
Lebih banyak informasi tidak selalu berarti assessment lebih baik. Pilih probe sesuai kebutuhan.
Menganggap -sS Tidak Terdeteksi
SYN scan bukan jubah tembus pandang. Security monitoring modern dapat mendeteksi reconnaissance berdasarkan pola traffic.
Menganggap Service Detection Selalu Benar
Fingerprint adalah evidence yang perlu diverifikasi.
Scan Seluruh Network Tanpa Scope
Kesalahan alamat dapat mengubah security assessment menjadi insiden operasional.
Tidak Menyimpan Output
Jika evidence hanya berada di scrollback terminal, proses reporting akan menyakitkan.
Mengejar Exploit Sebelum Memahami Arsitektur
Port terbuka adalah awal pertanyaan, bukan akhir analisis.
Nmap dalam Red Team Workflow
Nmap biasanya berada pada fase awal, tetapi hasilnya dapat memengaruhi seluruh assessment.
Alurnya dapat terlihat seperti:
Scope
↓
Host Discovery
↓
Port Enumeration
↓
Service Detection
↓
Attack Surface Mapping
↓
Focused Enumeration
↓
Risk Validation
↓
Detection & Hardening
Yang menarik: command Nmap hanya sebagian kecil dari pekerjaan. Nilai sebenarnya berasal dari kemampuan membaca hasil dan menghubungkannya dengan arsitektur sistem.
Penutup
Nmap adalah tool yang terlihat sederhana tetapi mengajarkan salah satu kemampuan paling penting dalam cybersecurity: enumeration.
Jangan mulai dari pertanyaan "exploit apa yang bisa digunakan?". Mulailah dengan:
Apa yang tersedia, mengapa tersedia, siapa yang seharusnya dapat mengaksesnya, dan apakah exposure tersebut memang diperlukan?
Dengan pola pikir itu, Nmap berguna bukan hanya bagi Red Team. Network engineer, system administrator, vulnerability management team, auditor, dan Blue Team juga dapat menggunakannya untuk memahami attack surface organisasi.
Pada artikel berikutnya kita bergerak dari network discovery menuju web content discovery melalui FFUF Cheat Sheet: Content Discovery dan Web Fuzzing.
Referensi Resmi
- Nmap — https://nmap.org/
- Nmap Reference Guide — https://nmap.org/book/man.html
- Nmap Network Scanning Book — https://nmap.org/book/
- Nmap Scripting Engine — https://nmap.org/book/nse.html
- Nmap NSE Documentation — https://nmap.org/nsedoc/
Post Terkait
Red Team Cheat Sheet: Panduan Tools untuk Ethical Hacking dan Security Assessment
Mulai belajar Red Team tanpa terjebak sekadar koleksi tools. Kenali attack path, authorization, detection, hardening, da...