NMAP SIMULATOR
SIMULATOR CLI NMAP KALI LINUX - MEMINDAI VIRTUAL LAB 192.168.10.0/24 - 100% OFFLINE
KALI TERMINAL
PANEL MISI
LANGKAH DICEK OTOMATIS SETIAP SCAN
PETA LAB
192.168.10.0/24 - HOST TERUNGKAP SAAT BERHASIL KAMU PINDAI
DAFTAR MISI
8 MISI - TOTAL 480 XP. ALUR PROFESIONAL: DISCOVERY -> ENUMERASI -> DETEKSI -> AUDIT.
KUIS NMAP
10 SOAL ACAK - 15 DETIK PER SOAL - TOMBOL 1-4 UNTUK MENJAWAB
MATERI NMAP
8 MODUL - DARI HANDSHAKE SAMPAI ETIKA & KARIER. KLIK UNTUK MEMBUKA.
NMAP (Network Mapper) adalah alat open-source untuk menemukan host, port terbuka, layanan, dan sistem operasi di jaringan. Dibuat oleh Gordon Lyon (Fyodor) sejak 1997, kini menjadi alat wajib di toolbox setiap admin jaringan dan penguji keamanan - terpasang default di Kali Linux.
Dua wajah NMAP:
- Sisi admin (defensif): inventaris perangkat, audit port yang tidak seharusnya terbuka, verifikasi firewall, pemetaan jaringan sekolah/lab
- Sisi pengujian (offensif): fase recon & enumeration dalam penetration testing profesional
Posisi dalam uji kompetensi TKJ: NMAP adalah alat standar untuk materi "diagnosa jaringan" - setelah ping dan traceroute menunjukkan jalur hidup, NMAP menjawab pertanyaan lebih dalam: layanan apa yang berjalan di server ini?
Analogi: ping = mengetuk pintu (ada orang atau tidak). NMAP = memeriksa pintu mana yang terbuka, terkunci, atau berpagar - di rumah SENDIRI. Memeriksa rumah orang lain tanpa izin tetap pelanggaran, meski "hanya melihat pintu".
Etika yang dibangun dari hari pertama: pindai hanya milik sendiri atau dengan izin tertulis. Semua latihan di simulator ini berjalan pada lab virtual di browser - nol paket keluar. Refleks yang benar harus terbentuk sejak awal: izin dulu, scan kemudian.
NMAP menentukan keadaan port dengan cara berbicara TCP/UDP ke port tersebut. Kuncinya adalah three-way handshake TCP:
| LANGKAH | PAKET | ARTI |
|---|---|---|
| 1 | CLIENT -> SYN | "Hai, mau bicara?" |
| 2 | SERVER -> SYN-ACK | "Boleh, silakan" (port TERBUKA) |
| 3 | CLIENT -> ACK | Koneksi terbentuk |
Jawaban server menentukan state:
| BALASAN | STATE NMAP | ARTI |
|---|---|---|
| SYN-ACK | OPEN | Aplikasi menerima koneksi di port itu |
| RST | CLOSED | Tidak ada aplikasi, tapi host hidup & terjangkau |
| Tidak ada / ICMP unreachable | FILTERED | Firewall memblokir - tidak yakin ada atau tidak |
Keenam state NMAP yang lengkap: open (layanan hidup), closed (terjangkau tapi kosong), filtered (firewall menghalangi), unfiltered (terjangkau, belum tahu terbuka/tidak - khas ACK scan), open|filtered (NMAP tak yakin - khas UDP), closed|filtered (khas idle scan).
Kenapa state penting bagi admin: open = attack surface (permukaan serangan). Setiap port terbuka adalah pintu masuk potensial yang harus: dibenarkan fungsinya, dipatch, dan dilindungi. Prinsip audit: port terbuka tanpa alasan = temuan keamanan.
Port well-known yang wajib hafal: 20/21 FTP, 22 SSH, 23 Telnet, 25 SMTP, 53 DNS, 67/68 DHCP, 80 HTTP, 110 POP3, 143 IMAP, 443 HTTPS, 445 SMB, 3389 RDP, 8080 HTTP-alt.
Sebelum memindai port, NMAP harus tahu host mana yang hidup. Tahap ini disebut host discovery (ping scan):
| METODE | PROBE | CATATAN |
|---|---|---|
| ICMP ECHO | ping klasik | Sering diblokir firewall - host bisa "hilang" padahal hidup |
| TCP SYN 80/443 | Probe ke port web | Sebagian besar perangkat merespons ini |
| TCP ACK 80 | ACK tanpa koneksi | Melewati beberapa firewall stateless |
| ARP REQUEST | Layer 2 | Di LAN lokal: paling andal - TIDAK BISA diblokir tanpa mematikan komunikasi |
Flag penting discovery:
-sn(ping scan saja) - "Ping Scan - no port scan": cepat untuk inventaris, mis.nmap -sn 192.168.10.0/24-Pn- lewati discovery, anggap SEMUA host hidup. Wajib untuk host yang memblokir ping (printer, kamera, server hardening)-PS/-PA/-PU/-PE- pilih jenis probe (SYN/ACK/UDP/Echo) secara manual
Jebakan klasik pemula: "kok hanya 5 host terdeteksi padahal lab ada 7?" - hampir selalu karena host memblokir ICMP. Solusi: -Pn atau andalkan ARP di LAN. Di simulator ini ada host .99 yang sengaja memblokir ping - coba temukan dia.
Hasil ping sweep yang sehat di lab sekolah: router (.1), server (.10), beberapa klien, printer. Host tak dikenal = pertanyaan audit: perangkat siapa itu? Kamu baru saja melakukan network inventory - pekerjaan admin mingguan yang sesungguhnya.
Setelah host diketahui hidup, port scan menentukan keadaan port. Tiga jenis utama:
| JENIS | FLAG | CARA KERJA | CIRI |
|---|---|---|---|
| SYN / HALF-OPEN | -sS (default root) | Kirim SYN; jika SYN-ACK balas RST (batal) | Cepat, tidak tercatat log aplikasi - "stealth" |
| CONNECT | -sT (default non-root) | Handshake penuh lalu tutup | Tidak butuh root; koneksi tercatat di log layanan |
| UDP | -sU | Kirim datagram UDP kosong | LAMBAT; hasil sering open|filtered |
Kenapa SYN scan disebut stealth: koneksi TIDAK pernah selesai dibentuk, sehingga aplikasi (mis. nginx) tidak mencatatnya di access.log. Firewall IDS tetap bisa melihatnya - "stealth" bukan berarti tak terdeteksi, hanya tidak masuk log aplikasi.
Kenapa SYN butuh root/sudo: membuat paket mentah (raw socket) dengan header custom adalah hak istimewa kernel. Tanpa root, NMAP fallback ke connect scan. Di Kali: sudo nmap -sS ...
UDP scan - pasien paling sabar: port UDP terbuka biasanya hanya diam (tidak membalas), port tertutup balas ICMP unreachable yang sering diblokir firewall. Hasilnya: open|filtered - NMAP jujur tidak tahu. Scan DNS (53), SNMP (161), NTP (123) contoh nyata kebutuhan -sU.
Lainnya yang layak dikenal: -sA (ACK scan - memetakan aturan firewall), -sX/-sN/-sF (null/xmas/fin - mengandalkan celah RFC), -sO (protocol scan), -sI (idle scan via zombie - canggih, butuh host zombie).
Mengetahui port 22 terbuka itu awal. Mengetahui port 22 menjalankan OpenSSH 8.9p1 itulah informasi. Dua flag enumerasi utama:
-sV (service version detection): NMAP membuka koneksi, mengirim probe spesifik per protokol (HTTP request, SSH banner, SMTP EHLO...), lalu mencocokkan pola respons dengan database signature nmap-services-probes (ribuan entri). Output: 22/tcp open ssh OpenSSH 8.9p1 Ubuntu 3ubuntu0.4.
-O (OS detection): menguji keanehan khas stack TCP/IP tiap OS (initial TTL, window size, URGP flag, opsi TCP...) dan mencocokkan dengan database fingerprint nmap-os-db. Output: OS details: Linux 5.15, Ubuntu 22.04. Butuh root; akurasi naik jika minimal satu port terbuka + satu tertutup.
| FLAG | EFEK | BIAYA |
|---|---|---|
| -sV | Versi aplikasi per port | +2-10 detik per host |
| -sV --version-light | Probe intensitas rendah (cepat) | Akurasi turun sedikit |
| -sV --version-all | Semua probe | Lambat, akurasi maksimal |
| -O | Deteksi OS | Butuh root + waktu |
| -A | -sV + -O + traceroute + script default | Paling informatif & paling berisik |
Nilai bagi admin: versi aplikasi = data untuk patch management. OpenSSH 7.2 (berumur, ada CVE) vs OpenSSH 9.6 (terkini) - audit keamanan Anda membutuhkan persis informasi ini. Inventaris versi = fondasi vulnerability management.
Nilai bagi penyerang (kenapa ini sensitif): versi lama bisa dicari CVE-nya di database publik (exploit-db). Karena itu sebagian server menyamarkan banner - tetapi fingerprint TCP/IP sulit disembunyikan sepenuhnya.
Bonus: -sC menjalankan script default NSE yang sering memperkaya hasil (mis. smb-os-discovery menampilkan nama komputer Windows).
Template timing -T0 sampai -T5 mengatur kecepatan (paralel, timeout, delay antar probe):
| TEMPLATE | NAMA | PAKAI UNTUK |
|---|---|---|
| -T0 | paranoid | Menghindari IDS - sangat lambat (berjam-jam) |
| -T1 | sneaky | Sama, sedikit lebih cepat |
| -T2 | polite | Mengurangi beban jaringan produksi |
| -T3 | normal | Default NMAP |
| -T4 | aggressive | Jaringan LAN cepat & andal - standar harian |
| -T5 | insane | Melepas akurasi demi kecepatan ekstrem |
Spesifikasi port -p menghemat waktu besar (default NMAP memindai 1000 port terpopuler):
-p 22satu port;-p 22,80,443beberapa;-p 1-1024rentang-p-SEMUA 65535 port - audit menyeluruh, lambat di -T3-Ffast mode (100 port teratas);--top-ports 200200 terpopuler-p u:53,t:80campuran UDP dan TCP
Output & verbosity: -v menampilkan progres + port tertutup/filtered yang biasanya disembunyikan; --open hanya menampilkan port terbuka (rapikan hasil); -oN hasil.txt simpan ke file (di simulator disimulasikan); -oG format grepable untuk diolah script.
Resep cepat harian:
- Inventaris cepat:
nmap -sn 192.168.10.0/24 - Survey server:
nmap -sV -T4 192.168.10.10 - Audit lengkap lab:
nmap -A -T4 192.168.10.1-25 - Semua port di satu target:
nmap -p- -T4 192.168.10.10
NSE adalah mesin script NMAP berbahasa Lua - ratusan script bawaan yang memperluas kemampuan dari deteksi hingga pengujian keamanan: nmap --script <nama>.
| KATEGORI | FUNGSI | CONTOH SCRIPT |
|---|---|---|
| default | Ringan & aman, jalan dengan -sC | http-title, smb-os-discovery |
| discovery | Informasi tambahan jaringan | http-enum (folder web) |
| vuln | Deteksi kerentanan terkenal | smb-vuln-ms17-010 (EternalBlue) |
| auth | Uji autentikasi | ftp-anon (cek anonymous FTP) |
| brute | Percobaan kata sandi (izin!) | ssh-brute, http-brute |
Contoh yang aman dipraktikkan di lab:
nmap --script http-title 192.168.10.10- judul halaman webnmap -p 445 --script smb-os-discovery 192.168.10.5- identitas Windowsnmap -p 21 --script ftp-anon 192.168.10.10- cek FTP anonymous
Batas yang harus dipahami murid TKJ: kategori vuln dan brute adalah alat PENGUJIAN yang sah hanya dalam lingkup audit resmi dengan izin tertulis. Menjalankan script bruteforce ke server yang bukan hakmu adalah tindakan ilegal, bukan "latihan". Simulator ini hanya menyimulasikan script kategori aman (http-title, http-server-header, smb-os-discovery).
Roadmap lanjutan: setelah NMAP lancar, lanjutkan dengan Wireshark (analisis paket), OpenVAS/Nessus (vulnerability scanner), dan pahami CVSS untuk menilai temuan. Itu jalur belajar penetration testing yang sehat.
Kaidah hukum: di Indonesia, akses & intersepsi tanpa hak diatur UU ITE Pasal 30-33 (ancaman pidana penjara); negara lain punya padanannya (CFAA di AS, Computer Misuse Act di UK). Memindai jaringan yang bukan hakmu tanpa izin = interaksi tanpa hak. "Cuma nmap kok" bukan pembelaan hukum.
Amunisi izin yang sah:
- Jaringan sendiri (rumah, lab pribadi, VM) - bebas
- Jaringan lab sekolah - izin guru/pengelola, di luar jam ujian
- Server organisasi - surat izin tertulis (Rules of Engagement) yang mencantumkan scope, waktu, dan kontak darurat
- Latihan legal publik - platform yang dirancang untuk itu (lab yang memang untuk dilatih)
Prinsip penguji profesional: 1) scope tertulis & tidak melewatinya; 2) dokumentasikan SEMUA perintah yang dijalankan; 3) hati-hati dengan scan agresif terhadap perangkat rapuh (printer, IoT bisa crash); 4) laporan temuan untuk perbaikan, bukan pamer; 5) kerahasiaan data yang tersingkap saat audit.
Kariernya nyata: Network Administrator, SOC Analyst, dan Pentester semuanya memulai dari kemampuan yang sama: membaca output NMAP dan menafsirkan apa artinya bagi keamanan. Sertifikasi jalan: CompTIA Network+ / Security+, eJPT, OSCP.
Checklist akhlak teknisi: izin sebelum aksi, dokumentasi sebelum lupa, laporan sebelum klaim, dan lab virtual sebelum jaringan nyata. Simulator ini adalah langkah pertama yang benar.
TIPS SCAN
10 TIPS BERJENJANG: BASIC -> INTER -> PRO.
FAQ NMAP
10 PERTANYAAN YANG PALING SERING MUNCUL DI KELAS & LAB TKJ.
Karena host discovery bergantung pada probe yang dibalas: ICMP ping sering diblokir firewall, dan perangkat seperti printer, kamera, atau server yang di-hardening sengaja diam. Solusi: ulangi dengan -Pn (anggap semua hidup, langsung scan port) atau andalkan ARP yang tidak bisa diblok di LAN lokal. Di simulator ini ada host .99 yang persis mengajarkan pelajaran ini.
open = aplikasi aktif menerima koneksi di port itu (attack surface). closed = host hidup dan membalas RST, tapi tidak ada aplikasi menunggu di port tersebut. filtered = probe tidak mendapat jawaban karena firewall menyaring - NMAP tidak bisa memastikan ada layanan atau tidak. Untuk audit: open perlu justifikasi, filtered menunjukkan firewall bekerja, closed normal.
-sS (SYN scan) mengirim SYN lalu membatalkan handshake begitu menerima SYN-ACK - koneksi tak pernah selesai sehingga tidak masuk access.log aplikasi (nginx/ssh), itulah "stealth"-nya (IDS tetap bisa melihatnya). Butuh sudo karena membuat paket mentah adalah operasi privileged kernel. Tanpa root, NMAP otomatis turun ke -sT (connect scan) yang menyelesaikan handshake penuh dan tercatat di log.
Protokol UDP tidak punya handshake: layanan aktif biasanya diam terhadap datagram kosong, dan pesan ICMP "port unreachable" dari port tertutup sering diblokir firewall. Karena itu NMAP sering hanya bisa menyimpulkan open|filtered - tidak yakin. Untuk kepastian dibutuhkan probe spesifik protokol (mis. DNS query ke port 53) atau script NSE yang memahami layanannya. UDP scan juga jauh lebih lambat karena menunggu timeout.
Tanpa -p, NMAP memindai 1000 port TCP terpopuler versi statistik nmap-services. Karena itulah port seperti 8291 (Winbox) tetap bisa muncul - mereka masuk daftar populer. Port di luar daftar terlewat! Untuk audit menyeluruh gunakan -p- (semua 65535) atau --top-ports N. Banyak layanan disengaja disembunyikan di port tinggi - scan default bukan bukti "tidak ada layanan lain".
-A menggabungkan version detection (mengirim banyak probe ke tiap port terbuka), OS detection, traceroute, dan script default - ratusan paket tak biasa dalam waktu singkat. Dampaknya: IDS/IPS memicu alarm, dan beberapa perangkat rapuh (printer tua, IoT, SCADA) bisa crash oleh probe agresif. Untuk produksi: izin tertulis, jendela waktu, mulai dari scan pelan, -A hanya pada target yang diizinkan.
Beberapa opsi legal: 1) scan mesin sendiri: nmap localhost atau IP laptop-mu; 2) lab virtual di VM: VirtualBox network host-only berisi Kali + Ubuntu + Windows; 3) router rumah sendiri (IP .1) - ini jaringanmu; 4) platform lab yang memang untuk latihan. JANGAN memindai: IP publik sembarang, jaringan tetangga, kampus/sekolah tanpa izin, atau rentang ISP. Ketik di Kali asli: sudo nmap -sV localhost dan bandingkan dengan simulator ini.
Jaringan hidup: layanan dinyalakan/dimatikan, firewall diubah, host pindah alamat DHCP. Selain itu hasil dipengaruhi posisi scanner (LAN vs lewat VPN), privilege (root: -sS vs user: -sT), dan template timing (T5 bisa melewatkan port lambat). Karena itu profesional mendokumentasikan perintah persis + tanggal setiap scan - hasil scan tanpa konteks perintah itu tidak lengkap.
Alur teknisi: 1) identifikasi - layanan apa (per -sV) dan siapa pemiliknya; 2) justifikasi - apakah perlu? port 8291 di router wajar, port 4444 di server web tidak; 3) jika tidak dikenal: investigasi proses di host (ss -tulpn / ps aux dari dalam server); 4) perbaiki - tutup port, matikan layanan, perketat firewall; 5) dokumentasikan temuan + tindakan. Di simulator ini panel TEMUAN otomatis memberi label tingkat - latih matamu membaca konteks, bukan hanya angka port.
Ya - semua tersimpan di localStorage perangkat ini (prefix abr_nmap_): misi selesai, XP, jumlah scan, daftar host yang sudah kamu temukan, dan skor kuis terbaik. Tidak ada data yang dikirim ke mana pun. Menariknya: daftar host terdeteksi juga menjadi "save game" - buka PETA LAB di sesi berikutnya dan hasil penemuanmu masih ada, seperti catatan audit sungguhan.