Apa itu NMAP

Nmap (Network Mapper) adalah tool open-source yang digunakan untuk:

  • Memindai jaringan (network scanning)
  • Menemukan host yang aktif (host discovery)
  • Mengetahui port yang terbuka (port scanning)
  • Mendeteksi layanan dan versinya (service detection)
  • Mendeteksi sistem operasi (OS detection)
  • Mengidentifikasi kerentanan (dengan bantuan Nmap Scripting Engine - NSE)

Nmap sangat populer digunakan oleh sysadmin, pentester, dan network engineer untuk pemetaan dan audit jaringan.

Instalasi NMAP

Instalasi NMAP di OS Linux Debian/Ubuntu

sudo apt update
sudo apt install nmap

Instalasi NMAP di OS Linux RHEL/CentOS

sudo yum install nmap

Instalasi NMAP di OS Windows

  • Ikuti installer GUI-nya (biasanya disertai Zenmap, versi GUI Nmap)

Service and Version Detection

Nmap bisa mencari port terbuka (scan port). Selain itu, Nmap juga bisa mencoba menentukan layanan apa yang berjalan pada port itu (mis. http, ssh) dan versinya (mis. Apache 2.4.29). Proses itu disebut service & version detection.

🔹-sV

  • Contoh: nmap -sV 192.168.1.1
  • Fungsi: Mencoba mengenali service dan versi pada port yang terbuka.
  • Catatan: Ini melakukan banner grabbing dan beberapa probe (kirim paket tertentu lalu analisis respons) untuk mencocokkan pola layanan.

--version-intensity <0-9>

  • Contoh: nmap -sV --version-intensity 8 192.168.1.1
  • Fungsi: Mengatur “tingkat agresivitas” pemeriksaan versi. Nilai dari 0 (ringan) sampai 9 (paling agresif). Angka lebih tinggi → lebih banyak probe → kemungkinan deteksi benar lebih besar, tetapi:
    • lebih lambat,
    • lebih intrusif (mungkin memicu IDS/IPS),
    • berpotensi membuat layanan terpengaruh di sistem rentan.
  • Gunakan 7–9 hanya di lab atau dengan izin.

--version-light

  • Contoh: nmap -sV --version-light 192.168.1.1
  • Fungsi: Mode cepat, kirim sedikit probe → cepat tapi kurang akurat.

--version-all

  • Contoh: nmap -sV --version-all 192.168.1.1
  • Fungsi: Pakai hampir semua probe yang tersedia (mirip intensity=9 + semua probe) → paling mendalam, tapi paling lambat & paling berisiko memicu alarm.

-A

  • Contoh: nmap -A 192.168.1.1
  • Fungsi: Scan “all-in-one” yang mengaktifkan OS detection, version detection, script scanning, dan traceroute. Singkatnya: -A = -O + -sV + script scan + traceroute.
  • Catatan penting: -A lebih menyeluruh tapi juga paling jelas terlihat (noisy). Jangan gunakan pada jaringan yang kamu tak punya izin.

NSE (Nmap Scripting Engine)

NSE (Nmap Scripting Engine), adalah fitur tambahan di Nmap yang memungkinkan kita menjalankan script otomatis.

🔹 Script ini bisa dipakai untuk :

  • Mengumpulkan informasi (discovery),
  • Mengecek keamanan (vulnerability scanning),
  • Bahkan melakukan eksploitasi (hati-hati, ini intrusif).

Anggap saja NSE ini seperti “ekstensi” atau “add-on” di Nmap, biar Nmap jadi lebih pintar dan fleksibel.

🔹 -sC

  • Contoh: nmap 192.168.1.1 -sC
  • Fungsi: Jalankan default scripts (sekumpulan script bawaan yang dianggap aman & berguna untuk deteksi awal).
  • Analogi: Seperti kalau kamu install aplikasi baru, lalu langsung pakai fitur standar/bawaannya. Aman, tapi tidak terlalu dalam.

🔹 -script default

  • Contoh: nmap 192.168.1.1 --script default
  • Fungsi: Sama dengan -sC, yaitu jalankan default script.

Catatan: -sC dan --script default hasilnya identik. Tinggal pilih mau pakai singkat atau panjang.

🔹 -script=banner

  • Contoh: nmap 192.168.1.1 --script=banner
  • Fungsi: Menjalankan 1 script saja, dalam hal ini script banner (untuk membaca informasi awal dari layanan, misalnya versi software).
  • Analogi: Seperti tanya “Siapa kamu?” ke server, lalu server menjawab: “Saya Apache 2.4.49.”

🔹 -script=http*

  • Contoh: nmap 192.168.1.1 --script=http*
  • Fungsi: Menjalankan semua script yang diawali kata http (pakai wildcard *).
  • Analogi: Daripada panggil 1-1, ini seperti bilang: “Tolong jalankan semua script yang berhubungan dengan HTTP.”

🔹 -script=http,banner

  • Contoh: nmap 192.168.1.1 --script=http,banner
  • Fungsi: Jalankan lebih dari 1 script (dalam contoh: http + banner).
  • Analogi: Seperti minta dua tugas sekaligus: “Cek server web-nya, sekalian baca bannernya juga.”

🔹 -script "not intrusive"

  • Contoh: nmap 192.168.1.1 --script "not intrusive"
  • Fungsi: Jalankan script default tapi hilangkan script yang “intrusive” (bisa mengganggu atau memengaruhi target).
  • Analogi: Hanya “nanya baik-baik”, tidak mencoba “ngoprek” server target.

🔹 -script-args

  • Contoh:
nmap --script snmp-sysdescr --script-args snmpcommunity=admin 192.168.1.1
  • Fungsi: Menjalankan script dengan parameter tambahan (argument).
  • Analogi: Seperti kasih password/akses khusus supaya script bisa bekerja dengan benar.

🔹 Contoh Situasi di Dunia Nyata

Misalnya sekolahmu punya server 192.168.1.10:

  • Kalau kamu pakai -sC, kamu bisa tahu port apa yang terbuka, versi layanan, dan basic info.
  • Kalau kamu pakai --script=http*, kamu bisa cek apakah ada kerentanan HTTP (misalnya XSS, directory listing, dll).
  • Kalau pakai --script=banner, kamu bisa tahu software yang dipakai, misalnya “OpenSSH 7.9p1” → ini berguna untuk cek apakah butuh update.