Panduan Refensi Nmap (Man Page, bahasa Indonesia)man pagereference guidereference guide (man page)nmap1NmapPanduan Referensi NmapnmapTool eksplorasi jaringan dan keamanan / scanner portnmapJenis ScanOpsispesifikasi targetDeskripsiNmapdescription of
Dokumen ini menjelaskan versi Nmap 4.85BETA7. Dokumentasi terbaru tersedia
dalam bahasa Inggris di
.Nmap (Network Mapper) merupakan sebuah tool open source untuk
eksplorasi dan audit keamanan jaringan. Ia dirancang untuk memeriksa jaringan
besar secara cepat, meskipun ia dapat pula bekerja terhadap host tunggal.
Nmap menggunakan paket IP raw dalam cara yang canggih untuk menentukan host mana saja
yang tersedia pada jaringan, layanan (nama aplikasi dan versi) apa yang diberikan,
sistem operasi (dan versinya) apa yang digunakan, apa jenis firewall/filter paket
yang digunakan, dan sejumlah karakteristik lainnya. Meskipun Nmap umumnya digunakan
untuk audit keamanan, namun banyak administrator sistem dan jaringan menganggapnya berguna
untuk tugas rutin seperti inventori jaringan, mengelola jadwal upgrade layanan, dan melakukan
monitoring uptime host atau layanan.Output Nmap adalah sebuah daftar target yang diperiksa, dengan
informasi tambahannya tergantung pada opsi yang digunakan.
Hal kunci di antara informasi itu adalah tabel port menarik.ports“interesting”
Tabel tersebut berisi daftar angka port dan protokol, nama layanan, dan status. Statusnya adalah
terbuka (open), difilter (filtered),
tertutup (closed), atau tidak difilter (unfiltered).
Terbukaopen port state
berarti bahwa aplikasi pada mesin target sedang mendengarkan (listening) untuk
koneksi/paket pada port tersebut.
Difilterfiltered port state
berarti bahwa sebuah firewall, filter, atau penghalang jaringan lainnya
memblokir port sehingga Nmap tidak dapat mengetahui apakah ia
terbuka atau tertutup.
Tertutupclosed port state
port tidak memiliki aplikasi yang sedang mendengarkan,
meskipun mereka dapat terbuka kapanpun.
Port digolongkan sebagai
tidak difilterunfiltered port state
ketika mereka menanggapi probe Nmap, namun Nmap tidak dapat menentukan
apakah mereka terbuka atau tertutup.
Nmap melaporkan kombinasi status
open|filteredopen|filtered port state
dan closed|filteredclosed|filtered port state
ketika ia tidak dapat menentukan status manakah yang
menggambarkan sebuah port. Tabel port mungkin juga menyertakan
detil versi software ketika diminta melakukan pemeriksaan versi.
Ketika sebuah pemeriksaan protokol IP diminta
(), Nmap memberikan informasi pada protokol IP
yang didukung alih-alih port-port yang mendengarkan.Selain tabel port yang menarik, Nmap dapat pula memberikan
informasi lebih lanjut tentang target, termasuk nama reverse DNS,
prakiraan sistem operasi, jenis device, dan alamat MAC.Pemeriksaan Nmap yang umum ditunjukkan dalam . Argumen yang digunakan
pada contoh ini hanyalah , untuk memeriksa sistem operasi dan versi,
pemeriksaan skrip, dan traceroute; untuk eksekusi yang lebih cepat;
dan dua buah nama host target.Sebuah gambaran pemeriksaan Nmapexample of
# nmap -A -T4 scanme.nmap.org
Starting Nmap ( https://nmap.org )
Interesting ports on scanme.nmap.org (64.13.134.52):
Not shown: 994 filtered ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 4.3 (protocol 2.0)
25/tcp closed smtp
53/tcp open domain ISC BIND 9.3.4
70/tcp closed gopher
80/tcp open http Apache httpd 2.2.2 ((Fedora))
|_ HTML title: Go ahead and ScanMe!
113/tcp closed auth
Device type: general purpose
Running: Linux 2.6.X
OS details: Linux 2.6.20-1 (Fedora Core 5)
TRACEROUTE (using port 80/tcp)
HOP RTT ADDRESS
[Cut first seven hops for brevity]
8 10.59 so-4-2-0.mpr3.pao1.us.above.net (64.125.28.142)
9 11.00 metro0.sv.svcolo.com (208.185.168.173)
10 9.93 scanme.nmap.org (64.13.134.52)
Nmap done: 1 IP address (1 host up) scanned in 17.00 seconds
Versi terbaru Nmap dapat diperoleh dari . Versi terbaru man page
tersedia di .Catatan TerjemahanEdisi bahasa Indonesia Nmap Reference Guide ini
diterjemahkan dari versi [12855] versi Inggris
oleh Tedi Heriyanto. Meskipun kami berharap bahwa hal ini akan
membuat Nmap lebih dapat diakses oleh para pengguna bahasa Indonesia di seluruh dunia,
namun kami tidak dapat menjamin bahwa terjemahanan ini lengkap atau
up-to-date seperti versi bahasa Inggris resminya. Pekerjaan ini dapat
dimodifikasi dan didistribusikan kembali berdasarkan syarat-syarat Creative
Commons Attribution License.Ringkasan OpsiRingkasan opsi ini ditampilkan ketika Nmap dijalankan
tanpa argumen, dan versi terakhir selalu tersedia di
.
Ia membantu mengingat opsi-opsi umum, namun ia bukanlah
pengganti dokumentasi lengkap dalam halaman-halaman berikut manual ini.
Bahkan beberapa opsi tersembunyi tidak disertakan di sini.summary of optionscommand-line optionsof NmapNmap 4.85BETA7 ( https://nmap.org )
Usage: nmap [Scan Type(s)] [Options] {target specification}
TARGET SPECIFICATION:
Can pass hostnames, IP addresses, networks, etc.
Ex: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254
-iL <inputfilename>: Input from list of hosts/networks
-iR <num hosts>: Choose random targets
--exclude <host1[,host2][,host3],...>: Exclude hosts/networks
--excludefile <exclude_file>: Exclude list from file
HOST DISCOVERY:
-sL: List Scan - simply list targets to scan
-sP: Ping Scan - go no further than determining if host is online
-PN: Treat all hosts as online -- skip host discovery
-PS/PA/PU[portlist]: TCP SYN/ACK or UDP discovery to given ports
-PE/PP/PM: ICMP echo, timestamp, and netmask request discovery probes
-PO[protocol list]: IP Protocol Ping
-n/-R: Never do DNS resolution/Always resolve [default: sometimes]
--dns-servers <serv1[,serv2],...>: Specify custom DNS servers
--system-dns: Use OS's DNS resolver
--traceroute: Trace hop path to each host
SCAN TECHNIQUES:
-sS/sT/sA/sW/sM: TCP SYN/Connect()/ACK/Window/Maimon scans
-sU: UDP Scan
-sN/sF/sX: TCP Null, FIN, and Xmas scans
--scanflags <flags>: Customize TCP scan flags
-sI <zombie host[:probeport]>: Idle scan
-sO: IP protocol scan
-b <FTP relay host>: FTP bounce scan
PORT SPECIFICATION AND SCAN ORDER:
-p <port ranges>: Only scan specified ports
Ex: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080
-F: Fast mode - Scan fewer ports than the default scan
-r: Scan ports sequentially - don't randomize
--top-ports <number>: Scan <number> most common ports
--port-ratio <ratio>: Scan ports more common than <ratio>
SERVICE/VERSION DETECTION:
-sV: Probe open ports to determine service/version info
--version-intensity <level>: Set from 0 (light) to 9 (try all probes)
--version-light: Limit to most likely probes (intensity 2)
--version-all: Try every single probe (intensity 9)
--version-trace: Show detailed version scan activity (for debugging)
SCRIPT SCAN:
-sC: equivalent to --script=default
--script=<Lua scripts>: <Lua scripts> is a comma separated list of
directories, script-files or script-categories
--script-args=<n1=v1,[n2=v2,...]>: provide arguments to scripts
--script-trace: Show all data sent and received
--script-updatedb: Update the script database.
OS DETECTION:
-O: Enable OS detection
--osscan-limit: Limit OS detection to promising targets
--osscan-guess: Guess OS more aggressively
TIMING AND PERFORMANCE:
Options which take <time> are in milliseconds, unless you append 's'
(seconds), 'm' (minutes), or 'h' (hours) to the value (e.g. 30m).
-T<0-5>: Set timing template (higher is faster)
--min-hostgroup/max-hostgroup <size>: Parallel host scan group sizes
--min-parallelism/max-parallelism <numprobes>: Probe parallelization
--min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout <time>: Specifies
probe round trip time.
--max-retries <tries>: Caps number of port scan probe retransmissions.
--host-timeout <time>: Give up on target after this long
--scan-delay/--max-scan-delay <time>: Adjust delay between probes
--min-rate <number>: Send packets no slower than <number> per second
--max-rate <number>: Send packets no faster than <number> per second
FIREWALL/IDS EVASION AND SPOOFING:
-f; --mtu <val>: fragment packets (optionally w/given MTU)
-D <decoy1,decoy2[,ME],...>: Cloak a scan with decoys
-S <IP_Address>: Spoof source address
-e <iface>: Use specified interface
-g/--source-port <portnum>: Use given port number
--data-length <num>: Append random data to sent packets
--ip-options <options>: Send packets with specified ip options
--ttl <val>: Set IP time-to-live field
--spoof-mac <mac address/prefix/vendor name>: Spoof your MAC address
--badsum: Send packets with a bogus TCP/UDP checksum
OUTPUT:
-oN/-oX/-oS/-oG <file>: Output scan in normal, XML, s|<rIpt kIddi3,
and Grepable format, respectively, to the given filename.
-oA <basename>: Output in the three major formats at once
-v: Increase verbosity level (use twice or more for greater effect)
-d[level]: Set or increase debugging level (Up to 9 is meaningful)
--reason: Display the reason a port is in a particular state
--open: Only show open (or possibly open) ports
--packet-trace: Show all packets sent and received
--iflist: Print host interfaces and routes (for debugging)
--log-errors: Log errors/warnings to the normal-format output file
--append-output: Append to rather than clobber specified output files
--resume <filename>: Resume an aborted scan
--stylesheet <path/URL>: XSL stylesheet to transform XML output to HTML
--webxml: Reference stylesheet from Nmap.Org for more portable XML
--no-stylesheet: Prevent associating of XSL stylesheet w/XML output
MISC:
-6: Enable IPv6 scanning
-A: Enables OS detection and Version detection, Script scanning and Traceroute
--datadir <dirname>: Specify custom Nmap data file location
--send-eth/--send-ip: Send using raw ethernet frames or IP packets
--privileged: Assume that the user is fully privileged
--unprivileged: Assume the user lacks raw socket privileges
-V: Print version number
-h: Print this help summary page.
EXAMPLES:
nmap -v -A scanme.nmap.org
nmap -v -sP 192.168.0.0/16 10.0.0.0/8
nmap -v -iR 10000 -PN -p 80
SEE THE MAN PAGE (https://nmap.org/book/man.html) FOR MORE OPTIONS AND EXAMPLES
Spesifikasi Targettarget specificationSemua yang ada pada perintah baris Nmap yang bukan berupa opsi (atau
argumen opsi) dianggap sebagai spesifikasi host target. Kasus paling sederhana
adalah menspesifikasikan alamat IP target atau nama host untuk diperiksa.Terkadang anda ingin memeriksa seluruh jaringan host-host yang berdekatan.
Untuk hal ini, Nmap mendukung pengalamatan
CIDR-styleCIDR (Classless Inter-Domain Routing). Anda dapat menambahkan
/numbits ke sebuah alamat IPv4 atau nama host dan
Nmap akan memeriksa setiap alamat IP yang alamat
numbits pertamanya sama dengan alamat IP
referensi atau nama host yang diberikan. Sebagai contoh, 192.168.10.0/24 akan memeriksa 256
host antara 192.168.10.0 (biner: 11000000 10101000
00001010 00000000) dan 192.168.10.255 (biner: 11000000 10101000
00001010 11111111), inklusif.
192.168.10.40/24 akan memeriksa target-target yang sama. Misalkan host
scanme.nmap.orgscanme.nmap.org
memiliki alamat IP 64.13.134.52, spesifikasi
scanme.nmap.org/16 akan memeriksa sebanyak 65.536 alamat IP antara
64.13.0.0 dan 64.13.255.255. Nilai terkecil yang diijinkan adalah /0,
yang akan memeriksa seluruh Internet. Nilai terbesar adalah /32, yang hanya
akan memeriksa host atau alamat IP yang disebutkan karena seluruh bit alamat tetap.rentang alamatNotasi CIDR pendek namun tidak selalu fleksibel. Sebagai contoh, anda
mungkin ingin memeriksa 192.168.0.0/16 namun ingin melewati IP yang diakhiri dengan .0 atau
.255 karena mereka mungkin digunakan sebagai subnet jaringan dan alamat broadcast. Nmap mendukung
hal ini melalui pengalamatan rentang oktet. Alih-alih menspesifikasikan alamat IP normal, anda
dapat menspesifikasikan daftar angka atau rentang untuk setiap oktet. Sebagai contoh, 192.168.0-255.1-254 akan melewati seluruh alamat dalam rentang yang berakhiran dalam .0 atau .255,
dan 192.168.3-5,7.1 akan memeriksa empat alamat 192.168.3.1, 192.168.4.1, 192.168.5.1, dan
192.168.7.1. Kedua sisi rentang dapat dihilangkan; nilai baku adalah 0 di sisi kiri
dan 255 untuk sisi kanan. Penggunaan -
sama artinya dengan 0-255, namun ingat untuk menggunakan 0- dalam oktet pertama
sehingga spesifikasi target tidak terlihat seperti opsi perintah baris.
Rentang tidak hanya terbatas pada oktet akhir: 0-255.0-255.13.37
akan melakukan pemeriksaan Internet-wide untuk seluruh alamat IP
yang berakhiran 13.37. Sampling luas seperti ini dapat bermanfaat
untuk riset dan survei Internet.Alamat IPv6 hanya dapat dispesifikasikan dengan alamat IPv6
lengkap mereka atau nama host. CIDR dan rentang oktet tidak didukung
untuk IPv6 karena mereka jarang bermanfaat.Nmap menerima spesifikasi banyak host pada perintah baris,
dan mereka tidak perlu dalam jenis yang sama. Perintah nmap
scanme.nmap.org 192.168.0.0/8 10.0.0,1,3-7.- melakukan
apa yang anda harapkan.Meskipun target biasanya dispesifikasikan pada perintah baris, opsi berikut juga
tersedia untuk mengendalikan pemilihan target:
(Input dari daftar)
target specificationfrom listMembaca spesifikasi target dari
inputfilename. Memberikan
banyak daftar host pada perintah baris seringkali tidak mengasyikkan.
Sebagai contoh, DHCP server anda mungkin mengekspor
daftar 10.000 lease saat ini yang ingin anda periksa.
Atau mungkin anda ingin memeriksa seluruh alamat IP
kecuali bagi mereka untuk mencari host
yang menggunakan alamat IP statik tidak terotorisasi. Cukup buat daftar host
yang ingin diperiksa dan berikan namafilenya ke Nmap sebagai sebuah argumen
bagi opsi . Entrinya dapat dalam beragam format
yang diterima oleh Nmap di perintah baris
(alamat IP, nama host, CIDR, IPv6, atau rentang oktet). Setiap entri
harus dipisahkan dengan satu atau lebih spasi, tab, atau baris baru.
Anda dapat menspesifikasikan sebuah tanda hubung (hyphen) (-) sebagai nama file jika anda ingin
Nmap membaca host dari input standar alih-alih dari sebuah file.
(Pilih target acak)
random targetstargets specificationat randomUntuk survei dan riset lain skala-Internet,
anda mungkin ingin memilih target secara acak.
Argumen num hosts memberitahu Nmap
berapa banyak IP yang ingin dihasilkan. IP yang tidak diinginkan
seperti dalam rentang alamat privat, multicast, atau tidak dialokasi
secara otomatis akan dilewati. Argumen 0
dapat dispesifikasikan untuk pemeriksaan yang tidak pernah berakhir. Perhatikan bahwa
beberapa administrator jaringan tidak suka terhadap pemeriksaan yang tidak terotorisasi
terhadap jaringan mereka dan mungkin mengeluh. Gunakan opsi ini dengan risiko anda!
Jika anda benar-benar merasa bosan di sore hari yang hujan, coba perintah
nmap -sS -PS80 -iR 0 -p 80example ofexample ofexample of
untuk mencari server web acak untuk browsing.
(Kecualikan host/jaringan)
excluding targetsSpesifikasikan daftar target yang ingin dikecualikan
dari pemeriksaan meskipun mereka merupakan bagian dari
rentang jaringan yang anda spesifikasikan. Daftar yang anda berikan
menggunakan sintaks Nmap normal, sehingga ia dapat mencakup nama host, blok CIDR,
rentang oktet, dsb. Hal ini dapat bermanfaat ketika jaringan yang ingin anda periksa
menyertakan server-server kritis, sistem yang diketahui terganggu dengan port scan,
atau subnet yang dikelola oleh pihak lain.
(Daftar pengecualian dari file)
Opsi ini memberikan fungsionalitas yang sama dengan opsi ,
namun target yang dikecualikan diberikan dalam sebuah
exclude_file alih-alih diberikan pada perintah baris.Pencarian Host (Host Discovery)host discoverySalah satu langkah pertama dalam misi network reconnaissance
adalah mengurangi satu rentang IP (biasanya besar) ke sebuah
daftar host yang aktif atau menarik. Memeriksa setiap port
dari setiap alamat IP adalah lambat dan biasanya tidak perlu. Tentu saja
apa yang membuat sebuah host menarik tergantung pada tujuan
pemeriksaan. Administrator jaringan mungkin hanya tertarik pada
host yang menjalankan layanan tertentu, sementara auditor keamanan
ingin mengetahui semua device dalam satu alamat IP. Administrator
mungkin nyaman cukup dengan menggunakan ping ICMP untuk
menemukan host pada jaringan internalnya, sementara
penetration tester eksternal mungkin menggunakan beragam probe
dalam usahanya menghindari pembatasan firewall.Oleh karena kebutuhan pencarian host sangat beragam, Nmap menawarkan
sejumlah opsi untuk kustomisasi teknik yang dibutuhkan. Pencarian host
seringkali disebut ping scan, namun ia lebih daripada sekedar
melakukan pengiriman paket echo request ICMP yang diasosiasikan dengan
tool terkenal ping. Pengguna dapat melewati
langkah ping dengan list scan () atau dengan
meniadakan ping (), atau melakukan kombinasi
probe multi-port TCP SYN/ACK, UDP, dan ICMP.
Tujuan probe ini adalah memperoleh respon yang menunjukkan bahwa
alamat IP sedang aktif (sedang digunakan oleh host atau device jaringan).
Pada banyak jaringan, hanya sejumlah kecil persentase alamat IP yang aktif
pada satu waktu. Hal ini terutama umum terjadi pada alamat IP privat seperti
10.0.0.0/8. Jaringan tersebut memiliki 16 juta IP, namun saya telah melihatnya
digunakan oleh perusahaan dengan mesin berjumlah kurang dari seribu. Pencarian
host dapat menemukan mesin-mesin dalam lautan alamat IP.Jika tidak diberikan opsi pencarian host, Nmap
mengirimkan sebuah paket TCP ACK
yang ditujukan ke port 80 dan sebuah query ICMP echo request
ke setiap mesin target. Pengecualian atas hal ini adalah scan ARP
digunakan untuk sembarang target yang ada pada jaringan ethernet lokal.
Untuk user shell Unix biasa, sebuah paket SYN dikirimkan
alih-alih paket ACK dengan menggunakan system call
connect.
unprivileged userslimitations
of
Nilai-nilai baku ini sama dengan opsi
. Pencarian host ini seringkali
cukup ketika melakukan pemeriksaan jaringan lokal, namun
disarankan untuk melakukan probe pencarian yang lebih komprehensif
ketika melakukan audit keamanan.Opsi-opsi (yang memilih tipe ping)
dapat digabungkan. Anda dapat meningkatkan peluang anda
menyusup firewall yang ketat dengan mengirimkan banyak jenis probe
dengan menggunakan berbagai macam port/flag TCP dan kode ICMP. Perhatikan pula bahwa
pencarian ARP discovery
()
secara baku dilakukan terhadap target pada jaringan ethernet lokal bahkan
bila anda menspesifikasikan opsi lain,
karena ia selalu lebih cepat dan lebih efektif.Secara baku, Nmap melakukan pencarian host dan lalu melakukan
scan port terhadap setiap host yang ditentukan online. Hal ini benar
bahkan bila anda menspesifikasikan tipe pencarian host yang tidak baku seperti
probe UDP (). Bacalah mengenai opsi
untuk mempelajari bagaimana melakukan
hanya pencarian host, atau gunakan untuk melewati
pencarian host dan melakukan scan port untuk seluruh host.
Opsi-opsi berikut ini mengendalikan pencarian host:
(List Scan)
list scanScan daftar (list scan) merupakan sebuah bentuk pencarian host
yang hanya menampilkan setiap host pada jaringan yang dispesifikasikan,
tanpa mengirimkan paket ke host target. Secara baku,
Nmap tetap melakukan resolusi reverse-DNS pada host
untuk mengetahui namanya. Seringkali mengejutkan berapa banyak
informasi berharga yang diberikan nama host. Sebagai contoh,
fw.chi adalah nama firewall satu perusahaan di Chicago.
DNSrecords as source of information
Nmap juga melaporkan jumlah total alamat IP pada bagian akhir.
Scan daftar merupakan sebuah pemeriksaan untuk memastikan anda
memiliki alamat IP yang tepat untuk target anda.
Jika host menemukan nama domain yang tidak anda kenali,
maka anda perlu melakukan penyelidikan lanjutan untuk mencegah
pemeriksaan jaringan perusahaan yang tidak tepat.Karena gagasannya adalah hanya menampilkan daftar host target,
opsi untuk fungsionalitas lebih tinggi misalnya pemeriksaan port,
deteksi sistem operasi, atau scanning ping tidak dapat dikombinasikan
dengan opsi ini. Jika anda ingin meniadakan pemeriksaan ping namun
masih ingin melakukan fungsionalitas tingkat tinggi, bacalah opsi
.
(Ping Scan)
ping scanOpsi ini memberitahu Nmap untuk hanya melakukan scan ping
(host discovery), lalu menampilkan host yang menanggapi
pemeriksaan. Skrip host traceroute dan NSE juga dijalankan
jika diminta, namun tidak dilakukan pemeriksaan lebih lanjut (seperti scan
port atau deteksi SO). Opsi ini secara baku satu langkah lebih intrusif
daripada list scan, dan seringkali dapat digunakan untuk tujuan yang sama.
Ia memungkinkan reconnaissance ringan atas jaringan target tanpa menarik
banyak perhatian. Mengetahui berapa banyak host yang up lebih bermanfaat
bagi penyerang daripada daftar yang dihasilkan oleh list scan atas
setiap IP dan nama host.Administrator sistem juga sering menganggap opsi ini
bermanfaat. Ia dapat digunakan untuk menghitung mesin-mesin yang tersedia
pada jaringan atau memonitor ketersediaan server. Hal ini seringkali
disebut ping sweep, dan lebih handal daripada mem-ping alamat
broadcast karena banyak host tidak akan melakukan reply
terhadap query broadcast.Opsi secara baku mengirimkan sebuah request ICMP echo
dan sebuah paket TCP ACK ke port 80. Ketika dilakukan oleh
user biasa, hanya sebuah paket SYN yang dikirimkan
(dengan menggunakan call connect) ke port 80 pada
target. Ketika user dengan privilege berusaha memeriksa target pada
jaringan ethernet lokal, request ARP digunakan kecuali dispesifikasikan
.
Opsi dapat dikombinasikan dengan tipe
probe pencarian lainnya (opsi-opsi ,
kecuali ) untuk fleksibilitas yang lebih tinggi.
Jika digunakan sembarang opsi tipe probe dan nomor port,
probe baku (ACK dan echo request) akan di-override.
Ketika terdapat firewall ketat di antara host sumber yang menjalankan
Nmap dan jaringan target, direkomendasikan untuk menggunakan
teknik lanjutan di atas. Jika tidak host dapat luput ketika firewall
men-drop probe atau responnya.
(No ping)
host discoverydisablingOpsi ini melompati tahap pencarian Nmap secara utuh.
Secara normal, Nmap menggunakan tahap ini untuk menentukan mesin aktif
untuk pemeriksaan lebih lanjut. Secara baku, Nmap hanya melakukan probe
lanjutan seperti scan port, pemeriksaan versi, atau pemeriksaan SO
terhadap host yang ditemukan up. Peniadaan pencarian host dengan
opsi menyebabkan Nmap melakukan fungsi pemeriksaan yang diminta
terhadap setiap alamat IP target yang dispesifikasikan. Jadi
bila pada perintah baris dispesifikasikan sebuah alamat target kelas B (/16), maka
semua alamat IP yang berjumlah 65.536 akan diperiksa.
Pencarian host yang tepat akan dilewati sebagaimana dengan list scan, namun
alih-alih berhenti dan menampilkan daftar target, Nmap
lalu melakukan fungsi-fungsi yang diminta sebagaimana bila setiap IP target
aktif. Untuk mesin-mesin pada jaringan ethernet lokal, pemeriksaan ARP
akan tetap dilakukan (kecuali diberikan opsi )
karena Nmap butuh alamat MAC untuk melakukan pemeriksaan lanjutan atas host target.
Flag opsi ini dulunya adalah (menggunakan nol), namun kemudian diganti
untuk menghindari kerancuan dengan flag protokol ping (menggunakan huruf
O).
(TCP SYN Ping)
SYN pingOpsi ini mengirimkan sebuah paket TCP kosong dengan
flag SYN diset. Port tujuan baku adalah 80 (dapat dikonfigurasi
pada waktu kompilasi dengan merubah DEFAULT_TCP_PROBE_PORT_SPECDEFAULT_TCP_PROBE_PORT_SPEC
dalam nmap.h).
nmap.h
Port-port alternatif dapat dispesifikasikan sebagai parameter.
Sintaksnya sama dengan opsi
kecuali specifier jenis port seperti
T: tidak diperbolehkan. Contohnya adalah
dan
. Perhatikan bahwa tidak
boleh ada spasi antara dan daftar port.
Jika dispesifikasikan banyak probe mereka akan dikirim
secara paralel.Flag SYN memberitahu sistem remote bahwa anda
berusaha membuat sebuah koneksi. Normalnya port tujuan
tertutup, dan sebuah paket RST (reset) akan dikirimkan.
Jika port terbuka, target akan melakukan langkah kedua dari
TCP three-way-handshakethree-way handshake
dengan mengirimkan paket SYN/ACK TCP. Mesin yang menjalankan Nmap lalu
memutuskan koneksi tersebut dengan mengirimkan sebuah paket RST
alih-alih mengirimkan sebuah paket ACK yang akan melengkapi
three-way-handshake dan membuat koneksi penuh.
Paket RST dikirim oleh kernel mesin yang menjalankan Nmap
sebagai tanggapan atas SYN/ACK yang tidak diharapkan,
bukan oleh Nmap sendiri.Nmap tidak peduli apakah port terbuka atau tertutup.
Tanggapan RST atau SYN/ACK yang didiskusikan di atas
memberitahu Nmap bahwa host tersedia dan menanggapi.Pada mesin Unix, umumnya hanya user privilege
rootprivileged users
yang dapat mengirim dan menerima paket-paket TCP raw.raw packets
Untuk user tanpa privilege, secara otomatis sebuah
workaround akan dijalankan unprivileged userslimitations of
yaitu system call connect akan digunakan untuk
setiap port target. Hal ini mempunyai efek mengirimkan paket SYN ke host target,
dalam usaha membuat koneksi. Jika connect memberikan
sukses cepat atau kegagalan ECONNREFUSED, stack TCP
di bawahnya telah menerima sebuah SYN/ACK atau RST dan
host ditandai sebagai tersedia. Jika usaha koneksi dibiarkan
hingga tercapai timeout, host ditandai sebagai down.
Workaround ini juga digunakan untuk koneksi IPv6,
karena dukungan untuk pembuatan paket raw IPv6 belum
tersedia di Nmap.IPv6limitations of
(TCP ACK Ping)
ACK pingPing TCP ACK hampir serupa dengan ping
SYN yang baru didiskusikan. Perbedaannya adalah, sebagaimana
dapat anda duga, bahwa flag TCP ACK diset alih-alih
flag SYN. Paket ACK tersebut memberitahu data
pada koneksi TCP yang telah tercipta, namun tidak ada
koneksi. Sehingga host remote harus selalu menanggapi dengan
sebuah paket RST, yang akan memberitahukan keberadaan mereka.Opsi menggunakan port baku
yang sama dengan probe SYN (80) dan dapat menerima daftar
port tujuan dalam format yang sama. Jika user tanpa privilege
mencobanya, atau dispesifikasikan target IPv6, workaround
connect yang didiskusikan sebelumnya akan digunakan.
Workaround ini tidak sempurna karena connect sebenarnya
mengirimkan paket SYN dan bukan paket ACK.Alasan menyertakan probe ping SYN dan ACK adalah
memaksimalkan peluang melewati firewall. Banyak administrator
mengkonfigurasi router dan firewall sederhana untuk memblokir
paket SYN incoming kecuali yang ditujukan untuk layanan publik
seperti server website atau mail perusahaan.
Hal ini mencegah koneksi incoming lainnya ke organisasi,
namun tetap membolehkan user melakukan koneksi outgoing
ke Internet. Pendekatan non-stateful ini
membutuhkan sedikit sumber daya pada firewall/router dan
didukung luas oleh filter hardware dan software. Software
firewall Linux Netfilter/iptablesiptables
memberikan opsi
untuk mengimplementasikan
pendekatan stateless ini. Ketika rule firewall stateless seperti
ini digunakan, probe ping SYN ()
kemungkinan akan diblokir ketika dikirim ke port target yang tertutup.
Dalam kasus ini, probe ACK akan bersinar karena ia dapat mengatasi
rule tersebut.Jenis firewall umum lainnya menggunakan rule stateful
yang akan men-drop paket tidak diharapkan. Fitur ini mulanya
hanya ditemukan pada firewall high-end, namun sekarang
telah umum digunakan. Sistem Linux
Netfilter/iptables mendukungnya melalui opsi
, yang mengkategorikan paket
berdasarkan status koneksi. Probe SYN kemungkinan berfungsi
untuk sistem tersebut, karena paket ACK yang tidak diharapkan
umumnya dikenali sebagai palsu dan di-drop. Solusi untuk masalah ini
adalah dengan mengirimkan probe SYN dan ACK secara bersamaan dengan memberikan opsi
and .
(UDP Ping)
UDP pingOpsi pencarian host lainnya adalah ping UDP, yang
mengirim paket UDP kosong (kecuali dispesifikasikan)
ke port yang diberikan. Daftar port
menggunakan format yang sama dengan yang telah didiskusikan pada opsi
dan . Jika tidak ada port
yang dispesifikasikanya, bakunya adalah 31338. Port baku ini
dapat dikonfigurasi pada waktu kompilasi dengan merubah
DEFAULT_UDP_PROBE_PORT_SPECDEFAULT_UDP_PROBE_PORT_SPEC
dalam nmap.h.nmap.h
Port tinggi yang tidak umum, digunakan secara baku karena mengirim
ke port terbuka seringkali tidak diharapkan untuk jenis pemeriksaan ini.Ketika menemui port tertutup pada mesin target, probe
UDP seharusnya menerima paket ICMP port unreachable.
Hal ini memberitahu Nmap bahwa mesin up dan tersedia.
Banyak jenis kesalahan ICMP lainnya, seperti
host/network unreachables atau TTL exceeded menandakan
host down atau tidak dapat dihubungi. Tidak ada respon
juga termasuk di dalamnya. Jika ditemukan sebuah port terbuka, kebanyakan
layanan akan mengabaikan paket kosong dan gagal mengirim tanggapan.
Inilah alasan mengapa port probe bakunya adalah 31338,
yang kemungkinan tidak digunakan. Beberapa layanan, seperti
protokol Character Generator (chargen), akan menanggapi paket UDP kosong,
dan karenanya memberitahu Nmap bahwa mesin tersedia.Keuntungan utama jenis scan ini adalah ia
melewati firewall dan filter yang hanya memeriksa TCP. Sebagai contoh,
saya pernah memiliki Linksys BEFW11S4 wireless broadband
router. Interface external device ini secara baku memfilter seluruh port
TCP, namun probe UDP tetap memberikan pesan port unreachable
dan karenanya memberitahu mengenai device ini.
;
;
(ICMP Ping Types)
ICMP pingSelain tipe pencarian host TCP dan UDP yang tidak umum di atas,
Nmap dapat mengirimkan paket dengan menggunakan program
ping. Nmap mengirim sebuah paket ICMP
tipe 8 (echo request) ke alamat IP target,
mengharapkan balasan paket tipe 0 (echo reply) dari host
yang ada.ICMP echo
Sayangnya bagai pengeksplorasi jaringan, saat ini banyak host dan
firewall yang memblokir paket-paket ini, alih-alih menanggapi sebagaimana yang
ditentukan oleh RFC
1122. Karena alasan ini, scan ICMP-only relatif tidak
handal terhadap target tak dikenal pada Internet.
Namun untuk administrator sistem yang memonitor jaringan internal,
mereka mungkin merupakan pendekatan yang praktis dan efisien.
Gunakan opsi untuk menggunakan perilaku echo
request ini.Meski echo request merupakan standar query ping ICMP,
Nmap tidak berhenti di sana. Standar ICMP (RFC
792) juga menspesifikasikan paket timestamp request, information
request, dan address mask request dengan kode 13, 15,
dan 17. Walaupun tujuan query-query ini adalah untuk
memperoleh informasi seperti address masks dan
waktu saat ini, mereka dapat dengan mudah digunakan sebagai
pencarian host. Sistem yang memberi tanggapan adalah up dan tersedia. Nmap
tidak mengimplementasikan paket information request, karena
mereka tidak didukung luas. RFC 1122 berkeras bahwa
sebuah host TIDAK SEHARUSNYA mengimplementasikan pesan ini.
Query timestamp dan address mask dapat dikirim dengan opsi
and .
Reply timestamp (ICMP kode 14) atau reply address
mask (kode 18) memberitahukan bahwa host tersedia.
Kedua query ini bermanfaat ketika administrator secara khusus
memblokir paket-paket echo request namun lupa bahwa query ICMP
lainnya dapat digunakan untuk tujuan yang sama.
(IP Protocol Ping)
IP protocol pingOpsi pencarian host terbaru adalah ping protokol IP,
yang mengirimkan paket IP dengan nomor port yang dispesifikasikan
dalam header IP-nya. Daftar protokol menggunakan format yang sama
seperti daftar port dalam opsi pencarian host TCP dan UDP yang
telah didiskusikan sebelumnya. Jika tidak didefinisikan protokol,
secara bakunya adalah mengirimkan banyak paket IP untuk
ICMP (protokol 1), IGMP (protokol 2), dan
IP-in-IP (protokol 4). Protokol baku dapat dikonfigurasi
pada waktu kompilasi dengan merubah
DEFAULT_PROTO_PROBE_PORT_SPECDEFAULT_PROTO_PROBE_PORT_SPEC
dalam nmap.h.
Perhatikan bahwa untuk ICMP, IGMP, TCP (protokol 6), dan UDP
(protokol 17), paket dikirim dengan header protokol yang sesuai
sementara protokol lainnya dikirim tanpa data tambahan
selain header IP (kecuali diberikan opsi
).Metode pencarian host ini melihat respon yang menggunakan protokol
yang sama dengan probe, atau protokol ICMP unreachable messages
yang memberitahu bahwa protokol dimaksud tidak didukung pada
host tujuan. Kedua jenis respon di atas menandakan bahwa
host target ada.
(ARP Ping)
ARP pingSalah satu skenario penggunaan Nmap yang umum adalah
memeriksa LAN ethernet. Pada kebanyakan LAN, terutama yang menggunakan
rentang alamat privat sebagaimana dijelaskan oleh RFC 1918, mayoritas
alamat IP tidak digunakan. Ketika Nmap berusaha mengirim paket IP raw
seperti sebuah ICMP echo request, sistem operasi harus menentukan alamat
hardware tujuan (ARP) yang sesuai dengan IP target sehingga ia dapat
mengirimkan frame ethernet dengan tepat. Hal ini seringkali lambat dan
bermasalah, karena sistem operasi tidak ditulis dengan maksud
mereka akan melakukan jutaan request ARP atas host-host yang tidak ada
dalam waktu yang singkat.Scan ARP menempatkan Nmap dan algoritma teroptimisasinya
untuk menangani request ARP. Dan bila ia memperoleh respon,
Nmap tidak perlu kuatir mengenai paket ping berbasis IP
karena ia telah mengetahui bahwa host up. Hal ini membuat
scan ARP jauh lebih cepat dan handal dibanding scan berbasis IP.
Sehingga ia dilakukan secara baku ketika memeriksa host ethernet yang
dideteksi Nmap berada pada jaringan ethernet lokal. Bahkan bila digunakan
jenis ping (seperti atau
), Nmap menggunakan ARP untuk sembarang target
yang berada dalam LAN yang sama. Jika anda tidak menginginkan scan ARP,
berikan opsi .
(Trace path to host)
traceroute
Traceroute dilakukan setelah scan menggunakan informasi dari hasil sscan untuk menentukan port dan protocol yang berpeluang besar mencapai target. Ia dapat digunakan untuk seluruh jenis scan kecuali scan connect () dan scan idle (). Seluruh pelacakan menggunakan model pewaktuan dinamis Nmap dan dilakukan secara paralel.
Traceroute bekerja dengan mengirimkan paket dengan TTL (time-to-live) rendah agar tidak memperoleh pesan ICMP Time Exceeded dari hop langsung antara scanner dan host target. Implementasi standar traceroute dimulai dengan TTL 1 dan menaikkan TTL hingga host tujuan tercapai. Traceroute Nmap dimulai dengan TTL tinggi dan kemudian menurunkan TTL hingga nol. Dengan melakukan secara terbalik Nmap menggunakan algoritma caching cerdas untuk mempercepat pelacakan atas banyak host. Secara rata-rata Nmap mengirimkan paket kurang dari 5–10 per host, tergantung pada kondisi jaringan. Jika dilakukan scan atas satu subnet tunggal (misal 192.168.0.0/24) Nmap mungkin hanya perlu mengirim satu paket untuk kebanyakan host tersebut.
(No DNS resolution)
Memberitahu Nmap untuk tidak melakukan resolusi reverse
DNS
reverse DNSdisabling with
pada alamat IP aktif yang ditemukannya. Karena DNS
dapat lambat meskipun dengan menggunakan resolver paralel built-in Nmap, opsi ini dapat mempercepat waktu pemeriksaan.
(DNS resolution for all targets)
Memberitahu Nmap untuk
selalu melakukan resolusi reverse DNS
pada alamat IP target. Normalnya reverse DNS hanya dilakukan
terhadap host yang online.
(Use system DNS resolver)
Secara baku, Nmap meresolve alamat IP dengan mengirimkan
query secara langsung ke server DNS yang dikonfigurasi pada host anda
dan mendengarkan responnya. Banyak request (seringkali selusin)
dilakukan secara paralel untuk meningkatkan kinerja.
Gunakan opsi ini untuk menggunakan resolver sistem anda (satu IP
pada satu waktu melalui call getnameinfo). Hal ini
lebih lambat dan jarang bermanfaat kecuali anda menemukan bug dalam resolver paralel Nmap
(mohon beritahu kami bila demikian). Resolver sistem selalu digunakan untuk scan IPv6.
IPv6limitations of
(Servers to use for reverse DNS queries)
Secara baku, Nmap menentukan server DNS anda
(untuk resolusi rDNS) dari file resolv.conf anda (Unix) atau
Registry (Win32). Selain itu, anda dapat menggunakan opsi ini
untuk menspesifikasikan server alternatif. Opsi ini tidak diindahkan
bila anda menggunakan atau melakukan scan
IPv6. Dengan menggunakan banyak server DNS seringkali lebih cepat,
terutama bila anda memilih server otoritatif untuk ruang IP target anda.
Opsi ini juga dapat meningkatkan kemampuan sembunyi (stealth), karena request
anda dapat diberikan ke sembarang server DNS rekursif di Internet.Opsi ini juga bermanfaat ketika memeriksa jaringan privat.
Terkadang hanya beberapa name server yang memberikan informasi rDNS yang tepat,
dan mungkin anda tidak tahu di mana mereka. Anda dapat memeriksa jaringan untuk
port 53 (mungkin dengan deteksi versi), lalu coba scan list Nmap
() dengan menspesifikasikan setiap name server pada satu waktu
dengan hingga anda menemukan yang berfungsi.Dasar Scanning PortMeskipun selama ini Nmap telah mengalami perkembangan fungsionalitas,
namun ia bermula sebagai sebuah scanner port yang efisien, dan hal itu tetap menjadi
fungsi utamanya. Perintah sederhana nmap
target akan memeriksa lebih dari
1660 port TCP pada host
target. Ketika banyak scanner port secara tradisional
membagi seluruh port ke dalam status terbuka (open) atau tertutup (closed),
Nmap lebih granular. Ia membagi port menjadi enam status :
open,
closed, filtered,
unfiltered,
open|filtered, or
closed|filtered.Status ini bukan merupakan properti intrinsik dari port itu sendiri,
namun menggambarkan bagaimana Nmap memandang mereka. Sebagai contoh,
scan Nmap dari jaringan yang sama dengan target mungkin menampilkan
port 135/tcp sebagai terbuka, sementara scan yang sama
pada waktu dan opsi yang sama dari Internet mungkin menunjukkan bahwa port tersebut filtered.Enam status port yang dikenali Nmapopen port state
openSebuah aplikasi secara aktif menerima koneksi paket TCP
atau UDP pada port ini. Menemukan port terbuka ini seringkali merupakan
tujuan utama scanning port. Orang dengan pikiran keamanan (security-minded) tahu bahwa
setiap port terbuka merupakan celah untuk serangan. Penyerang dan pen-testers
ingin mengeksploitasi port terbuka, namun administrator berusaha menutup atau
melindungi mereka dengan firewall tanpa mengganggu user yang berhak.
Port terbuka juga menarik bagi scan bukan keamanan karena mereka memberitahu
layanan yang dapat digunakan pada jaringan.
closed port state
closedPort tertutup dapat diakses (ia menerima dan
menanggapi paket probe Nmap), namun tidak ada aplikasi yang mendengarkan
padanya. Mereka bermanfaat dengan menunjukkan bahwa host up
pada alamat IP tersebut (host discovery, atau ping scanning), dan sebagai bagian
deteksi SO. Oleh karena port tertutup dapat dijangkau, bermanfaat untuk
mencoba scan di waktu yang lain jikalau port tersebut terbuka. Administrator mungkin
perlu mempertimbangkan untuk memblok port tersebut dengan firewall. Lalu mereka
akan muncul dalam status filtered, yang akan didiskusikan.
filtered port state
filteredNmap tidak dapat menentukan apakah port terbuka
karena packet filtering mencegah probenya mencapai port.
Filter ini dapat dilakukan oleh device firewall, aturan pada router,
atau software firewall pada host. Port ini membuat penyerang frustrasi
karena mereka memberikan sedikit informasi. Terkadang mereka menanggapi
dengan pesan kesalahan ICMP misalnya tipe 3 kode 13
(tujuan tidak dapat dicapai: komunikasi dilarang secara administratif),
namun yang lebih umum adalah filter yang hanya men-drop probe tanpa memberi
tanggapan. Hal ini memaksa Nmap berusaha beberapa kali untuk memastikan
probe tidak di-drop akibat jaringan yang padat.
Hal ini sangat memperlambat proses scan.unfiltered port state
unfilteredStatus unfiltered berarti bahwa port dapat diakses,
namun Nmap tidak dapat menentukan apakah ia open atau closed. Hanya scan
ACK, yang digunakan untuk mengetahui aturan firewall, menggolongkan
port ke dalam status ini. Pemeriksaan port unfiltered dengan tipe pemeriksaan lain
seperti Window scan, SYN scan, atau FIN scan, dapat membantu mengetahui
apakah port terbuka.
open|filtered port state
open|filteredNmap menganggap port dalam status ini bila ia tidak dapat
menentukan apakah port open atau filtered. Hal ini terjadi untuk jenis pemeriksaan
ketika port terbuka tidak memberi respon. Tidak adanya tanggapan dapat pula berarti
bahwa packet filter men-drop probe atau respon yang diberikan. Sehingga Nmap tidak
dapat mengetahui dengan tepat apakah port terbuka atau difilter. Scan UDP, IP protocol,
FIN, NULL, dan Xmas mengklasifikasikan port dengan cara ini.closed|filtered port state
closed|filteredStatus ini digunakan ketika Nmap tidak dapat menentukan
apakah port tertutup atau di-filter. Ia hanya digunakan pada scan idle ID IP.Teknik Scanning PortSebagai seorang pemula yang melakukan perbaikan otomotif, saya dapat berjuang
berjam-jam untuk menyesuaikan alat sederhana saya (palu, duct tape,
dsb.) untuk tugas yang ada. Ketika saya gagal dan menyerahkannya pada
mekanik sebenarnya, ia mencari dalam kotak perangkatnya hingga menemukan
alat yang tepat yang membuat pekerjaan tersebut menjadi mudah. Seni scanning port
juga serupa. Para ahli memahami beragam teknik pemindaian dan memilih
satu (atau kombinasi) yang sesuai untuk tugas yang ada. User tidak berpengalaman dan
script kiddies,script kiddies
di lain pihak, berusaha menyelesaikan semua masalah dengan scan SYN baku. Oleh karena Nmap
gratis, satu-satunya penghalang menguasai scanning port adalah pengetahuan. Hal itu tentu
saja mengalahkan dunia otomotif, setelah membutuhkan keahlian tinggi untuk menentukan bahwa
anda butuh kompresor pegas strut, lalu anda mesti harus membayar ribuan dolar untuknya.Kebanyakan jenis scan hanya tersedia untuk
user privilege.privileged users
Hal ini karena mereka mengirim dan menerima paket raw,raw packets yang membutuhkan akses root pada sistem Unix.
Pada sistem Windows, menggunakan akun administrator disarankan, meski
terkadang Nmap dapat bekerja untuk unprivileged users ketika WinPcap telah dimuatkan ke SO. Kebutuhan akan privilege root merupakan sebuah batasan serius ketika Nmap dirilis pada tahun 1997,
karena banyak user hanya mempunyai akses ke shared shell. Saat ini,
hal tersebut berbeda. Komputer telah lebih murah, lebih banyak orang memiliki
akses langsung Internet always-on, dan banyak sistem Unix desktop (termasuk
Linux dan Mac OS X). Versi Nmap Windows kini tersedia, membuatnya
berjalan di lebih banyak desktop. Karena alasan-alasan ini,
user memiliki sedikit alasan untuk menjalankan Nmap dari akun shared shell yang terbatas.
Ini merupakan keberuntungan, karena opsi privilege membuat Nmap lebih
powerful dan fleksibel.Meski Nmap berusaha memberikan hasil yang akurat, namun perlu diperhatikan
bahwa seluruh pandangannya didasarkan pada paket yang dikembalikan oleh mesin target
(atau firewall di depan mereka). Host tersebut mungkin tidak dapat dipercaya
dan responnya bertujuan membingungkan atau mengacaukan Nmap.
Yang lebih umum adalah host yang tidak sesuai dengan RFC yang tidak menanggapi
sebagaimana yang seharusnya atas probe Nmap. Scan FIN, NULL, dan Xmas terutama
rentan terhadap masalah ini. Isu tersebut adalah spesifik untuk jenis scan tertentu
dan didiskusikan dalam entri jenis scan individual.Bagian ini mendokumentasikan selusin atau lebih teknik scan port
yang didukung oleh Nmap. Hanya satu metode yang boleh digunakan di satu waktu,
kecuali scan UDP () dapat digabungkan dengan sembarang
jenis scan TCP. Sebagai pengingat, opsi jenis scan port adalah
dalam bentuk , dengan
C merupakan karakter utama dalam nama scan,
biasanya yang pertama. Satu pengecualian untuk ini adalah scan bounce FTP
yang telah kuno (). Secara baku, Nmap melakukan
SYN Scan, meski ia menggantinya dengan scan connect bila user tidak memiliki
privilege untuk mengirim paket raw (membutuhkan akses root pada Unix)
atau bila dispesifikasikan target IPv6. Dari semua scan yang ada di bawah ini,
unprivileged user hanya dapat menjalankan scan connect dan FTP bounce.
(TCP SYN scan)
SYN scanSYN scan merupakan opsi scan baku dan terpopuler dengan alasan yang baik.
Ia dapat dilakukan dengan cepat, memeriksa ribuan port per detik pada jaringan
yang cepat tidak dihalangi oleh firewall yang membatasi. Scan SYN
relatif tidak mengganggu dan tersembunyi, karena ia tidak pernah melengkapi
koneksi TCP. Ia juga bekerja terhadap stack TCP yang sesuai alih-alih
tergantung pada platform khusus sebagaimana scan FIN/NULL/Xmas, Maimon dan idle.
Ia juga memungkinkan pembedaan yang tegas dan handal antara status open,
closed, dan filtered.Teknik ini seringkali diacu sebagai pemeriksaan setengah terbuka (half-open scanning),
karena anda tidak membuka seluruh koneksi TCP. Anda mengirim sebuah paket SYN,
seperti anda ingin melakukan koneksi sesungguhnya dan kemudian menunggu tanggapan.
SYN/ACK menandakan port sedang mendengarkan (open), RST (reset) menandakan tidak sedang
mendengarkan. Jika tidak ada tanggapan setelah beberapa kali pengiriman ulang, port
ditandai sebagai tersaring (filtered). Port juga ditandai sebagai tersaring bila diterima
kesalahan ICMP unreachable (tipe 3, kode 1, 2, 3, 9, 10, atau 13).
(TCP connect scan)
connect scanScan TCP connect merupakan jenis scan baku TCP ketika scan SYN
tidak dapat digunakan. Hal ini terjadi ketika user tidak memiliki privilege
untuk paket raw atau ketika melakukan pemeriksaan jaringan IPv6. Alih-alih menulis paket
raw sebagaimana dilakukan jenis scan lainnya, Nmap meminta SO
membuat koneksi dengan mesin target dan port dengan memberikan system call
connect. Ini merupakan system call
yang digunakan oleh web browsers, klien P2P, dan kebanyakan aplikasi jaringan
lainnya untuk membuat koneksi. Ia merupakan bagian dari interface pemrograman
yang dikenal sebagai Berkeley Sockets API. Nmap juga menggunakan API ini untuk
memperoleh informasi status setiap usaha koneksi.
Ketika tersedia SYN scan, ia merupakan pilihan yang lebih baik. Nmap
kurang memiliki kendali atas call connect daripada
paket raw, membuatnya kurang efisien. System call membuat koneksi lengkap
untuk membuka port target daripada membuat reset setengah-terbuka (half-open reset)
yang dilakukan SYN scan. Hal ini tidak saja lebih lambat dan membutuhkan lebih banyak paket
untuk memperoleh informasi yang sama, namun juga mesin target kemungkinan mencatat koneksi.
IDS yang baik akan mendeteksi hal ini, namun kebanyakan mesin tidak memiliki sistem alarm tersebut.
Kebanyakan layanan pada sistem Unix umum akan membuat catatan ke syslog, dan seringkali
pesan kesalahan yang rumit, ketika Nmap membuka dan menutup koneksi tanpa mengirim data.
Layanan yang benar-benar buruk akan crash ketika hal ini terjadi, meskipun tidak umum.
Administrator yang melihat serangkaian usaha koneksi dari sistem tunggal di lognya seharusnya
tahu bahwa ia telah diperiksa dengan metode connect.
(UDP scan)
UDP scanWalau kebanyakan layanan populer di Internet menggunakan protokol TCP, layanan
UDP
luas dipergunakan. DNS, SNMP, dan DHCP (port 53, 161/162, dan 67/68) adalah tiga yang paling
umum. Karena pemeriksaan UDP umumnya lebih lambat dan lebih sulit dibanding TCP, beberapa
audit keamanan mengabaikan port ini. Ini merupakan kesalahan, karena eksploitasi layanan UDP
cukup umum dan penyerang tentu saja tidak mengabaikan seluruh protokol. Untungnya, Nmap dapat
membantu inventori port UDP.Scan UDP diaktifkan dengan opsi . Ia dapat digabungkan
dengan jenis scan TCP seperti SYN scan () untuk memeriksa
kedua buah protokol sekaligus.Scan UDP bekerja dengan mengirimkan header UDP kosong (tanpa data) ke setiap port
yang diinginkan. Jika diperoleh kesalahan ICMP port unreachable (tipe 3, kode 3), port itu closed. Kesalahan ICMP lainnya (tipe 3,
kode 1, 2, 9, 10, atau 13) menandakan port sebagai filtered. Seringkali, sebuah layanan akan menanggapi dengan paket UDP, membuktikan bahwa ia open. Jika tidak ada tanggapan setelah transmisi ulang, port
dianggap open|filtered. Hal ini berarti bahwa port dapat berada dalam keadaan open, atau mungkin packet filter memblokir komunikasi. Deteksi versi
() dapat digunakan untuk membantu membedakan antara port yang terbuka dengan yang disaring.Tantangan terbesar scanning UDP adalah melakukannya dengan cepat.
Port terbuka dan tersaring jarang mengirimkan tanggapan, membuat Nmap time
out dan kemudian melakukan transmisi ulang bilamana probe atau respon hilang.
Port tertutup seringkali merupakan masalah yang lebih besar.
Mereka umumnya mengirimkan ulang kesalahan ICMP port unreachable. Namun tidak seperti
paket RST yang dikirim oleh port TCP tertutup sebagai respon atas scan SYN atau connect,
banyak host secara baku membatasi pesan rate limiting ICMP port unreachable.
Linux dan Solaris terutama sangat ketat mengenai hal ini. Sebagai contoh, kernel
Linux 2.4.20 membatasi pesan destination unreachable ke satu per detik
(dalam net/ipv4/icmp.c).Nmap mendeteksi pembatasan ini dan memperlambat kerjanya untuk menghindari
pemenuhan jaringan dengan paket-paket tidak perlu yang akan di-drop oleh mesin target.
Sayangnya, pembatasan ala Linux dengan satu paket per detik membuat pemeriksaan 65.536
membutuhkan waktu lebih 18 jam. Ide untuk mempercepat scan UDP termasuk pemeriksaan
lebih banyak host secara paralel, melakukan pemeriksaan atas port-port populer dulu,
pemeriksaan di belakang firewall, dan menggunakan untuk melewati
host lambat.
; ; (TCP NULL, FIN, dan Xmas scan)
NULL scanFIN scanXmas scanKetiga jenis scan ini (bahkan kemungkinan lebih dengan adanya opsi
yang dijelaskan pada bagian berikutnya)
mengeksploitasi kelemahan dalam RFC TCP untuk membedakan
antara port open dan
closed. Halaman 65 RFC 793 mengatakan bawha if the
[destination] port state is CLOSED .... an incoming segment not
containing a RST causes a RST to be sent in response. Lalu halaman berikutnya
mendiskusikan paket yang dikirim ke port terbuka tanpa bit SYN, RST, atau ACK diset,
menyatakan bahwa : you are unlikely to get here, but if you do, drop the
segment, and return.Ketika memeriksa sistem yang sesuai dengan teks RFC ini, sembarang paket
yang tidak berisikan bit SYN, RST, atau ACK akan berakibat pengembalian RST bila
port tertutup dan tidak ada respon bila port terbuka. Selama ketiga bit ini tidak disertakan,
sembarang kombinasi ketiga bit lainnya (FIN, PSH, dan URG) adalah OK. Nmap mengeksploitasi
celah ini dengan ketiga jenis scan berikut :Null scan ()Tidak mengirimkan bit(header flag TCP adalah 0)FIN scan ()Hanya menset bit FIN TCP.Xmas scan ()Menset flag FIN, PSH, dan URG, menerangi paket
seperti sebuah pohon Natal.Ketiga jenis scan ini serupa perilakunya kecuali untuk flag TCP yang diset
dalam paket probe. Jika diterima paket RST,
port dianggap closed, tidak ada respon
berarti ia open|filtered. Port ditandai
filtered bila diterima kesalahan ICMP unreachable (tipe 3, kode
1, 2, 3, 9, 10, atau 13).Keuntungan utama jenis scan ini adalah bahwa mereka dapat
menyusup melalui non-stateful firewall dan router packet filtering
tertentu. Keunggulan lain adalah bahwa ketiga scan ini lebih tersembunyi bahkan
bila dibandingkan dengan SYN scan. Jangan mengandalkan hal ini karena
produk IDS modern dapat dikonfigurasi untuk mendeteksi mereka. Kelemahan utama
adalah tidak semua sistem mematuhi RFC 793 secara tepat. Sejumlah sistem
mengirim respon RST atas probe tanpa perduli apakah port terbuka atau tertutup.
Hal ini membuat seluruh port dianggap sebagai closed.
Sistem operasi utama yang melakukan hal ini adalah Microsoft Windows, banyak device Cisco devices,
BSDI, dan IBM OS/400. Scan ini tidak bekerja terhadap kebanyakan sistem berbasis Unix.
Kekurangan lainnya adalah scan ini tidak dapat membedakan antara
port open dengan port tertentu yang
filtered, memberikan anda tanggapan
open|filtered.
(TCP ACK scan)
ACK scanScan ini berbeda dengan yang telah didiskusikan sejauh ini yaitu ia
tidak pernah menentukan port open (or even
open|filtered). Ia digunakan untuk memetakan
aturan firewall, menentukan apakah mereka stateful atau tidak dan
port mana saja yang disaring.Paket probe scan ACK hanya memiliki flag ACK di-set (kecuali anda menggunakan
). Ketika memeriksa sistem yang tidak disaring, port
open dan closed keduanya
akan mengembalikan paket RST. Nmap kemudian menandakan mereka sebagai
unfiltered, yang berarti mereka dapat dicapai oleh paket
ACK, namun belum dapat ditentukan apakah mereka open atau
closed. Port yang tidak menanggapi,
atau mengirim kembali pesan kesalahan ICMP (tipe 3, kode 1, 2, 3, 9, 10,
atau 13), dianggap sebagai filtered.
(TCP Window scan)
window scanWindow scan serupa dengan ACK scan kecuali bahwa ia
mengeksploitasi detil implementasi pada sistem tertentu yang membedakan port terbuka
dengan port tertutup, alih-alih selalu menampilkan
unfiltered ketika dikembalikan RST. Ia melakukan hal ini
dengan memeriksa field TCP Window paket RST yang dikembalikan. Pada beberapa sistem,
port terbuka menggunakan ukuran jendela positif (bahkan untuk paket RST) sementara
port tertutup memiliki jendela nol. Sehingga alih-alih selalu menampilkan
port sebagai unfiltered ketika menerima kembali RST,
Window scan menampilkan port sebagai open atau
closed jika nilai TCP Window dalam reset tersebut
positif atau nol.Scan ini mengandalkan detil implementasi sedikit sistem yang ada di Internet,
sehingga anda tidak dapat selalu mempercayainya. Sistem yang tidak mendukungnya
biasanya akan mengembalikan semua port sebagai closed.
Tentu saja, adalah mungkin mesin benar-benar tidak memiliki port terbuka.
Jika kebanyakan port yang diperiksa adalah closed namun beberapa angka port umum (seperti 22, 25, 53) adalah filtered, informasi
ini kemungkinan benar. Seringkali, sistem akan memberitahukan perilaku sebaliknya.
Jika scan anda menunjukkan bahwa 1000 port terbuka dan tiga port tertutup atau disaring,
maka ketiga port tersebut mungkin saja adalah port yang terbuka.
(TCP Maimon scan)
Maimon scanScan Maimon dinamakan dengan nama penemunya,
Uriel Maimon.Maimon, Uriel
Ia menjelaskan teknik ini dalam
Phrack Magazine issue #49 (November 1996).Phrack
Nmap, yang menyertakan teknik ini, dirilis dua isu kemudian.
Teknik ini sama persis dengan scan NULL, FIN, dan Xmas, kecuali
probenya adalah FIN/ACK. Menurut RFC 793 (TCP), paket RST
seharusnya dihasilkan sebagai tanggapan atas probe tersebut entah port terbuka atau
tertutup. Namun demikian, Uriel memperhatikan bahwa banyak sistem berbasis BSD
men-drop paket jika port terbuka.
(Custom TCP scan)
User Nmap mahir tidak perlu membatasi dirinya pada jenis scan yang tersedia secara baku. Opsi memungkinkan anda merancang scan anda sendiri
dengan menspesifikasikan sembarang flag TCP.TCP flags.
Biarkan cairan kreatif anda mengalir, sementara mengakali
intrusion detection systemintrusion detection systemsevading
yang vendornya sekedar membaca man page Nmap menambahkan aturan khusus!Argumen dapat berupa nilai flag numerik
seperti 9 (PSH dan FIN), namun menggunakan nama simbolik lebih
mudah. Gabungkan saja sembarang kombinasi URG,
ACK, PSH,
RST, SYN, dan
FIN. Sebagai contoh, menset semuanya, meskipun ia tidak terlalu
bermanfaat untuk pemeriksaan. Urutan spesifikasi tidaklah relevan.Selain dengan menspesifikasikan flag yang diinginkan, anda dapat pula
memberikan jenis scan TCP (seperti atau ).
Jenis dasar tersebut memberitahu Nmap bagaimana menginterpretasikan respon. Sebagai
contoh, SYN scan menganggap no-response sebagai indikasi port
filtered, sementara FIN scan mengganggapnya sebagai
open|filtered. Nmap akan berperilaku sama
dengan jenis scan dasar, kecuali ia akan menggunakan flag TCP yang anda spesifikasikan
Jika anda tidak menspesifikasikan tipe dasar, akan digunakan SYN scan.
(idle scan)
idle scanMetode scan tingkat tinggi ini memungkinkan scan port TCP secara
tersembunyi (artinya tidak ada paket dikirim ke target dari alamat IP
anda yang sebenarnya). Alih-alih, serangan side-channel mengeksploitasi
pembuatan urutan ID fragmentasi IP yang mudah ditebak pada host zombi
untuk memperoleh informasi tentang port terbuka pada target.
Sistem IDS akan menampilkan scan berasal dari mesin zombi yang anda
spesifikasikan (yang harus up dan memenuhi beberapa kriteria).
Jenis scan menarik ini terlalu kompleks untuk dijelaskan dalam panduan
referensi ini, sehingga saya menulis dan menaruh paper informal dengan
detil penuh di .
Full details of this fascinating scan type are in
.
Selain sangat tersembunyi (karena sifat
blind-nya), jenis scan ini mengijinkan pemetaan
relasi kepercayaan berbasis IP antar mesin. Daftar port
menampilkan port terbuka dari perspektif host zombi.
Sehingga anda dapat berusaha memeriksa target dengan menggunakan
beragam zombi yang anda anggap terpercaya
trust relationships
(melalui aturan router/packet filter).
Anda dapat menambah tanda titik dua diikuti nomor port
pada host zombi jika anda ingin memeriksa port tertentu pada zombi
untuk perubahan ID IP. Jika tidak Nmap akan menggunakan port
baku yang digunakan untuk ping TCP (80).
(IP protocol scan)
IP protocol scanScan protokol IP memungkinkan anda menentukan protokol IP mana
(TCP, ICMP, IGMP, dsb.) yang didukung oleh mesin target. Secara teknis
ini bukanlah scan port, karena ia menggunakan nomor protokol IP
alih-alih nomor port TCP atau UDP. Namun ia tetap menggunakan opsi
untuk memilih nomor protokol yang diperiksa, melaporkan
hasilnya dalam format tabel port normal, dan bahkan menggunakan
mesin scan yang sama dengan metode scanning port sebenarnya. Ia
cukup dekat dengan scan port sehingga berada di sini.Selain memiliki fungsi tertentu, scan protokol
mendemonstrasikan kekuatan software open-source. Meskipun ide dasarnya
cukup sederhana, saya tidak berpikir atau menerima permintaan untuk
menambah fungsionalitas semacam itu. Lalu pada musim panas tahun 2000,
Gerhard RiegerRieger, Gerhard
menerima ide tersebut, menulis patch yang bagus untuk mengimplementasikannya,
dan mengirimnya ke milis
nmap-hackers.nmap-hackers mailing list
Saya menggabungkan patch tersebut ke Nmap dan merilis versi baru
di hari berikutnya. Sedikit software komersial memiliki user yang cukup antusias
untuk merancang dan memberikan kontribusi perbaikan!Scan protocol bekerja dalam cara yang sama dengan scan UDP. Alih-alih
beriterasi atas field nomor port paket UDP, ia mengirim header paket IP
dan beriterasi pada field protokol IP delapan-bit.
Header biasanya kosong, tidak berisi data dan bahkan tiada header yang sesuai
untuk protokol yang diklaim. Tiga pengecualian adalah TCP,
UDP, dan ICMP. Header protokol yang sesuai untuk mereka disertakan
karena beberapa sistem tidak akan mengirimnya dan karena Nmap telah memiliki
fungsi untuk membuatnya. Alih-alih mengamati pesan ICMP port unreachable,
scan protocol mencari pesan ICMP protocol unreachable.
Bila Nmap menerima respon dalam sembarang protokol dari host target, Nmap menandai
protokol tersebut sebagai open. Kesalahan ICMP protocol unreachable (tipe 3, kode 2) menyebabkan protokol ditandai sebagai
closed. Kesalahan ICMP unreachable lainnya (tipe 3, kode
1, 3, 9, 10, atau 13) menyebabkan protokol ditandai
filtered (meskipun mereka membuktikan bahwa ICMP
open di waktu yang sama). Jika tidak menerima respon
setelah transmisi ulang, protokol ditandai sebagai
open|filtered
(FTP bounce scan)
FTP bounce scanSatu fitur menarik protokol FTP (RFC 959) mendukung
koneksi FTP proxy. Hal ini memungkinkan user untuk koneksi ke satu server FTP,
lalu meminta file dikirimkan ke server pihak ketiga.
Fitur tersebut rentan terhadap penyalahgunaan di banyak tingkat,
sehingga banyak server berhenti mendukungnya. Salah satu penyalahgunaan
yang dibolehkan fitur ini adalah membuat server FTP melakukan scan port ke host lain.
Cukup minta server FTP mengirim sebuah file ke setiap port yang diinginkan pada host target.
Pesan kesalahan akan menjelaskan apakah port terbuka atau tidak.
Hal ini merupakan cara yang baik untuk melewati firewall karena
server FTP organisasi biasanya lebih memiliki akses ke host internal daripada
host Internet. Nmap mendukung scan bounce FTP dengan opsi option.
Ia mengambil argumen dalam bentuk
username:password@server:port.
Server adalah nama atau alamat IP server FTP yang rentan.
Sebagaimana dengan URL normal, anda dapat menghilangkan
username:password,
sehingga menggunakan login anonim (user:
anonymous password:-wwwuser@)
. Nomor port (dan tanda titik dua sebelumnya) dapat dihilangkan juga,
sehingga menggunakan port FTP baku (21) pada
server.Kerentanan ini meluas di tahun 1997 ketika Nmap dirilis,
namun telah diperbaiki. Server-server yang rentan masih ada,
sehingga patut dicoba bila teknik yang lainnya gagal. Jika tujuan anda
adalah melewati firewall, scan jaringan target untuk port 21 (atau
bahkan untuk sembarang layanan FTP jika anda scan seluruh port dengan deteksi
versi) yang terbuka, lalu coba scan bounce. Nmap akan memberitahu anda
apakah host rentan atau tidak. Jika anda hanya ingin menutupi
jejak anda, anda tidak perlu (dan bahkan tidak seharusnya) membatasi
diri anda pada host pada jaringan target. Sebelum anda memeriksa
alamat Internet acak untuk mencari server FTP yang rentan, pertimbangkan bahwa
sysadmin mungkin tidak akan menghargai anda menggunakan server mereka dengan cara ini.Spesifikasi Port dan Urutan Scanport specificationSelain menawarkan semua metode scan yang telah dijelaskan sebelumnya,
Nmap juga memberikan opsi untuk menspesifikasikan port mana yang ingin diperiksa dan
apakah urutan scan secara acak atau berurutan. Secara baku, Nmap memeriksa 1.000 port
untuk setiap protokol yang paling umum.
default ports
(Hanya memeriksa port yang dispesifikasikan)
Opsi ini menentukan port yang ingin anda periksa dan
meniadakan nilai baku. Nomor port individu adalah OK, dan juga
rentang yang dipisahkan oleh tanda sambung (misaln 1-1023). Nilai awal dan/atau
akhir sebuah rentang dapat dihilangkan, Nmap lalu akan menggunakan
1 dan 65535. Jadi anda dapat memberikan opsi
untuk memeriksa port dari 1 hingga 65535.
Anda diperbolehkan memeriksa port nol port zero
jika anda menspesifikasikannya secara eksplisit.
Untuk pemeriksaan protokol IP (), opsi ini
menspesifikasikan nomor protokol yang ingin anda periksa (0–255).Ketika memeriksa port TCP dan UDP, anda dapat menentukan
protokol tertentu dengan menambahkan T:
atau U: di depan nomor port.
Qualifier ini berlaku hingga anda menspesifikasikan qualifier lain.
Sebagai contoh, argumen akan memeriksa port UDP
53, 111,dan 137, dan juga port TCP yang disebutkan. Untuk memeriksa
UDP dan TCP, anda harus menspesifikasikan
dan paling tidak satu jenis scan TCP (seperti
, , atau
). Jika tidak diberikan qualifier protokol,
nomor port akan ditambahkan ke seluruh daftar protokol.port specificationwildcards inwildcardsport selection, wildcards in
Port dapat juga dispesifikasikan dengan nama sesuai dengan apa yang diacu dalam
file nmap-services. Anda bahkan
dapat menggunakan wildcard * dan ? dengan nama. Sebagai contoh, untuk memeriksa
port FTP dan seluruh port yang namanya dimulai dengan http, gunakan .
Berhati-hatilah dengan ekspansi shell dan berilah tanda kutip pada argumen jika tidak yakin.Rentang port dapat dikelilingi oleh tanda kurung siku (square bracket)
untuk mengindikasikan port yang berada di dalam rentang tersebut yang ada dalam nmap-services.
Sebagai contoh, opsi berikut ini akan memeriksa seluruh port dalam nmap-services
yang kurang dari sama dengan 1024: . Berhati-hatilah dengan ekspansi shell dan berilah tanda kutip pada argumen jika tidak yakin.
(Fast (limited port) scan)
fast scanMemberitahukan bahwa anda ingin memeriksa lebih sedikit port
daripada jumlah baku. Normalnya Nmap memeriksa 1.000 port umum
untuk setiap protokol yang diperiksa. Dengan , jumlahnya
dikurangi menjadi 100.Nmap membutuhkan file nmap-services
dengan informasi frekuensi untuk mengetahui port yang paling umum
(see
untuk lebih jauh mengenai frekuensi port). Jika informasi
frekuensi port tidak tersedia, mungkin karena penggunaan file
nmap-services kustom,
berarti memeriksa hanya port yang ada di dalam
file services (normalnya Nmap memeriksa seluruh port yang memiliki nama dan
port 1–1024).
(Jangan randomisasi port)
randomization of portsSecara baku, Nmap merandomisasi urutan port yang diperiksa
(kecuali port tertentu yang biasa diakses dipindahkan ke awal untuk
alasan efisiensi). Randomisasi ini biasanya diinginkan,namun anda
dapat memberikan opsi untuk pemeriksaan port
secara berurutan.--port-ratioMemeriksa seluruh port dalam file nmap-services dengan rasio lebih daripada angka yang diberikan sebagai argumen.--top-portsMemeriksa port-port dengan rasio tertinggi N yang ditemukan dalam file nmap-services.Deteksi Versi dan Layananversion detectionArahkan Nmap ke mesin remote dan ia dapat memberitahu anda
bahwa port 25/tcp, 80/tcp, dan 53/udp terbuka. Dengan menggunakan database
nmap-servicesnmap-services
yang berisi lebih dari 2.200
layanan yang dikenal,well-known ports
Nmap akan melaporkan bahwa port tersebut mungkin adalah
server mail (SMTP), server web (HTTP), dan name server (DNS).
Pencocokan ini biasanya akurat- sebagian besar daemon
yang mendengarkan TCP port 25 adalah, mail
server. Namun demikian, anda tidak seharusnya terpaku pada hal ini!
Orang-orang dapat dan menjalankan layanan pada port-port aneh.non-standard portsBahkan bila Nmap benar, dan server hipotetis di atas menjalankan
server SMTP, HTTP, dan DNS, itu bukanlah informasi yang banyak.
Ketika melakukan vulnerability assessment (atau inventori jaringan)
atas perusahaan atau klien anda, anda benar-benar ingin mengetahui
server mail dan DNS mana serta versi apa yang dijalankan.
Dengan memiliki angka versi yang akurat akan membantu secara dramatis dalam
menentukan eksploitasi yang tepat terhadap server tersebut. Deteksi versi
membantu anda memperoleh informasi ini.
Setelah port TCP dan/atau UDP ditemukan dengan menggunakan
salah satu metode scan, deteksi versi menginterogasi port tersebut
untuk menentukan lebih jauh mengenai apa yang sedang berjalan. Database
nmap-service-probesnmap-service-probes
berisikan probe untuk melakukan query ke sejumlah layanan dan ekspresi pencocokan
untuk mengenali dan memproses respon. Nmap berusaha menentukan protokol layanan
(misalnya FTP, SSH, Telnet, HTTP), nama aplikasi (misalnya ISC
BIND, Apache httpd, Solaris telnetd), angka versi,
nama host, jenis device (misal printer, router), keluarga SO
(misal Windows, Linux) dan terkadang detil lainnya seperti
apakah X server terbuka untuk koneksi, versi protokol SSH,
atau nama user KaZaA). Tentu saja, kebanyakan layanan
tidak memberikan informasi ini. Jika Nmap dikompilasi dengan dukungan
OpenSSL, ia akan koneksi ke server SSL untuk mendapatkan layanan
yang berada di belakang lapisan enkripsi.SSLin version detection
Ketika ditemukan layanan RPC,
Nmap RPC grinderRPC grinder
()
secara otomatis digunakan untuk menentukan program dan angka versi RPC.
Beberapa port UDP diinformasikan dalam status
open|filtered setelah scan port UDP
tidak dapat menentukan apakah port terbuka atau disaring. Deteksi versi
akan berusaha memperoleh respon dari port ini (sebagaimana dari
port terbuka), dan merubah status port menjadi terbuka bila ia
berhasil. Port TCP open|filtered diperlakukan
dalam cara yang sama. Perhatikan bahwa opsi di antaranya
mengaktifkan deteksi versi.
Sebuah paper yang mendokumentasikan cara kerja, penggunaan, dan kustomisasi
deteksi versi tersedia di
.
Deteksi versi dijelaskan secara rinci dalam .
Bila Nmap menerima respon dari sebuah layanan namun tidak
dapat mencocokkannya ke database, ia akan mencetak fingerprint khusus dan
sebuah URL untuk menyerahkannya bila anda tahu secara pasti apa yang berjalan
pada port tersebut. Mohon meluangkan waktu beberapa menit untuk menyerahkannya
sehingga dapat bermanfaat bagi semua orang. Berkat penyerahan ini,
Nmap memiliki sekitar 3.000 pola yang sesuai untuk lebih dari
350 protokol seperti SMTP, FTP, HTTP, dsb.submission of service fingerprintsDeteksi versi diaktifkan dan dikendalikan dengan opsi-opsi berikut:
(Deteksi Versi)
Mengaktifkan deteksi versi, seperti yang dijelaskan di atas.
Anda dapat pula menggunakan , yang salah satunya
mengaktifkan deteksi versi.
(Sertakan seluruh port dalam deteksi versi)
Secara baku, deteksi versi Nmap melewati TCP port 9100
karena beberapa printer akan mencetak segala yang dikirim ke port itu,
berakibat puluhan halaman request HTTP GET, sesi biner SSL, dsb.
Perilaku ini dapat diubah dengan memodifikasi atau menghapus
direktif Exclude
dalam nmap-service-probes, atau
anda dapat menspesifikasikan untuk memeriksa seluruh
port tanpa mengindahkan direktif Exclude.
Exclude directive (nmap-service-probes)
(Menset
intensitas pemeriksaan versi)
Ketika melakukan pemeriksaan versi (), Nmap mengirim
serangkaian probe, dan setiap probe diberi nilai antara satu dan sembilan.
Probe dengan nomor rendah efektif terhadap beragam layanan umum, sementara
nomor lebih tinggi jarang berguna. Level intensitas menspesifikasikan probe
mana yang harus diaplikasikan. Semakin tinggi angkanya, semakin mungkin
layanan diidentifikasi dengan benar. Namun demikian, scan dengan intensitas tinggi
membutuhkan waktu yang lebih lama. Intensitas harus antara 0 dan 9.
version detectionintensity
Nilai bakunya adalah 7.
version detectiondefault intensity
Ketika sebuah probe didaftarkan ke port target melalui direktif
nmap-service-probesports, probe tersebut akan dicoba tanpa memperdulikan
level intensitas. Hal ini memastikan bahwa probe DNS akan selalu dicoba terhadap
sembarang port terbuka 53, probe SSL akan dilakukan terhadap port 443, dst.
(Aktifkan mode ringan)
Opsi ini merupakan alias dari
. Mode ringan ini
membuat pemeriksaan versi lebih cepat, namun mungkin kurang
dapat mengidentifikasi layanan.
(Coba semua probe tunggal)
Sebuah alias bagi ,
memastikan bahwa setiap probe tunggal dicoba terhadap setiap port.
(Melacak aktivitas pemeriksaan versi)
Hal ini membuat Nmap mencetak info debugging yang ekstensif tentang
pemeriksaan versi yang sedang dilakukan. Ia merupakan subset dari .
(RPC scan)
RPC scanRPC grinderRPC grinderMetode ini bekerja sama dengan beragam metode pemeriksaan port
Nmap. Ia menggunakan seluruh port TCP/UDP yang terbuka dan membanjiri mereka
dengan perintah NULL program SunRPC dalam usaha menentukan apakah mereka
adalah port RPC, dan bila ya, menentukan program dan nomor versinya. Karenanya
anda dapat secara efektif memperoleh info yang sama dengan rpcinfo -p bahkan bila portmapper target berada di belakang firewall (atau dilindungi oleh
TCP wrapper). Saat ini tidak dapat menggunakan umpan dalam RPC scan.decoysyang digunakan pemeriksaan
Ia secara otomatis diaktifkan sebagai bagian pemeriksaan versi
() jika anda memintanya. Oleh karena deteksi versi
menyertakannya dan jauh lebih lengkap, jarang dibutuhkan.Deteksi SOOS detectionSalah satu fitur Nmap yang paling dikenal adalah deteksi SO
dengan menggunakan fingerprint stack TCP/IP. Nmap mengirimkan serangkaian paket TCP dan
UDP ke host remote dan menguji setiap bit paket responnya.
Setelah melakukan serangkaian test seperti sampling TCP
ISN, dukungan dan urutan opsi TCP, sampling ID IP, dan
pemeriksaan ukuran jendela awal, Nmap membandingkan hasilnya ke database
nmap-os-dbnmap-os-db
yang berisi lebih dari seribu fingerprint SO yang dikenal dan
mencetak detil SO bila terjadi kesesuaian.
Setiap fingerprint menyertakan deskripsi SO tekstual dalam format bebas,
klasifikasi yang memberikan nama vendor (misalnya Sun), SO di bawahnya (misalnya Solaris),
generasi OS (misalnya 10), dan jenis device (fungsi umum, router, switch, konsol game,
dsb.).Jika Nmap tidak dapat menduga SO mesin, dan kondisinya bagus
(misalnya paling tidak ditemukan satu port terbuka dan tertutup), Nmap akan
memberikan URL yang dapat anda gunakan untuk menyerahkan fingerprint jika anda tahu
(dengan pasti) SO yang berjalan di mesin itu. Dengan melakukan hal ini anda berkontribusi
ke database sistem operasi yang dikenali Nmap dan karenanya ia akan lebih akurat.Deteksi SO mengaktifkan beberapa tes lain yang menggunakan informasi yang
dikumpulkan selama proses. Salah satunya adalah TCP Sequence Predictability Classification.
Ukuran ini menentukan seberapa sulit memalsukan koneksi TCP ke host remote. Ia bermanfaat
dalam mengeksploitasi relasi trust berbasis IP-sumber (rlogin, filter firewall, dsb) atau
untuk menyembunyikan sumber serangan. Spoofing jenis ini jarang dilakukan lagi,
namun banyak mesin masih rentan terhadapnya.
Angka kesulitan aktualnya berdasarkan pada sampling statistik dan mungkin berfluktuasi.
Umumnya lebih baik menggunakan klasifikasi bahasa Inggris seperti
worthy challenge or trivial joke. Hal ini hanya dilaporkan
dalam output normal dalam mode verbose ().
Ketika digunakan mode verbose bersama dengan , pembuatan urutan ID IP ID
juga dilaporkan. Kebanyakan mesin berada dalam kelas
incremental, yang berarti mereka menaikkan field ID
dalam header IP untuk setiap paket yang mereka kirim. Hal ini membuat mereka rentan
atas beberapa serangan spoofing dan pengumpulan informasi tingkat tinggi.uptime guess
Informasi ekstra lain yang disertakan dalam deteksi SO adalah menduga
waktu uptime target. Tekniknya menggunakan opsi timestamp TCP (RFC 1323) untuk menduga waktu terakhir mesin direboot.
Dugaan dapat tidak akurat akibat counter timestamp tidak diinisialisasi ke nol
atau counter overflow dan kembali ke awal, sehingga ia hanya dicetak dalam mode verbose.
Sebuah paper yang mendokumentasikan cara kerja, penggunaan, dan kustomisasi deteksi SO
tersedia di
.
Deteksi SO dibahas dalam .
Deteksi SO diaktifkan dan dikendalikan dengan opsi-opsi berikut:
(Aktifkan deteksi SO)
Aktifkan deteksi SO, seperti didiskusikan di atas.
Anda dapat juga menggunakan untuk mengaktifkan
deteksi SO dan hal lainnya.
(Batasi deteksi SO untuk target yang menjanjikan)
Deteksi SO jauh lebih efektif bila ditemukan paling tidak
satu port TCP terbuka dan tertutup. Set opsi ini dan Nmap
tidak akan melakukan deteksi SO terhadap host yang tidak memenuhi
kriteria ini. Hal ini dapat menghemat waktu,
terutama pada pemeriksaan atas banyak host. Ia hanya
penting ketika deteksi SO diminta dengan opsi atau .
; (Duga hasil deteksi SO)
Ketika Nmap tidak dapat mendeteksi SO secara tepat, ia
terkadang memberikan kemungkinan terdekat. Tebakan yang cocok
harus sangat dekat agar dilakukan secara baku oleh Nmap.
Semua opsi ekivalen ini membuat Nmap menduga dengan lebih agresif.
Nmap tetap akan memberitahu anda ketika kecocokan tidak sempurna dicetak
dan menampilkan tingkat kepercayaan (persentase) untuk setiap dugaan.
(Menset jumlah usaha maksimum deteksi SO atas target)
Ketika Nmap melakukan deteksi SO terhadap target dan
gagal menemukan kecocokan sempurna, ia biasanya mengulang usahanya.
Secara baku, Nmap berusaha lima kali jika kondisi memungkinkan
penyerahan fingerprint SO, dan dua kli ketika kondisi tidak begitu baik.
Menspesifikasikan nilai yang lebih rendah (seperti 1)
mempercepat Nmap, meski anda kehilangan usaha yang secara potensial dapat
mengindentifikasi SO. Anda dapat pula menset perulangan yang lebih banyak
ketika kondisi lebih baik. Hal ini jarang dilakukan, kecuali untuk menghasilkan
fingerprint yang lebih baik untuk penyerahan dan integrasi ke database SO Nmap.Nmap Scripting Engine (NSE)Nmap Scripting Engine (NSE)Nmap Scripting Engine (NSE) adalah salah satu fitur Nmap
yang paling powerful dan fleksibel. Ia memungkinkan user untuk menulis (dan membagi)
skrip sederhana (menggunakan bahasa pemrograman Lua, Lua programming language) untuk mengotomasi beragam tugas jaringan.
Skrip-skrip tersebut dieksekusi secara parale dengan kecepatan
dan efisiensi yang anda harapkan dari Nmap. User dapat mengandalkan beragam
skrip yang didistribusikan dengan Nmap, atau menulis sendiri sesuai kebutuhan.Tugas-tugas yang kami pikirkan ketika membuat sistem termasuk penemuan jaringan,
deteksi versi yang lebih canggih, deteksi kerentanan.
NSE bahkan dapat digunakan untuk eksploitasi kerentanan.
Untuk mencerminkan penggunaan yang berbeda dan untuk memudahkan pilihan skrip
yang diinginkan, setiap skrip berisi field yang mengasosiasikannya dengan satu atau lebih kategori. Kategori yang ada saat ini adalah
safe, intrusive, malware, version, discovery, vuln, auth, and default. These are all described
at .in .Nmap Scripting Engine dijelaskan lebih rinci
di in dan dikendalikan oleh opsi-opsi berikut ini:Melakukan scan skrip menggunakan sejumlah skrip baku. Ia merupakan
ekivalen . Beberapa skrip dalam
kategori ini dianggap intrusif dan tidak seharusnya dijalankan
terhadap jaringan target tanpa ijin. Menjalankan scan skrip (seperti ) menggunakan daftar kategori skrip,
skrip individual, atau direktori berisikan skrip, aih-alih menggunakan set baku.
Nmap akan mencoba dulu menginterpretasikan argumen sebagai kategori, kemudian sebagai file atau
direktori. Skrip atau direktori skrip dapat dispesifikasikan dengan path absolut atau relatif.
Path absolut digunakan seperti yang diberikan.
Path relatif akan dicari dalam tempat-tempat berikut hingga ditemukan :
file dataurutan pencarian direktoriskrip, lokasi--datadir/;
$NMAPDIR/;NMAPDIR environment variable~/.nmap/ (tidak dicari pada Windows);.nmap directoryNMAPDATADIR/ orNMAPDATADIR./. A scripts/ subdirektori juga dicari untuk setiap direktori ini.Jika diberikan sebuah direktori dan ditemukan, Nmap memuat seluruh skrip NSE
(semua nama file yang berakhiran dengan .nse) dari
direktori tersebut. Nama file tanpa ekstensi nse akan
diabaikan. Nmap tidak mencari secara rekursif ke subdirektori untuk mencari skrip.
Jika diberikan nama file individual, ekstensi file tidak perlu harus
nse.Skrip Nmap secara baku disimpan dalam subdirektori scripts
direktori data Nmap
(lihat ).(see ). Demi efisiensi,
skrip diindeks dalam database yang disimpan dalam
scripts/script.db.script.db
yang mendaftar kategori atau kategori-kategori yang dimiliki skrip.
Berikan argumen all untuk menjalankan seluruh skrip
dalam database skrip Nmap.Skrip berbahaya tidak dijalankan dalam sandbox dan karenanya dapat merusak sistem anda atau menggangu privasi anda. Jangan pernah menjalankan skrip dari pihak ketiga kecuali anda mempercayai penulisnya atau telah mengaudit skrip tersebut dengan cermat.script argumentsMembolehkan anda memberik argumen ke skrip NSE. Argument diberikan sebagai
pasangan name=value. Argumen yang diberikan
diproses dan disimpan dalam tabel Lua, yang dapat diakses oleh semua skrip.
Nama-nama dianggap sebagai string (yang harus berupa nilai alfanumerik)
dan digunakan sebagai kunci dalam
argument-table. Nilai dapat berupa string atau tabel
(dilingkupi oleh ‘{’ dan
‘}’).
Sebagai contoh, anda dapat memberikan argumen :
user=bar,pass=foo,whois={whodb=nofollow+ripe}.
Argumen string secara potensial digunakan oleh beberapa skrip; subtables normalnya
hanya digunakan oleh satu skrip. Dalam skrip yang menggunakan subtable, ia dinamakan
sesuai dengan nama skripnya (seperti
whois dalam contoh ini).
Opsi ini melakukan apa yang dilakukan oleh ,
namun satu tingkat ISO lebih tinggi. Jika diberikan opsi ini seluruh komunikasi
incoming dan outgoing yang dilakukan skrip akan dicetak. Informasi yang ditampilkan
mencakup protokol komunikasi, sumber, target dan data yang ditransmisikan.
Jika lebih dari 5% seluruh data yang ditransmisikan tidak dapat dicetak, maka
output trace dalam format hex. juga mengaktifkan tracing skrip.Opsi ini mengupdate database skrip yang ditemukan dalam
scripts/script.db yang digunakan
Nmap untuk menentukan skrip baku dan kategori yang tersedia. Opsi ini
digunakan bila anda menambah atau mengurangi skrip NSE dari direktori baku
scripts atau bila anda merubah
kategori sembarang skrip. Opsi ini biasanya digunakan sendirian: nmap --script-updatedb.Pewaktuan dan KinerjatimingperformanceSalah satu prioritas pengembangan tertinggi Nmap adalah kinerja.
Scan baku (nmap
hostname) sebuah host pada jaringan lokal saya
membutuhkan seperlima detik. Hal tersebut cukup cepat, namun
tambahkan bila anda memeriksa ratusan atau ribuan host.
Terlebih lagi, beberapa opsi scan seperti pemeriksaan UDP dan deteksi versi
dapat meningkatkan waktu pemeriksaan secara substansial. Begitu pula dengan
beberapa konfigurasi firewall, terutama pembatasan rate respon.
Meskipun Nmap menggunakan paralelisme dan algoritma canggih untuk mempercepat scan ini,
user memiliki kendali penuh atas jalannya Nmap. User ahli secara cermat memberikan perintah
Nmap yang hanya mengambil informasi yang dibutuhkan dengan batasan waktu yang sesuai.Teknik-teknik untuk memperbaiki waktu pemeriksaan mencakup menghilangkan
tes-tes yang tidak kritikal, dan mengupgrade ke versi terakhir Nmap
(perbaikan kinerja dibuat secara rutin). Optimisasi parameter pewaktuan juga
dapat memberikan perbedaan yang substansial. Opsi-opsi tersebut diberikan
di bawah ini.Beberapa opsi menerima sebuah parameter waktu. Ia
dispesifikasikan secara baku dalam milidetik, meskipun anda dapat menambahkan
‘s’, ‘m’, atau ‘h’ ke nilai untuk menspesifikasikan detik, menit, atau jam. Sehingga argumen
900000,
900s, dan 15m semuanya melakukan hal yang sama.
;
(Adjust parallel scan group sizes)
Nmap memiliki kemampuan untuk melakukan scan port atau versi ke banyak host secara paralel.
Nmap melakukan hal ini dengan membagi ruang IP target ke dalam kelompok dan kemudian memeriksa
satu kelompok pada satu waktu. Secara umum, kelompok yang lebih besar lebih efisien.
Kelemahannya adalah hasilnya tidak dapat disediakan hingga seluruh kelompok selesai.
Jadi bila Nmap dimulai dengan kelompok berukuran 50, user tidak akan menerima laporan
(kecuali update yang diberikan dalam mode verbose) hingga seluruh 50 host pertama selesai.Secara baku, Nmap menggunakan pendekatan kompromi untuk konflik in.
Ia mulai dengan ukuran kelompok paling kecil lima sehingga dapat segera diperoleh hasil
dan kemudian menaikkan ukuran kelompok hingga maksimum 1024. Angka baku tergantung
pada opsi yang diberikan. Demi alasan efisiensi,
Nmap menggunakan ukuran kelompok yang lebih besar untuk scan UDP atau sedikit-port TCP.Ketika ukuran kelompok maksimum diberikan dengan
, Nmap tidak akan melampaui ukuran tersebut.
Berikan ukuran minimum dengan dan Nmap
akan berusaha ukuran kelompok di atas angka tersebut. Nmap mungkin akan menggunakan
kelompok lebih kecil daripada yang anda spesifikasikan jika tidak terdapat cukup target
pada interface yang diberikan untuk memenuhi ukuran minimum. Kedua opsi dapat digunakan
untuk menset ukuran kelompok dalam rentang tertentu, namun hal ini jarang diperlukan.Opsi-opsi ini tidak memiliki efek ketika melalukan fase penemuan host dalam sebuah
pemeriksaan. Ini mencakup scan ping biasa ().
Penemuan host selalu bekerja dalam kelompok host besar untuk meningkatkan kecepatan
dan akurasi.Penggunaan utama opsi ini adalah untuk menspesifikasikan ukuran kelompok minimum yang besar
sehingga scan penuh dapat dilakukan lebih cepat. Pilihan umum adalah 256
untuk memeriksa jaringan dalam Kelas C. Untuk scan dengan banyak port,
melampaui angka tersebut tidak berarti banyak. Untuk scan terhadap beberapa port saja,
ukuran kelompok host 2048 atau lebih mungkin bermanfaat.
;
(Adjust probe parallelization)
Opsi-opsi ini mengendalikan jumlah total probe yang dapat dilakukan
untuk sekelompok host. Mereka digunakan untuk pemeriksaan port dan penemuan
host. Secara baku, Nmap menghitung nilai paralel yang ideal berdasarkan
kinerja jaringan. Jika paket di-drop, Nmap mengurangi dan membolehkan
lebih sedikit probe yang tersisa. Angka probe ideal akan meningkat seiring
dengan membaiknya jaringan. Opsi ini menempatkan batas minimum atau maksimum
pada variabel tersebut. Secara baku, nilai idealnya dapat menurun ke angka satu
bila jaringan ternyata tidak handal dan meningkat ke beberapa ratus dalam kondisi sempurna.Penggunaan paling umum adalah menset
ke angka lebih tinggi daripada satu untuk
mempercepat scan host atau jaringan yang lambat. Ini adalah opsi berisiko
untuk dimainkan, karena bila mensetnya terlalu tinggi akan mempengaruhi akurasi.
Dengan menset opsi ini juga akan mengurangi kemampuan Nmap untuk mengendalikan
paralelisme secara dinamis berdasarkan kondisi jaringan. Nilai sepuluh
adalah cukup, meskipun saya hanya menyesuaikan nilai ini sebagai usaha terakhir.Opsi seringkali diset ke satu
untuk mencegah Nmap mengirimkan lebih dari satu probe di satu waktu ke host.
Opsi ini dapat bermanfaat saat berkombinasi dengan
(akan didiskusikan kemudian), meskipun yang terakhir biasanya dapat digunakan sendiri.
,
,
(Adjust probe timeouts)
Nmap memelihara sebuah nilai timeout untuk menentukan berapa lama ia harus menunggu
atas respon probe sebelum ia menyerah atau mentransmisi ulang probe. Nilai ini
dihitung berdasarkan waktu respon probe sebelumnya.
Rumus tepatnya terdapat dalam .
Jika latensi jaringan menunjukkan signifikan dan bervariasi, nilai timeout ini
dapat meningkat ke beberapa detik. Ia juga dimulai dari nilai konservatif (tinggi)
dan tetap untuk sementara waktu ketika Nmap memeriksa host yang tidak responsif.
Menspesifikasikan nilai dan
lebih kecil daripada nilai baku dapat
mempercepat waktu pemeriksaan secara signifikan. Hal ini terutama benar untuk scan
tanpa ping (), dan terhadap jaringan yang disaring secara ketat.
Meskipun jangan terlalu agresif. Pemeriksaan dapat lebih lama jika anda
menspesifikasikan nilai rendah sehingga banyak probe timeout dan dilakukan
transmisi ulang ketika respons sedang dalam transit.Bila seluruh host berada pada jaringan lokal, 100 milidetik adalah nilai
agresif yang wajar. Jika melibatkan routing,
ping host pada jaringan terlebih dulu dengan utilitas ping ICMP, atau dengan
pembuat paket kustom seperti
hping2hping2
yang lebih mungkin melewati firewall. Lihat maximum round trip
time out dari sepuluh paket atau lebih. Anda mungkin ingin menggandakannya untuk
dan mengalikan tiga atau empat untuk
. Umumnya saya tidak menset nilai maksimum
RTT di bawah 100 ms, berapapun waktu ping. Ataupun melebihi 1000 ms. merupakan opsi yang jarang digunakan yang
berguna ketika jaringan tidak handal, yang bahkan nilai baku Nmap terlalu agresif.
Karena Nmap hanya mengurangi timeout ke minimum ketika jaringan tampaknya handal,
kebutuhan ini tidak umum dan seharusnya dilaporkan sebagai bug ke
nmap-dev mailing list.nmap-dev mailing list
(Specify the
maximum number of port scan probe retransmissions)
Ketika Nmap tidak menerima respon atas probe scan port, hal ini dapat berarti
bahwa port disaring. Atau mungkin probe atau respon hilang dalam jaringan.
Mungkin juga host target melakukan pembatasan sehingga memblokir respon sementara.
Sehingga Nmap mencoba kembali mentransmisi probe awal. Jika Nmap mendeteksi kehandalan
jaringan yang buruk, ia akan mencoba beberapa kali sebelum menyerah.
Meskipun hal ini bermanfaat untuk akurasi, namun akan memperpanjang waktu pemeriksaan.
Ketika kinerja lebih diutamakan, pemeriksaan dapat dipercepat dengan membatasi jumlah
transmisi ulang yang dibolehkan. Anda bahkan dapat menspesifikasikan
untuk mencegah terjadinya transmisi ulang,
meskipun hanya direkomendasikan bagi situasi seperti survei informal ketika terjadi port dan host
yang tidak didata tidak menjadi masalah.
Bakunya (dengan template tanpa ) adalah membolehkan
sepuluh transmisi ulang. Jika jaringan tampak handal dan host target tidak membatasi,
Nmap biasanya melakukan hanya satu transmisi ulang. Sehingga kebanyakan pemeriksaan
target tidak terpengaruh dengan mengurangi nilai
ke nilai yang rendah seperti tiga. Nilai tersebut
dapat secara substansial mempercepat pemeriksaan host-host lambat (rate limited).
Anda biasanya kehilangan beberapa informasi ketika Nmap menyerah dengan mudah,
meskipun hal tersebut lebih disukai daripada membiarkan
berakhir dan kehilangan seluruh informasi mengenai target.
(Give
up on slow target hosts)
Beberapa host membutuhkan banyak waktu untuk diperiksa.
Hal ini mungkin disebabkan hardware atau software yang tidak berkinerja baik atau tidak handal,
adanya pembatasan paket, atau firewall yang terlalu ketat. Beberapa persen host paling lambat
yang diperiksa dapat menghabiskan sebagian besar waktu pemeriksaan. Terkadang adalah hal baik
mengurangi kerugian dan melewati host-host tersebut.
Berikan
dengan waktu maksimum anda ingin menunggu.
Sebagai contoh, berikan
30m untuk memastikan bahwa Nmap tidak menghabiskan
lebih dari setengah jam pada satu host. Perhatikan bahwa Nmap mungkin memeriksa host lain
pada waktu yang sama dalam waktu tersebut, sehingga itu bukan kerugian lengkap. Host yang
timeout akan dilewati. Tidak ada hasil tabel port, deteksi SO, atau deteksi versi akan dicetak
untuk host tersebut.
;
(Adjust delay between probes)
Opsi ini menyebabkan Nmap menunggu selama waktu yang diberikan
antara setiap probe yang dikirimkan ke host yang diberikan. Hal ini terutama
bermanfaat dalam hal pembatasan.rate limiting Mesin-mesin Solaris
(di antara yang lainnya) akan menanggapi paket probe scan UDP dengan hanya
satu pesan ICMP per detik. Bila dikirimkan oleh Nmap lebih dari itu akan percuma.
Nilai
1s akan membuat Nmap tetap pada rate lambat tersebut.
Nmap berusaha untuk mendeteksi pembatasan rate dan menyesuaikan delay scan,
namun tidaklah rugi untuk menspesifikasikannya secara eksplisit bila anda telah tahu
rate terbaik.Ketika Nmap menyesuaikan delay scan lebih tinggi untuk menanggapi pembatasn rate,
scan akan melambat secara dramatis. Opsi
menspesifikasikan delay terbesar
yang dibolehkan Nmap. Nilai rendah
akan mempercepat Nmap, namun berisiko. Dengan menset nilai ini terlalu rendah dapat
menyebabkan transmisi ulang paket yang tidak perlu dan mungkin port-port luput ketika
target mengimplementasikan pembatasan rate ketat.Penggunaan lain adalah untuk menghindari
sistem deteksi dan pencegahan intrusi (IDS/IPS) yang berbasis pembatasan
intrusion detection
systemsevadingTeknik ini
digunakan dalam
untuk mengatasi pendeteksi scan port baku dalam Snort IDS. Kebanyakan sistem
deteksi intrusi lain dapat diatasi dengan cara yang sama.
;
(Directly control the scanning rate)
Pewaktuan dinamis Nmap melakukan pekerjaan yang baik dalam menemukan
kecepatan yagn tepat untuk melakukan pemeriksaan. Namun terkadang, anda
mungkin mengetahui rate pemeriksaan jaringan yang tepat, atau anda harus
memastikan bahwa pemeriksaan akan selesai pada waktu tertentu. Atau mungkin anda harus
menjaga Nmap dari melakukan pemeriksaan terlalu cepat. Opsi dan
dirancang untuk situasi ini.Ketika opsi
diberikan Nmap akan melakukan yang terbaik untuk
mengirim paket secepat atau lebih cepat daripada rate yang diberikan. Argumen
merupakan angka real positif mewakili rate paket per detik.
Sebagai contoh, dengan menspesifikasikan berarti bahwa
Nmap akan berusaha menjaga rate pengiriman pada atau di atas 300 paket per detik.
Penspesifikasian rate minimum tidak mencegah Nmap mengirimkan lebih cepat
bila kondisi memungkinkan.Demikian pula, membatasi rate pengiriman ke
nilai maksimum yang diberikan. Gunakan , misalnya, untuk
membatasi pengiriman 100 paket per detik pada jaringan yang cepat. Gunakan
untuk scan lambat satu paket setiap sepuluh detik.
Gunakan dan bersama
untuk menjaga rate pada rentang tertentu.Kedua opsi ini bersifat global, mempengaruhi seluruh pemeriksaan, bukan
host individual. Mereka hanya mempengaruhi scan port dan pencarian host
Fitur lain seperti deteksi SO mengimplementasikan pewaktuan mereka sendiri.Terdapat dua kondisi ketika rate pemeriksaan aktual kurang dari nilai
minimum yang diminta. Pertama adalah bila nilai minimum lebih cepat daripada
rate tercepat pengiriman Nmap, yang tergantung pada hardware.
Dalam kasus ini Nmap akan mengirim paket secepat mungkin, namun waspadai
bahwa rate tinggi tersebut kemungkinan akan menyebabkan kehilangan akurasi.
Kasus kedua adalah ketika Nmap tidak memiliki sesuatu untuk dikirim, sebagai contoh
di akhir pemeriksaan ketika probe terakhir telah dikirim dan Nmap menunggu
mereka time out atau mendapat respon. Adalah normal melihat rate pemeriksaan
menurun pada akhir pemeriksaan atau di antara kelompok host. Rate pengiriman mungkin
melebihi nilai maksimum untuk sementara waktu untuk mengimbangi delay yang tak terduga,
namun secara rata-rata rate akan tetap pada atau di bawah nilai maksimum.Menspesifikasikan nilai rate minimum harus dilakukan dengan hati-hati. Pemeriksaan
yang lebih cepat daripada yang dapat didukung oleh jaringan akan menyebabkan hilangnya akurasi.
Dalam beberapa kasus, dengan menggunakan rate yang lebih cepat dapat membuat pemeriksaan menjadi
lebih lama daripada bila menggunakan rate yang lebih lambat. Hal ini
karena algoritma
adaptive
retransmissionadaptive retransmissionretransmissionretransmissionadaptive retransmission
Nmap akan mendeteksi kepadatan jaringan yang disebabkan oleh rate pemeriksaan yang berlebihan
dan meningkatkan angka transmisi ulang untuk memperbaiki akurasi.
Jadi meskipun paket dikirim pada rate yang lebih tinggi, namun secara keseluruhan lebih banyak
paket yang dikirimkan. Batasi angka transmisi ulang dengan opsi
jika anda ingin menset batas atas waktu scan total.Banyak host telah lama menggunakan pembatasan rate
rate limiting
untuk mengurangi jumlah pesan kesalahan ICMP
(seperti kesalahan port-unreachable) yang mereka kirim.
Saat ini beberapa sistem menggunakan pembatasan limit ke paket RST (reset)
yang mereka hasilkan. Hal ini akan memperlambat Nmap secara dramatis karena
ia akan menyesuaikan pewaktuannya untuk mencerminkan batas rate tersebut. Anda dapat
memberitahu Nmap untuk mengabaikan limit rate tersebut (untuk scan port seperti SYN scan yang
tidak memperlakukan port non-responsiv sebagai
open) dengan menspesifikasikan
.Dengan menggunakan opsi ini akan mengurangi akurasi, karena beberapa port akan tampak
non-responsiv karena Nmap tidak menunggu cukup lama untuk respon RST yang rate-limited.
Dengan SYN scan, hasil non-respon dalam port akan ditandai dengan status
filtered alih-alih closed
ketika menerima paket RST. Tambahan ini berguna ketika anda hanya perlu
port terbuka, dan beda antara port
closed dan filtered
tidak cukup berharga.
(Set a timing template)
timing templatesparanoid, sneaky, polite, normal, aggressive, and insaneparanoid timing templatesneaky timing templatepolite timing templatenormal timing templateaggressive timing templateinsane timing templateMeski kendali waktu fine-grained yang didiskusikan dalam bagian sebelumnya
adalah powerful dan efektif, beberapa orang menganggapnya membingungkan.
Terlebih lagi, memilih nilai yang tepat terkadang membutuhkan waktu lebih lama
daripada pemeriksaan yang ingin dioptimisasi. Sehingga Nmap menawarkan pendekatan
yang lebih mudah, dengan enam template waktu. Anda dapat menspesifikasikannya dengan
opsi dan angkanya (0–5) atau namanya.
Nama templatenya adalah
(),
(),
(),
(),
(),
dan ().
Dua yang pertama adalah untuk menghindari IDS.
Mode Polite memperlambat scan untuk menggunakan lebih sedikit bandwidth
dan sumber daya mesin target. Mode Normal adalah bakunya sehingga
tidak melakukan apapun. Mode Aggressive mempercepat scan
dengan membuat asumsi bahwa anda berada pada jaringan yang cepat dan handal.
Akhirnya, mode insane
insane (template waktu )
mengasumsikan bahwa anda berada pada jaringan yang sangat cepat atau rela mengorbankan
akurasi demi kecepatan.Kesemua template ini memungkinkan user menspesifikasikan seberapa mereka
ingin agresif, dan membiarkan Nmap memilih nilai pewaktuan yang tepat. Template
juga membuat beberapa penyesuaian kecepatan minor yang tidak dimiliki oleh kendali
fine-grained saat ini. Sebagai contoh,
aggressive (template pewaktuan )
melarang delay scan dinamis melebihi 10 ms untuk port TCP dan membatasi
nilai tersebut di 5 ms.
Template dapat digunakan dalam kombinasi dengan kendali fine-grained,
dan kendali fine-grained yang anda berikan akan mengambil alih
template pewaktuan baku untuk parameter tersebut. Saya merekomendasikan
penggunaan ketika memeriksa jaringan modern dan handal.
Pertahankan opsi tersebut bahkan ketika anda menambah kendali
fine-grained sehingga anda memperoleh manfaat dari optimisasi minor yang diberikan.Bila anda berada pada koneksi broadband atau ethernet yang memadai, saya akan
merekomendasikan untuk selalu menggunakan . Beberapa orang mencintai
meskipun itu terlalu agresif untuk selera saya. Orang terkadang
memberikan karena mereka pikir ia lebih tidak mungkin akan menyebabkan
host crash atau karena mereka mengganggap dirinya secara umum sopan.
Mereka terkadang tidak menyadari betapa lambatnya polite () timing template.
Scan mereka akan membutuhkan waktu sepuluh kali lebih lama daripada scan baku.
Mesin crash dan masalah bandwidth adalah jarang dengan opsi pewaktuan baku
() sehingga normalnya saya merekomendasikan untuk
pemeriksa yang berhati-hati. Menghilangkan deteksi versi lebih efektif
daripada bermain dengan nilai pewaktuan dalam mengurangi masalah ini.Meski
paranoid () timing template
dan sneaky () timing template
mungkin berguna untuk menghindari alert IDS, mereka akan membutuhkan waktu yang sangat lama
untuk memeriksa ribuan mesin atau port. Untuk scan yang demikian lama,
anda mungkin lebih menyukai menset nilai pewaktuan secara tepat anda butuhkan alih-alih
bergantung pada nilai template and .Efek utama adalah serialisasi scan sehingga
hanya satu port yang diperiksa pada satu waktu, dan menunggu lima menit
antara pengiriman setiap probe. dan
adalah serupa namun mereka hanya menunggu 15 detik dan 0.4
detik, antar probe. merupakan perilaku baku Nmap, yang mencakup
paralelisasi.normal () timing template
ekivalen dengan dan menset delay scan TCP maksimum ke
10 milidetik.
ekivalen dengan
dan juga
menset delay scan TCP maksimum ke 5 md.Firewall/IDS Evasion and Spoofingfirewallsbypassingintrusion detection systemsevadingBanyak pionir Internet mempunyai visi jaringan terbuka global dengan
ruang alamat IP universal yang memungkinkan koneksi virtual antara dua node.
Hal ini membuat host bertindak sebagai peer sebenarnya, menyajikan dan
mengambil informasi satu sama lain. Orang dapat mengakses sistem di
rumah mereka dari tempat kerja, merubah seting kendali iklim atau
membuka pintu bagi tamu yang datang awal. Visi konektivitas universal ini
telah dibatasi dengan kekurangan ruang alamat dan masalah keamanan.
Di awal tahun 1990-an, organisasi mulai menggunakan firewall dengan tujuan
mengurangi konektivitas. Jaringan besar dibatasi dari Internet oleh proxy aplikasi,
network address translation, dan filter paket. Aliran informasi yang tidak terbatas
berubah menjadi regulasi ketat atas kanal komunikasi dan isi yang melaluinya.Penghalang jaringan seperti firewall dapat membuat pemetaan jaringan
sukar. Ia tidak akan menjadi lebih mudah, karena mengurangi reconnaissance umum
adalah tujuan utama implementasi device tersebut. Namun demikian, Nmap menawarkan
banyak fitur untuk membantu memahami jaringan yang kompleks ini, dan untuk memverifikasi
bahwa filter bekerja sebagaimana yang diharapkan.
Ia bahkan mendukung mekanisme untuk melewati pertahanan yang diimplementasikan dengan buruk.
Salah satu metode terbaik untuk memahami postur keamanan jaringan anda adalah dengan
berusaha mengalahkannya. Tempatkan diri anda dalam pola pikir penyerang, dan gunakan
teknik-teknik dari bagian ini terhadap jaringan anda. Lakukan scan FTP bounce, scan idle,
serangan fragmentasi, atau berusaha melakukan tunnel melalui salah satu proxy anda.Selain membatasi aktivitas jaringan, perusahaan semakin meningkatkan
pemantauan lalu lintas dengan intrusion detection systems (IDS).
Seluruh IDS utama menyertakan aturan yang dirancang untuk mendeteksi scan Nmap
karena scan terkadang merupakan awal serangan. Banyak dari produk-produk ini
yang sekarang berubah menjadi intrusion
prevention systems
(IPS)intrusion prevention systemsintrusion detection systems
yang secara aktif memblokir lalu lintas yang dianggap berbahaya.
Sayangnya bagi administrator jaringan dan vendor IDS, mendeteksi tujuan jahat
dengan menganalisis data paket merupakan masalah yang berat. Penyerang dengan kesabaran,
keahlian, dan bantuan opsi-opsi Nmap tertentu biasanya dapat melewati IDS tanpa terdeteksi.
Selain itu, administrator harus berurusan dengan hasil false positive dalam jumlah besar
sehingga aktivitas yang tidak berbahaya salah didiagnosa dan di-alert atau diblokir.Terkadang orang menyarankan bahwa Nmap tidak seharusnya menawarkan fitur-fitur
untuk melewati aturan firewall atau menyelinap dari IDS. Mereka berargumen bahwa
fitur-fitur ini akan disalahgunakan oleh penyerang alih-alih digunakan oleh administrator
untuk memperbaiki keamanan. Permasalahan dengan logika ini adalah metode-metode tersebut
tetap akan digunakan oleh penyerang, yang akan mencari tool lain atau menambahkan
fungsionalitas tersebut ke dalam Nmap. Sedangkan, administrator akan merasa lebih sulit
melakukan pekerjaan mereka. Menggunakan server FTP yang telah dipatch dan modern adalah
pertahanan yang jauh lebih baik daripada mencegah penyebaran tool implementasi serangan
FTP bounce.
Tidak ada peluru ajaib (atau opsi Nmap) untuk mendeteksi dan
menghindari firewall dan sistem IDS. Ia membutuhkan kemampuan dan pengalaman.
Tutorial adalah di luar cakupan panduan referensi ini, yang hanya mendaftarkan
opsi-opsi yang relevan dan menjelaskan apa yang mereka lakukan.
(fragment packets);
(using the specified MTU)
Opsi menyebabkan scan yang diminta (termasuk
ping scan) untuk menggunakan paket IP terfragmentasi kecil. Idenya adalah
membagi header TCP ke beberapa paket untuk membuat filter paket, IDS, dan
gangguan lain kesulitan mendeteksi apa yang sedang anda lakukan. Hati-hatilah
dengan ini! Beberapa program memiliki kesulitan menangani paket-paket kecil ini.
Sniffer old-school bernama Sniffit akan menjadi segmentation faulted segera setelah
menerima fragmen pertama. Spesifikasikan opsi ini sekali, dan Nmap
membagi paket ke dalam delapan byte atau kurang setelah header IP.
Sehingga paket header TCP 20-byte akan dibagi ke dalam tiga paket.
Dua paket dengan delapan byte header TCP, dan satu paket dengan empat byte akhir.
Tentu saja setiap fragmen juga memiliki header IP. Spesifikasikan
lagi untuk menggunakan fragmen 16 byte (mengurangi
jumlah fragmen).giving twice
Atau anda dapat menspesifikasikan ukuran offset anda sendiri dengan opsi
. Jangan berikan opsi
bila anda menggunakan . Offset harus
merupakan kelipatan delapan. Meskipun paket fragmented tidak akan melewati
filter paket dan firewall yang membuat antrian seluruh fragment IP,
seperti opsi CONFIG_IP_ALWAYS_DEFRAG dalam kernel Linux,
beberapa jaringan tidak dapat mengatasi kerugian kinerja yang disebabkannya dan
membiarkan opsi tersebut tidak aktif. Yang lain tidak dapat mengaktifkannya
karena fragmen dapat mengambil rute yang berbeda ke jaringan mereka.
Beberapa sistem sumber mendeframentasi paket outgoing dalam kernel. Linux
dengan modul pelacakan koneksi iptable
iptables
adalah salah satu contohnya. Lakukan scan ketika sniffer seperti
WiresharkWireshark
berjalan untuk memastikan bahwa paket yang dikirim terfragmentasi. Jika OS
host anda menyebabkan masalah, cobalah opsi
untuk melewati lapisan IP dan mengirim frame ethernet raw.Fragmentasi hanya didukung oleh fitur paket raw Nmap,
yang mencakup scan port TCP dan UDP (kecuali scan connect dan FTP
bounce scan) dan deteksi SO. Fitur seperti deteksi versi dan
Nmap Scripting Engine umumnya tidak mendukung fragmentasi karena mereka
tergantung pada stack TCP host anda untuk berkomunikasi dengan layanan target.
(Cloak a scan with decoys)
decoysMenyebabkan dilakukannya decoy scan, yang membuat
host remote menganggap bahwa host-host yang anda berikan sebagai
umpan (decoy) juga melakukan pemeriksaan jaringan target. Karenanya IDS mereka
mungkin melaporkan scan port sebanyak 5–10 dari alamat IP yang unik, tetapi
mereka tidak akan tahu IP mana yang memeriksa mereka dan mana yang umpan.
Meski hal ini dapat dikalahkan dengan router path tracing, response-dropping,
dan mekanisme aktif lainnya, namun ia umumnya merupakan teknik efektif untuk
menyembunyikan alamat IP anda.Pisahkan setiap host umpan dengan koma, dan anda dapat
secara opsional menggunakan
MEME (decoy address)
sebagai salah satu umpan untuk mewakili posisi alamat IP real anda.
Jika anda menempatkan
ME pada posisi keenam atau lebih, beberapa
detektor scan port umum (seperti
Solar Designer'sSolar Designer
Scanlogd yang bagus)Scanlogd
tidak akan menampilkan alamat IP anda sama sekali.
Jika anda tidak menggunakan ME, Nmap akan
menempatkan anda pada posisi acak. Anda dapat juga menggunakan
RNDRND (decoy address)
untuk menghasilkan alamat IP acak dan non-reserved, atau
RND:number untuk
menghasilkan alamat numberPerhatikan bahwa host
yang anda gunakan sebagai umpan harus hidup atau anda akan secara tidak sengaja
mebanjiri target anda dengan SYN. Juga mudah menentukan host mana yang memeriksa
jika hanya satu host saja yang hidup pada jaringan. Anda mungkin ingin
menggunakan alamat IP alih-alih nama (sehingga jaringan umpan tidak melihat
anda dalam log DNS mereka).Umpan digunakan dalam scan ping awal (menggunakan
ICMP, SYN, ACK, atau apapun) dan selama fase pemeriksaan port.
Umpan juga digunakan selama deteksi SO ().
Umpan tidak bekerja dengan deteksi versi atau scan connect TCP.
Ketika berlaku scan delay, delay ditegakkan antara setiap batch
probe palsu, tidak antara setiap probe invididual. Karena umpan
dikirim sebagai satu batch keseluruhan, mereka mungkin melanggar
batasan kendali kongesti secara sementara.Penting diperhatikan bahwa penggunaan terlalu banyak umpan
mungkin memperlambat scan anda dan secara potensial membuatnya
kurang akurat. Dan juga, beberapa ISP akan menyaring paket-paket palsu
anda, namun banyak juga yang tidak membatasi paket IP palsu.
(Spoof source address)
spoofing source addressDalam beberapa keadaan, Nmap mungkin tidak dapat menentukan
alamat sumber anda (Nmap akan memberitahu anda hal ini).
Dalam situasi ini, gunakan dengan alamat IP
interface yang ingin anda gunakan untuk mengirim paket.Kemungkinan lain penggunaan flag ini adalah untuk memalsukan scan
untuk membuat target berpikir bahwa orang lain
sedang memeriksa mereka. Bayangkan sebuah perusahaan sedang diperiksa
portnya secara berulang-ulang oleh pesaing! Opsi
dan umumnya dibutuhkan
untuk penggunaan seperti ini. Perhatikan bahwa anda biasanya
tidak menerima paket reply (mereka akan ditujukan ke alamat IP
yang anda palsukan), sehingga Nmap tidak akan menghasilkan laporan
yang berguna.
(Use specified interface)
interfaceMemberitahu Nmap interface untuk mengirim dan menerima paket.
Nmap seharusnya dapat mendeteksinya secara otomatis, namun ia akan
memberitahu anda bila ia tidak dapat melakukannya.
(Spoof source port number)
source port numberSalah satu kesalahan konfigurasi umum yang mengagetkan adalah mempercayai
lalu lintas hanya berdasarkan nomor port sumber. Adalah mudah memahami bagaimana
hal ini terjadi. Administrator akan mensetup firewall baru, hanya untuk dibanjiri
dengan keluhan user yang aplikasinya berhenti bekerja. Secara khusus, DNS mungkin
tidak berfungsi karena reply UDP DNS dari server eksternal tidak dapat lagi memasuki
jaringan. FTP adalah contoh umum lainnya. Dalam transfer FTP aktif, server remote
berusaha membuka koneksi ke klien untuk mengirim file yang diminta.Terdapat solusi aman untuk masalah ini, seringkali berupa proxy
level-aplikasi atau modul firewall protocol-parsing. Sayangnya terdapat
pula solusi yang lebih mudah dan tidak aman. Dengan memperhatikan bahwa
balasan DNS datang dari port 53 dan active FTP dari port 20, banyak aadministrator
terjebak dengan membolehkan lalu lintas incoming dari port-port ini.
Mereka terkadang berasumsi bahwa tidak ada penyerang akan memperhatikan dan
memanfaatkan lubang firewall ini. Dalam kasus lain, administrator menganggap ini
sebagai solusi sementara hingga mereka dapat mengimplementasikan solusi yang lebih aman.
Lalu mereka lupa melakukan upgrade keamanan.
Administrator jaringan yang terlalu banyak kerja bukan satu-satunya yang
jatuh dalam jebakan ini. Sejumlah produk dikirim dengan rule tidak aman ini.
Bahkan Microsoft telah bersalah. Filter IPsec yang disertakan dengan
Windows 2000 dan Windows XP berisikan sebuah rule implisit yang membolehkan
semua lalu lintas TCP atau UDP dari port 88 (Kerberos). Dalam kasus terkenal lain,
firewall personal Zone Alarm hingga versi 2.1.25
membolehkan sembarang paket UDP incoming dengan port sumber 53 (DNS) atau 67
(DHCP).Nmap menawarkan opsi dan
(mereka ekivalen) untuk mengeksploitasi
kelemahan ini. Cukup berikan nomor port dan Nmap akan mengirim paket
dari port itu bila memungkinkan. Nmap harus menggunakan nomor port yang berbeda
bagi beberapa tes deteksi SO tertentu agar bekerja dengan benar, dan request DNS
mengabaikan flag karena Nmap mengandalkan pada librari sistem
untuk menangani hal ini. Kebanyakan scan TCP, termasuk SYN scan,
mendukung opsi secara penuh, demikian pula scan UDP.
(Append random
data to sent packets)
Normalnya Nmap mengirim paket minimalis yang hanya berisi header.
Sehingga paket TCP umumnya berukuran 40 byte dan request ICMP echo cuma 28.
Opsi ini memberitahu Nmap untuk menambahkan random byte sejumlah tertentu
untuk kebanyakan paket yang dikirimnya.
Paket deteksi SO () tidak terpengaruh
no effect in OS detection
karena akurasinya membutuhkan konsistensi probe, namun kebanyakan paket ping
dan portscan mendukung opsi ini. Ia sedikit memperlambat, namun dapat membuat
scan tidak terlalu mencurigakan.
(Send packets with specified ip options)
IP optionsProtokol IP
menawarkan beberapa opsi yang dapat ditempatkan pada header paket.
Tidak seperti opsi TCP yang umum, opsi IP jarang ditemukan karena masalah
kepraktisan dan keamanan. Nyatanya, banyak router Internet memblokir opsi yang
paling berbahaya seperti source routing. Namun opsi dapat tetap berguna
dalam beberapa kasus untuk menentukan dan memanipulasi rute jaringan ke
mesin target. Sebagai contoh, anda mungkin dapat menggunakan opsi record
route untuk menentukan path ke target bahkan ketika pendekatan tradisional
bergaya traceroute gagal. Atau bila paket anda di-drop oleh firewall tertentu,
anda mungkin dapat menspesifikasikan rute yang berbeda dengan opsi source
routing yang ketat atau longgar.Cara paling powerful untuk menspesifikasikan opsi IP adalah cukup dengan
memberikan nilainya sebagai argumen ke
. Dahului setiap angka hex dengan
\x lalu dua digit. Anda dapat mengulang
karakter tertentu dengan menambahkan tanda bintang dan diikuti jumlah
perulangan yang anda inginkan. Sebagai contoh,
\x01\x07\x04\x00*36\x01 adalah sebuah string hex
berisi 36 NUL byte.Nmap juga menawarkan mekanisme shortcut untuk menspesifikasikan opsi.
Cukup berikan huruf R,
T, atau U untuk meminta
record-route,record route IP option
record-timestamp,record timestamp IP option
atau keduanya,
Source routingsource routing
ketat atau longgar dapat dispesifikasikan dengan tanda
L atau S diikuti oleh
spasi dan kemudian daftar alamat IP yang dipisah-spasi.Jika anda ingin melihat opsi dalam paket yang dikirim dan diterima,
berikan . Informasi dan contoh lebih lanjut
tentang penggunaan opsi IP dengan Nmap, dapat dilihat di
.
(Set IP time-to-live field)
time to live (TTL)Set field time-to-live IPv4 dalam paket yang dikirim ke nilai
yang diberikan.
(Randomize target host order)
randomization of hostsBeritahu Nmap untuk mengacak setiap kelompok hingga 16384 host
sebelum memeriksa merekaa. Hal ini dapat membuat scan kurang mencurigakan
bagi berbagai sistem monitoring jaringan, terutama bila anda menggabungkannya
dengan opsi pewaktuan yang lambat. Jika anda ingin mengacak dalam ukuran yang
lebih besar, naikkan nilai
PING_GROUP_SZPING_GROUP_SZ
dalam nmap.hnmap.h
dan kompilasi ulang.
Solusi alternatif adalah menghasilkan daftar IP target dengan
list scan (), acaklah dengan skrip Perl,
lalu berikan seluruh daftar ke Nmap dengan
.randomizing hosts with
(Spoof MAC address)
spoofing MAC addressMeminta Nmap untuk menggunakan alamat MAC
MAC address
yang diberikan untuk seluruh frame ethernet raw yang dikirimkan. Opsi ini mengimplikasikan
implied by
untuk memastikan bahwa Nmap benar-benar mengirim paket level-ethernet.
MAC yang diberikan dapat dalam beragam format. Jika berupa angka 0, Nmap memilih alamat MAC yang acak untuk sesi itu.
Jika string yang diberikan adalah angka genap digit hex (setiap digit berpasangan
dipisahkan oleh tanda titik dua), Nmap akan menggunakannya sebagai MAC.
Jika diberikan kurang dari 12 digit hex, Nmap mengisi sisa 6 byte-nya dengan nilai acak.
Jika argumen bukanlah nol atau string hex, Nmap mencari melalui file
nmap-mac-prefixes untuk menemukan nama vendor
berisikan string yang diberikan (tidak case sensitive). Jika ditemukan kecocokan,
Nmap menggunakan OUI (three-byte prefix)organizationally unique identifier (OUI)nmap-mac-prefixes vendor
dan mengisi tiga byte sisanya secara random.
Contoh argumen yang valid adalah Apple, 0,
01:02:03:04:05:06, deadbeefcafe, 0020F2, dan Cisco. Opsi ini hanya mempengaruhi scan paket raw seperti SYN scan atau deteksi SO, dan tidak berlaku pada fitur berorientasi-koneksi seperti deteksi versi atau Nmap Scripting Engine.
(Send packets with bogus TCP/UDP checksums)
TCP checksumchecksumsMeminta Nmap untuk menggunakan checksum TCP atau UDP tidak valid untuk
paket yang dikirimkan ke host target. Karena secara virtual seluruh
stack IP host akan secara tepat men-drop paket ini, sembarang respon yang diterima
adalah kemungkinan berasal dari firewall atau IDS yang tidak peduli untuk memverifikasi
checksum. Detil lebih lanjut mengenai teknik ini, dapat dilihat pada Outputoutput formatsManfaat tool keamanan ditentukan oleh output yang dihasilkannya.
Algoritma dan tes yang kompleks tidaklah berguna bila mereka
tidak dipresentasikan dalam cara yang terorganisir dan lengkap.
Dengan beragamnya cara penggunaan Nmap oleh orang dan software lainnya,
tidak ada format yang dapat memuaskan semuanya. Sehingga Nmap memberikan
beberapa format, termasuk mode interaktif agar manusia dapat membaca secara langsung
dan XML untuk memudahkan parsing oleh software.Selain memberikan beragam format output, Nmap juga menyediakan
opsi untuk mengendalikan verbositas output dan pesan debug.
Tipe output dapat dikirim ke output standar atau ke file.
File output dapat pula digunakan untuk meresume scan.Nmap menyediakan output dalam lima format berbeda.
Bakunya disebut
interactive output,interactive output
dan dikirimkan ke output standar
(stdout).standard output
Terdapat juga
normal output,normal output
yang serupa dengan interaktif kecuali ia memberikan lebih sedikit informasi
runtime dan peringatan karena ia diharap akan dianalisis
setelah scan setelah alih-alih secara interaktif.XML outputXML output
adalah salah stau tipe output paling penting, karena ia dapat dikonversi
ke HTML, dapat secara mudah diparse oleh program seperti Nmap graphical
user interfaces, atau diimpor ke database.Dua output terakhir adalah
grepable outputgrepable output sederhana
yang menyertakan informasi host target pada satu baris tunggal, dan
sCRiPt KiDDi3 0utPUtscR1pT kIddI3 output
bagi user yang mengganggap dirinya sebagai
|<-r4d.Meskipun output interaktif merupakan bakunya dan tidak memiliki
opsi command-line, opsi keempat format lainnya menggunakan sintaks yang sama.
Mereka mengambil satu argumen, nama file tempat menampung hasil.
User dapat menspesifikasikan banyak format, namun setiap format hanya boleh
dispesifikasikan satu kali. Sebagai contoh, anda mungkin ingin menyimpan
output normal untuk review anda dan output XML untuk analisis programatik.
Anda dapat melakukan hal ini dengan opsi
. Walau bab ini
menggunakan nama sederhana seperti myscan.xml untuk singkatnya,
disarankan untuk menggunakan nama yang lebih deskriptif. Nama yang dipilih
merupakan masalah preferensi personal, meski saya menggunakan nama panjang yang
menyertakan tanggal scan dan kata yang menjelaskan scan, ditempatkan dalam sebuah
direktori dengan nama perusahaan yang saya periksa.Meski opsi-opsi ini menyimpan hasil ke file, Nmap tetap mencetak output interaktif
ke stdout seperti biasa. Sebagai contoh, perintah
nmap -oX myscan.xml target mencetak XML ke
myscan.xml dan mengisi seluruh output standar dengan hasil interaktif yang sama dengan yang akan dicetaknya bila
tidak diberikan. Anda dapat merubahnya dengan memberikan karakter hyphen
sebagai argumen ke salah satu tipe format. Hal ini membuat Nmap
menonaktifkan output interaktif, dan mencetak hasilnya dalam format yang
anda spesifikasikan ke stream output standar. Sehingga perintah
nmap -oX - target hanya akan mengirim output XML ke
stdout.outputto stdout with -
Kesalahan serius akan tetap dicetak ke stream kesalahan normal,
stderr.standard errorTidak seperti beberapa argumen Nmap, spasi antara flag opsi logfile
(seperti ) dan namafile atau hyphen adalah wajib.
Jika anda menghilangkan flag dan memberi argumen seperti
or , fitur kompatibiltas backward
Nmap akan menyebabkan pembuatan
normal format file output bernama
G- dan Xscan.xml.Seluruh argumen ini mendukung konversi
strftime-likestrftime conversions in filenames
dalam namafile. %H, %M,
%S, %m, %d,
%y, dan %Y semuanya serupa seperti dalam
strftime. %T sama dengan
%H%M%S, %R sama dengan
%H%M, dan %D sama dengan
%m%d%y. Sebuah % diikuti dengan sembarang karakter hanya menghasilkan karakter itu
(%% memberikan simbol persentase.
Sehingga akan menggunakan file XML
dalam bentuk scan-144840-121307.xml.Nmap juga menawarkan opsi untuk mengendalikan verbositas scan dan untuk menambah
file output daripada menghapusnya. Seluruh opsi ini dijelaskan di bawah.Format Output Nmap
(normal output)
normal outputnormal output akan diarahkan
ke nama file yang diberikan. Seperti yang didiskusikan di atas, opsi ini
sedikit berbeda dari interactive output.
(XML output)
XML outputXML output diarahkan
ke namafile yang diberikan. Nmap menyertakan document
type definition (DTD) yang memungkinkan parser XML memvalidasi
output XML Nmap. Walau utamanya ditujukan untuk penggunaan programatik,
ia dapat juga membantu manusia menginterpretasikan output XML Nmap.
DTD mendefinisikan elemen legal format, dan seringkali merinci atribut
dan nilai yang dapat mereka terima.
Versi terakhir selalu tersedia di .XML memberikan format stabil yang dapat secara mudah
diparse oleh software. Parser XML yang bebas tersedia untuk bahasa
pemrograman utama, termasuk C/C++, Perl, Python, dan
Java. Orang bahkan telah menulis binding untuk kebanyakan bahasa ini untuk
menangani output Nmap dan dijalankan secara khusus.
Contohnya adalah Nmap::ScannerNmap::Scanner
and Nmap::ParserNmap::Parser
dalam Perl
CPAN. Dalam kebanyakan kasus bagi interface aplikasi dengan Nmap yang sulit,
XML merupakan format yang lebih disukai.Output XML mengacu ke XSL stylesheet yang dapat digunakan
untuk memformat hasilnya sebagai HTML. Cara termudah menggunakan file ini
adalah dengan memuat output XML dalam sebuah browser web seperti
Firefox atau IE. Secara baku, ini hanya bekerja pada mesin
tempat anda menjalankan Nmap (atau yang dikonfigurasi serupa)
akibat path sistem file nmap.xsl
yang di-hardcoded. Gunakan opsi atau
untuk membuat file XML portabel
yang dibaca sebagai HTML pada semua mesin yang dapat terkoneksi ke web.
(ScRipT KIdd|3 oUTpuT)
scR1pT kIddI3 outputOutput ini seperti output interaktif, kecuali kemudian ia diprose lagi
agar sesuai dengan l33t HaXXorZ yang sebelumnya merendahkan Nmap karena
kapitalisasi dan ejaan yang konsisten. Perlu diperhatikan bahwa opsi ini
mengolok-olok script kiddies alih-alih membantu mereka.
(grepable output)
grepable outputFormat output ini dijelaskan terakhir karena telah didepresiasi.
Format output XML jauh lebih powerful, dan juga cukup nyaman bagi
pengguna berpengalaman. XML merupakan standar yang memiliki lusinan parser bagus,
sementara output grepable merupakan hack sederhana buatan saya.
XML dapat dikembangkan untuk mendukung fitur baru Nmap ketika dirilis,
sementara saya seringkali harus menghilangkan fitur-fitur tersebut dari
output grepable karena tidak ada tempat untuk menaruh mereka.Namun demikian, output grepable masih cukup populer. Ia merupakan format
sederhana yang mendaftar setiap host pada satu baris dan dapat secara mudah
dicari dan diparse dengan tool standar Unix seperti grep, awk, cut,
sed, diff, dan Perl. Bahkan saya menggunakannya untuk test sekali yang dilakukan
pada perintah beris. Menemukan seluruh host dengan port SSH terbuka atau yang
menjalankan Solaris hanya membutuhkan satu grep sederhana untuk mengidentifikasikan host,
yang di-pipe ke perintah awk atau cut untuk mencetak field yang diinginkan.Output grepable terdiri dari komentar (baris yang dimulai dengan tanda
pound (#))grepable outputcomments in
dan baris target. Sebuah baris target menyertakan kombinasi enam field berlabel, yang dipisahkan
oleh tab dan diikuti oleh tanda titik dua.
Field-fieldnya adalah Host, Ports,
Protocols, Ignored State,
OS, Seq Index,
IP ID, dan Status.Field yang paling penting umumnya adalah
Ports, yang memberikan detil pada setiap port yang menarik.
Ia merupakan daftar entri port yang dibatasi koma. Setiap entri port mewakili satu port menarik,
dan memiliki bentuk subfield yang dibatasi oleh tujuh garis miring (/).
Subfieldnya adalah: Port
number, State, Protocol,
Owner, Service, SunRPC
info, dan Version info.Sebagaimana dengan output XML, man page ini tidak memungkinkan untuk mendokumentasi
seluruh format. Rincian lebih lanjut mengenai format output grepable Nmap tersedia
dari .dalam .
(Output to all formats)
Sebagai kenyamanan, anda dapat menspesifikasikan untuk menyimpan hasil scan
dalam format normal, XML, dan grepable sekaligus. Mereka disimpan dalam
basename.nmap,
basename.xml, dan
basename.gnmap.
Seperti kebanyakan program, anda dapat memberi awalan nama file dengan path direktori,
seperti
~/nmaplogs/foocorp/ pada Unix atau
c:\hacking\sco pada Windows.Opsi verbositas dan debugging
(Increase verbosity level)
verbosityPeningkatan level verbositas, menyebabkan Nmap mencetak
lebih banyak informasi tentang scan yang sedang berjalan. Port
terbuka ditunjukkan saat ditemukan dan prakiraan waktu selesai disediakan
ketika Nmap berpikir scan akan membutuhkan lebih dari beberapa menit.
Gunakan dua kali atau lebih untuk lebih meningkatkan verbositas.
giving more than onceKebanyakan perubahan hanya mempengaruhi output interaktif, dan
beberapa juga mempengaruhi output normal dan script kiddie. Tipe output
lainnya ditujukan untuk diproses oleh mesin, sehingga Nmap
dapat memberikan detil yang substansial dalam format tersebut tanpa
melelahkan user. Namun demikian, terdapat beberapa perubahan dalam
mode lainnya ketika ukuran output dapat dikurangi secara berarti dengan
meniadakan beberapa detil. Sebagai contoh, baris perintah dalam output
grepable yang memberikan daftar seluruh port yang discan hanya dicetak
dalam mode verbose karena ia cukup panjang.
(Increase or set debugging level)
debuggingKetika mode verbose tidak memberikan data yang cukup bagi anda,
tersedia debugging untuk membanjiri anda dengan data! Sebagaimana dengan
opsi verbositas (), debugging diaktifkan dengan flag
perintah baris () dan level debug dapat ditingkatkan
dengan menspesifikasikannya berulang kali.
giving more than once
Selain itu, anda dapat menset level debug dengan memberikan argumen ke . Sebagai
contoh, menset level sembilan. Itu adalah level efektif
tertinggi dan akan menghasilkan ribuan baris kecuali anda menjalankan scan yang sangat
sederhana dengan sedikit port dan target.Debugging output berguna ketika diduga terdapat bug dalam Nmap,
atau anda bingung mengenai apa yang dilakukan Nmap dan alasannya. Karena
fitur ini lebih ditujukan bagi pengembang, baris debug tidak selalu jelas.
Anda mungkin akan menemui sesuatu seperti : Timeout
vals: srtt: -1 rttvar: -1 to: 1000000 delta 14987 ==> srtt: 14987
rttvar: 14987 to: 100000. Jika anda tidak memahami sebuah baris,
anda dapat mengabaikannya, mencarinya dalam kode sumber, atau meminta bantuan
dari list pengembangan
(nmap-dev).nmap-dev mailing list
Beberapa baris cukup jelas, namun pesannya dapat semakin tidak jelas ketika level debug
dinaikkan.
(Host and port state reasons)
reason reporting
Tampilkan alasan setiap port diset ke status khusus dan alasan setiap host up
atau down. Opsi ini menampilkan tipe paket yang menentukan status port atau host.
Sebagai contoh, sebuah paket RST dari
port tertutup atau echo reply dari host yang hidup. Informasi yang disediakan
Nmap ditentukan oleh jenis scan atau ping. Scan SYN dan
ping SYN ( dan ) sangat rinci, namun
TCP connect scan () dibatasi oleh implementasi
system call connect. Fitur ini secara otomatis
diaktifkan oleh opsi debug
()implied by
dan hasilnya disimpan dalam file log XML bahkan bila opsi ini tidak diberikan.
(Print periodic timing stats)
Mencetak status waktu secara periodik setelah setiap interval
time. Waktu adalah spesifikasi yang dijelaskan
dalam ; sehingga sebagai contoh, gunakan
--stats-every 10s untuk memperoleh update status
setiap 10 detik. Update dicetak ke output interaktif (layar) dan output XML.
(Trace packets and data sent and received)
Menyebabkan Nmap untuk mencetak ringkasan seiap paket yang dikirim
atau diterima. Opsi ini seringkali digunakan untuk debugging, namun juga
bermanfaat bagi user baru untuk memahami secara tepat apa yang sebenarnya
dilakukan oleh Nmap. Untuk menghindari pencetakan ribuan baris, anda mungkin
ingin membatasi jumlah port yang ingin discan, seperti .
Jika anda hanya mementingkan proses subsistem deteksi versi, gunakan
. Jika anda hanya peduli dengan script tracing,
berikan . Dengan , anda
memperoleh semua hal di atas.
(Show only open (or possibly open) ports)
Terkadang anda hanya peduli tentang port yang benar-benar dapat dikoneksi
(open ones), dan tidak ingin mengacaukan hasilnya dengan port
closed, filtered, dan
closed|filtered. Kustomisasi output normalnya dilakukan
setelah scan dengan menggunakan tool seperti
grep, awk, dan
Perl, namun fitur ini ditambahkan karena
banyaknya permintaan. Berikan untuk hanya melihat port
open, open|filtered, dan
unfiltered. Ketiga port ini diperlakukan seperti normalnya, yang berarti bahwa open|filtered dan unfiltered dapat digabungkan bila terdapat dalam jumlah banyak.
(List interfaces and routes)
Cetak daftar interface dan rute sitem yang dideteksi oleh Nmap.
Opsi ini berguna untuk debugging masalah routing atau kesalahan karakterisasi
device (seperti Nmap memperlakukan koneksi PPP sebagai ethernet).
(Log errors/warnings to normal mode output file)
Peringatan dan kesalahan dicetak oleh Nmap biasanya hanya ke
layar (output interaktif), membiarkan file output format normal
(biasanya dispesifikan dengan )
tidak terganggu. Ketika anda ingin melihat pesan-pesan tersebut dalam
file output normal yang anda spesifikasikan, tambahkan opsi ini. Ia
berguna ketika anda tidak melihat output interaktif atau ketika anda
ingin merekam kesalahan saat men-debug masalah.
Pesan kesalahan dan peringatan akan tetap muncul dalam mode interaktif.
Hal ini tidak bekerja banyak kebanyakan kesalahan yang terkait dengan
argumen perintah baris yang buruk karena Nmap mungkin belum menginisialisasi
file outputnya. Sebagai tambahan, beberapa pesan kesalahan dan peringatan
Nmap menggunakan sistem yang berbeda yang beum mendukung opsi ini.Sebagai alternatif bagi adalah
dengan mengarahkan output interaktif (termasuk stream standard error) ke file.
Kebanyakan shell Unix menjadikan pendekatan ini mudah, meskipun ia
dapat sukar dilakukan pada Windows.Miscellaneous output options
(Append to rather than clobber output files)
Ketika anda menspesifikasikan nama file ke flag format output
seperti atau , file tersebut
secara baku akan ditimpa. Jika anda ingin menjaga isi file yang ada
dan menambahkan hasil baru, spesifikasikan opsi
. Seluruh nama file output yang dispesifikasikan
dalam eksekusi Nmap tersebut kemudian akan ditambahkan alih-alih ditimpa.
Hal ini tidak bekerja baik untuk data scan XML () karena file
yang dihasilkan umumnya tidak akan dapat diparse dengan tepat hingga anda
memperbaikinya secara manual.
(Resume aborted scan)
resuming scansBeberapa penggunaan Nmap ekstensif membutuhkan waktu hingga
dalam hitungan hari. Scan semacam itu tidak selalu berjalan hingga selesai.
Pembatasan mungkin mencegah Nmap dijalankan ketika waktu kerja, jaringan
dapat down, mesin yang menjalankan Nmap mungkin mengalami reboot terencana
atau tidak, atau bahkan Nmap mengalami crash. Administrator yang menjalankan Nmap
dapat membatalkannya demi alasan lainnya,
ctrl-C. Memulai seluruh scan dari awal
mungkin tidak diinginkan. Untungnya, bila log normal
() atau grepable ()
disimpan, user dapat meminta Nmap melanjutkan scanning dengan target
yang sedang dikerjakannya ketika eksekusi berhenti.
Cukup berikan opsi dan berikan argumen file output
normal/grepable. Tidak boleh ada argumen lainnya, karena Nmap memparse file output
yang sama dengan yang digunakan sebelumnya. Cukup panggil Nmap dengan
nmap --resume
logfilename. Nmap akan menambahkan
hasil baru ke file data yang dispesifikasikan dalam eksekusi sebelumnya.
Opsi ini tidak dapat dilakukan untuk format output XML karena
penggabungan dua buah penjalanan Nmap ke satu file XML yang valid adalah sulit.
(Set XSL stylesheet to transform XML output)
Nmap menyertakan sebuah stylesheet stylesheet
XSL XSL
bernama nmap.xslnmap.xsl
untuk melihat atau menerjemahkan output XML ke HTML.
HTML from XML output
Output XML menyertakan sebuah direktif xml-stylesheet
yang mengarah ke nmap.xml
tempat awalnya ia diinstalasi oleh Nmap (atau pada direktori kerja
saat ini pada Windows). Cukup buka output Nmap pada browser modern dan
ia seharusnya mengambil
nmap.xsl dari filesystem dan menggunakannya
untuk merender hasil. Jika anda ingin menggunakan stylesheet yang berbeda,
berikan ia sebagai argumen bagi
. Anda harus memberikan nama path atau URL lengkap.
Cara pemanggilan umum adalah
. Cara ini memberitahu
browser untuk memuat versi terakhir stylesheet dari Nmap.Org.
Opsi melakukan hal yang sama dengan cara yang lebih singkat.
Memuatkan XSL dari Nmap.Org memudahkan melihat hasil pada mesin yang tidak memiliki
Nmap (dan karenanya tidak memiliki
nmap.xsl). Jadi URL seringkali
lebih bermanfaat, namun lokasi filesistem lokal
nmap.xsl digunakan secara baku demi alasan privasi.
(Load stylesheet from Nmap.Org)
Opsi kenyamanan ini adalah sekedar alias bagi
.
(Omit XSL stylesheet declaration from XML)
Berikan opsi ini untuk mencegah Nmap dari mengasosiasikan sembarang sytlesheet XSL
dengan output XML-nya. Direktif xml-stylesheet
ditiadakan.Opsi Lain-lainBagian ini menjelaskan beberapa opsi penting (dan tidak begitu penting)
yang tidak tercakup di manapun.
(Enable IPv6 scanning)
IPv6Sejak tahun 2002, Nmap memberikan dukungan IPv6 untuk fiturnya
yang paling populer. Terutama, scanning ping (hanya-TCP),
connect scanning, dan deteksi versi semuanya mendukung IPv6.
Sintaks perintahnya sama dengan yang biasa kecuali anda juga menambahkan
opsi . Tentu saja anda harus menggunakan sintaks IPv6
jika anda menspesifikasikan sebuah alamat alih-alih nama host.
Sebuah alamat mungkin terlihat seperti
3ffe:7501:4819:2000:210:f3ff:fe03:14d0,
sehingga disarankan untuk menggunakan nama host. Outputnya tampak sama
dengan yang biasa, dengan alamat IPv6 pada baris port
menarik.Meskipun IPv6 belum tersebar luas, ia telah digunakan secara signifikan
di beberapa negara (biasanya Asia) dan kebanyakan sistem operasi
modern mendukungnya. Untuk menggunakan Nmap dengan IPv6, sumber dan target
scan anda harus dikonfigurasi untuk IPv6. Jika ISP anda (seperti kebanyakan) tidak
mengalokasikan alamat IPv6 bagi anda, broker tunnel bebas tersedia luas
dan bekerja baik dengan Nmap. Saya menggunakan layanan broker tunnel IPv6 gratis
IPv6 tunnel broker
di .
Broker tunnel lainnya adalah
di daftar
Wikipedia. 6to4 tunnels adalah pendekatan gratis dan populer lainnya.
(Aggressive scan options)
Opsi ini mengaktifkan opsi agresive dan advance tambahan.
Saya belum memutuskan kepanjangannya. Saat ini ia mengaktifkan
deteksi SO (), scanning versi (),
scanning script () dan
traceroute ().
features enabled by
Fitur lebih banyak mungkin ditambahkan di masa mendatang.
Tujuannya adalah mengaktifkan set opsi scan yang lengkap tanpa perlu
mengingat sejumlah besar flag. Namun demikian, karena scanning script
dengan set baku dianggap mengganggu, anda tidak seharusnya menggunakan
terhadap jaringan target tanpa ijin.
Opsi ini hanya mengaktifkan fitur, dan tidak opsi pewaktuan
(seperti ) atau opsi verbositas
() yang mungkin anda inginkan pula.
(Specify custom Nmap data file location)
Nmap memperoleh beberapa data khusus pada runtime dalam file
bernama nmap-service-probes,
nmap-services,
nmap-protocols,
nmap-rpc,
nmap-mac-prefixes, dan
nmap-os-db. Jika lokasi
file-file ini telah dispesifikasikan (dengan menggunakan opsi
atau ),
lokasi tersebut digunakan untuk file itu. Setelah itu, Nmap
mencari file-file ini dalam direktori yang dispesifikasikan dengan opsi
(bila ada). File yang tidak ditemukan
di sana, akan dicari pada direktori yang dispesifikasikan oleh
variabel lingkungan NMAPDIR NMAPDIR environment variable.
Kemudian
~/.nmap.nmap directory
untuk UID ril dan efektif (sistem POSIX) atau lokasi eksekutabel
Nmap (Win32), dan kemudian lokasi yang digunakan saat kompilasi
seperti /usr/local/share/nmap atau /usr/share/nmap
. Dan terakhir, Nmap akan mencari dalam direktori saat ini.
(Specify custom services file)
Beritahu Nmap untuk menggunakan file service yang diberikan alih-alih file
nmap-services yang disertakan dalam
Nmap. Dengan menggunakan opsi ini juga menyebabkan opsi scan cepat
() digunakan. Lihat deskripsi untuk
untuk informasi lebih lanjut mengenai file data Nmap.
(Specify custom service probes file)
Minta Nmap untuk menggunakan file pro be service yang diberikan alih-alih file
nmap-service-probes yang disertakan dalam Nmap.
Lihat deskripsi untuk
untuk informasi lebih lanjut mengenai file data Nmap.
(Use raw ethernet sending)
Minta Nmap mengirim paket pada layer ethernet raw (data
link) alih-alih layer IP (jaringan) yang lebih tinggi. Secara baku,
Nmap memilih satu yang umumnya terbaik untuk platform yang digunakan.
Socket Raw (layer IP layer)raw sockets
umumnya paling efisien pada mesin-mesin Unix, sementara frame ethernet
dibutuhkan bagi operasi Windows karena Microsoft meniadakan dukungan
socket raw. Nmap tetap menggunakan paket IP raw pada Unix ketika
tidak ada pilihan lainnya (seperti koneksi non-ethernet).
(Send at raw IP level)
Minta Nmap untuk mengirim paket melalui soket IP raw alih-alih
mengirimkan frame ethernet level lebih rendah. Ia merupakan komplemen
opsi yang didiskusikan sebelumnya.
(Assume that the user is fully privileged)
Beritahu Nmap untuk mengasumsikan bahwa ia memiliki cukup privilege
untuk melakukan pengiriman socket raw, packet sniffing, dan
operasi sejenis yang biasanya membutuhkan
root privilegesprivileged usersauthorized usersprivileged users
pada sistem Unix. Secara baku Nmap berhenti bila operasi itu diminta
namun geteuid tidaklah nol.
berguna dengan kapabilitas kernel Linux
dan sistem serupa yang mungkin dikonfigurasi untuk membolehkan user
unprivileged melakukan scan raw-packet. Pastikan untuk memberikan flag opsi ini
sebelum flag lainnya bagi opsi yang membutuhkan privilege
(SYN scan, deteksi SO, dsb.). Variabel lingkungan
NMAP_PRIVILEGEDNMAP_PRIVILEGED environment variable
dapat juga diset sebagai alternatif ekivalen bagi
.
(Assume that the user lacks raw socket privileges)
unprivileged usersOpsi ini merupakan lawan
. Ia memberitahu Nmap untuk memperlakukan
user sebagai tidak memiliki privilege network raw socket dan sniffing.
Hal ini berguna untuk testing, debugging, atau ketika fungsionalitas jaringan
raw pada sistem operasi anda tampaknya rusak. Variabel lingkungan
NMAP_UNPRIVILEGEDNMAP_UNPRIVILEGED environment variable
dapat diset sebagai alternatif ekivalen bagi
.
(Release memory before quitting)
Opsi ini hanya berguna untuk memory-leak debugging.
Ia membuat Nmap merilis memori yang telah dialokasikan sebelum ia berhenti
sehingga kebocoran memori sebenarnya mudah ditemukan.
Normalnya Nmap melewati langkah ini karena SO melakukannya setelah
penghentian proses.
; (Print version number)
Mencetak angka versi Nmap dan keluar.
; (Print help summary page)
Mencetak layar bantuan singkat dengan flag-flag yang paling umum.
Menjalankan Nmap tanpa argumen melakukan hal yang sama.Interaksi Runtimeruntime interactionSelama eksekusi Nmap, seluruh kunci yang ditekan direkam.
Hal ini memungkinkan anda beriteraksi dengan program tanpa membatalkan
dan memulai ulang. Beberapa kunci khusus akan merubah opsi, sementara kunci lain
akan mencetak pesan status yang memberitahu anda mengenai scan.
Konvensinya adalah
huruf kecil meningkatkan jumlah yang dicetak, dan
huruf kapital mengurangi yang dicetak.
Anda dapat juga menekan ‘?’ untuk bantuan.
/
Naikkan / kurangi level verbositas
/
Naikkan / kurangi level debugging
/
Aktifkan/Non-aktifkan packet tracingCetak layar bantuan interaksi runtime
Lainnya
Cetak pesan satus seperti ini:Stats: 0:00:08 elapsed; 111 hosts completed (5 up),
5 undergoing Service ScanService scan Timing: About 28.00% done; ETC: 16:18
(0:00:15 remaining)Contoh-contohBerikut ini adalah beberapa contoh penggunaan Nmap, dari yang mudah dan rutin
hingga yang sedikit kompleks dan canggih. Beberapa alamat IP
dan nama domain aktual digunakan untuk membuatnya menjadi lebih kongkrit.
Anda harus merubah alamat/nama dengan
jaringan anda sendiri.. Meskipun saya tidak menganggap
scanning port jaringan lain adalah atau seharusnya ilegal, beberapa administrator
jaringan tidak menghargai scanning jaringan mereka sembarangan dan akan mengajukan keluhan.
Pendekatan terbaik adalah memperoleh ijin terlebih dulu.Untuk tujuan pengujian, anda memperoleh ijin untuk memeriksa host
scanme.nmap.org. Ijin ini hanya mencakup
pemeriksaan dengan Nmap dan tidak menguji eksploit atau serangan denial of service.
Untuk menghemat bandwidth, mohon tidak menggunakan lebih dari selusin scan
terhadap host tersebut per hari. Jika layanan target scanning gratis ini disalahgunakan,
ia akan dinonaktifkan dan Nmap akan melaporkan
Failed to resolve given hostname/IP:
scanme.nmap.org. Ijin ini juga berlaku untuk host-host
scanme2.nmap.org,
scanme3.nmap.org, dan seterusnya, meskipun host-host
ini belum ada.example ofnmap -v scanme.nmap.orgOpsi ini memeriksa seluruh port TCP reserved pada mesin
scanme.nmap.org . Opsi
mengaktifkan mode verbose.example ofexample ofnmap -sS -O scanme.nmap.org/24Meluncurkan scan stealth SYN terhadap setiap mesin yang up dari
256 IP pada jaringan berukuran kelas C tempat
Scanme berada. Ia juga berusaha menentukan sistem operasi yang digunakan
pada setiap host yang hidup dan berjalan. Hal ini membutukan privilege root
karena scan SYN dan deteksi SO.example ofnmap -sV -p 22,53,110,143,4564
198.116.0-255.1-127Meluncurkan enumerasi host dan scan TCP pada setengah bagian pertama
dari subnet dalam alamat kelas B 198.116. Scan ini menguji apakah sistem
menjalankan SSH, DNS, POP3, atau IMAP pada port standarnya, atau apapun pada port
4564. Pada sembarang port yang ditemukan terbuka, akan digunakan deteksi versi
untuk menentukan aplikasi apa yang berjalan.example ofexample ofnmap -v -iR 100000 -PN -p 80Meminta Nmap memilih 100.000 host secara acak dan memeriksanya
untuk web server (port 80). Enumerasi host ditiadakan dengan
karena mengirim beberapa probe untuk menentukan
apakah host hidup adalah sia-sia ketika anda hanya memprobe satu port
pada setiap host target.example ofexample ofnmap -PN -p80 -oX logs/pb-port80scan.xml -oG
logs/pb-port80scan.gnmap 216.163.128.20/20Memeriksa 4096 IP untuk sembarang web server (tanpa mem-ping
mereka) dan menyimpan hasilnya dalam format grepable dan XML.Bugsbugs, reportingSeperti penulisnya, Nmap tidaklah sempurna. Namun anda dapat membantu
membuatnya lebih baik dengan mengirimkan laporan bug atau bahkan menulis patch. Jika
Nmap tidak berlaku sesuai yang anda harapkan, pertama upgrade ke versi terakhir
yang tersedia dari . Jika masalah masih tetap,
lakukan riset untuk menentukan apakah ia telah ditemukan dan diselesaikan.
Cobalah mencari pesan kesalahan pada halaman pencarian kami atau di Google. Juga cobalah
membrowsing arsip nmap-dev di .nmap-dev mailing list
Bacalah juga halaman manual ini dengan baik.
Jika masih belum selesai juga, kirimkan laporan bug ke
dev@nmap.org. Mohon sertakan semua yang
anda telah pelajari mengenai masalah, dan juga versi Nmap dan sistem operasi
yang anda gunakan. Laporan kesalahan dan pertanyaan penggunaan Nmap yang dikirim ke
dev@nmap.org akan lebih mungkin dijawab daripada yang dikirimkan
secara langsung ke Fyodor. Jika anda berlangganan ke list nmap-dev
sebelum posting, pesan anda akan melewati moderasi dan akan lewat dengan lebih cepat.
Berlangganan di .Patch code untuk memperbaiki bug adalah lebih baik daripada laporan kesalahan.
Instruksi dasar untuk membuat file patch dengan perubahan anda tersedia di
. Patch dapat dikirim ke
nmap-dev (direkomendasikan) atau langsun ke Fyodor.PenulisFyodor
fyodor@nmap.org
()
Selama ini, ratusan orang telah memberikan kontribusi berharga ke Nmap.
Hal ini dirinci dalam file
CHANGELOGchangelog
yang didistribusikan bersama Nmap
dan juga tersedia dari .Legal NoticesUnofficial Translation Disclaimer / Disklaimer Terjemahan Tidak ResmiThis is an unnofficial translation of the Nmap
license details into Indonesian. It was not written by
Insecure.Com LLC, and does not legally state the distribution terms
for Nmap -- only the original English text does that. However, we
hope that this translation helps Indonesian speakers understand the
Nmap license better.Ini merupakan terjemahan tidak resmi dari Nmap
license details ke dalam bahasa Indonesia. Ia tidak ditulis oleh
Insecure.Com LLC, dan tidak secara legal menyatakan syarat distribusi
untuk Nmap -- hanya teks berbahasa Inggris aslinya yang melakukan hal itu.
Namun demikian, kami berharap bahwa terjemahan ini membantu pengguna bahasa Indonesia
untuk lebih memahami lisensi Nmap.Nmap Copyright and LicensingcopyrightGNU General Public LicenseThe Nmap Security Scanner is (C) 1996–2009 Insecure.Com LLC. Nmap is also a registered trademark of Insecure.Com LLC. This program is free software; you may redistribute and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; Version 2 with the clarifications and exceptions described below. This guarantees your right to use, modify, and redistribute this software under certain conditions. If you wish to embed Nmap technology into proprietary software, we sell alternative licenses (contact sales@insecure.com). Dozens of software vendors already license Nmap technology such as host discovery, port scanning, OS detection, and version detection.Note that the GPL places important restrictions on
derived works, yet it does not provide a detailed
definition of that term. To avoid misunderstandings, we consider an
application to constitute a derivative work for the
purpose of this license if it does any of the following:Integrates source code from NmapReads or includes Nmap copyrighted data files, such as
nmap-os-db or
nmap-service-probes.Executes Nmap and parses the results (as opposed to
typical shell or execution-menu apps, which simply display raw
Nmap output and so are not derivative works.)Integrates/includes/aggregates Nmap into a proprietary
executable installer, such as those produced by
InstallShield.Links to a library or executes a program that does any
of the above.The term Nmap should be taken to also include any
portions or derived works of Nmap. This list is not exclusive, but is
meant to clarify our interpretation of derived works with some common
examples. Our interpretation applies only to Nmap—we don't
speak for other people's GPL works.If you have any questions about the GPL licensing restrictions
on using Nmap in non-GPL works, we would be happy to help. As
mentioned above, we also offer alternative license to integrate Nmap
into proprietary applications and appliances. These contracts have
been sold to many security vendors, and generally include a perpetual
license as well as providing for priority support and updates as well
as helping to fund the continued development of Nmap
technology. Please email sales@insecure.com for further
information.As a special exception to the GPL terms, Insecure.Com LLC grants
permission to link the code of this program with any version of the
OpenSSL library which is distributed under a license identical to that
listed in the included COPYING.OpenSSL file, and distribute linked
combinations including
the two.OpenSSLlinking exception
You must obey the GNU GPL in all
respects for all of the code used other than OpenSSL. If you modify
this file, you may extend this exception to your version of the file,
but you are not obligated to do so.If you received these files with a written license agreement or
contract stating terms other than the terms above, then that
alternative license agreement takes precedence over these
comments.Creative Commons License for this Nmap GuideThis Nmap Reference Guide is (C) 2005–2008 Insecure.Com LLC. It is
hereby placed under version 2.5 of the Creative Commons
Attribution License. This allows you redistribute and modify
the work as you desire, as long as you credit the original source.
Alternatively, you may choose to treat this document as falling under
the same license as Nmap itself (discussed previously).Source Code Availability and Community ContributionsSource is provided to this software because we believe users
have a right to know exactly what a program is going to do before they
run it. This also allows you to audit the software for security holes
(none have been found so far).Source code also allows you to port Nmap to new platforms, fix
bugs, and add new features. You are highly encouraged to send your
changes to fyodor@nmap.org for possible
incorporation into the main distribution. By sending these changes to
Fyodor or one of the Insecure.Org development mailing lists, it is
assumed that you are offering Fyodor and Insecure.Com LLC the
unlimited, non-exclusive right to reuse, modify, and relicense the
code. Nmap will always be available
Open Source,open source
but this is important
because the inability to relicense code has caused devastating
problems for other Free Software projects (such as KDE and NASM). We
also occasionally relicense the code to third parties as discussed
above. If you wish to specify special license conditions of your
contributions, just say so when you send them.No Warrantywarranty (lack of)This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License v2.0 for more details at , or in the COPYING file
included with Nmap.It should also be noted that Nmap has occasionally been known to crash
poorly written applications, TCP/IP stacks, and even operating
systems.crashing targets
While this is extremely rare, it is important to keep in
mind. Nmap should never be run against mission
critical systems unless you are prepared to suffer
downtime. We acknowledge here that Nmap may crash your systems or
networks and we disclaim all liability for any damage or problems Nmap
could cause.Inappropriate UsageBecause of the slight risk of crashes and because a few black
hats like to use Nmap for reconnaissance prior to attacking systems,
there are administrators who become upset and may complain when their
system is scanned. Thus, it is often advisable to request permission
before doing even a light scan of a network.Nmap should never be installed with special privileges
(e.g. suid root) for security reasons.setuid, why Nmap shouldn't beThird-Party SoftwareThis product includes software developed by
the Apache Software
Foundation. A modified version of the Libpcap portable packet capture
librarylibpcap
is distributed along with Nmap.
The Windows version of Nmap utilized the Libpcap-derived
WinPcap libraryWinPcap
instead.
Regular expression support is provided by the
PCRE library,Perl Compatible Regular Expressions (PCRE)
which is open-source software, written by Philip Hazel.Hazel, Philip
Certain raw networking functions use the
Libdnetlibdnet
networking library, which was written by Dug Song.Song, Dug
A modified version is distributed with Nmap.
Nmap can optionally link with the
OpenSSL
cryptography toolkitOpenSSL
for SSL version detection support.
The Nmap Scripting Engine uses an embedded version of
the Lua programming
language.Lua programming language
All of the third-party software described in this paragraph is freely
redistributable under BSD-style software licenses.United States Export Control Classificationexport controlU.S. Export Control: Insecure.Com LLC believes that Nmap falls
under U.S. ECCN (export control classification number) 5D992. This
category is called Information Security software not controlled
by 5D002. The only restriction of this classification is AT
(anti-terrorism), which applies to almost all goods and denies export
to a handful of rogue nations such as Iran and North Korea. Thus
exporting Nmap does not require any special license, permit, or other
governmental authorization.