Tampilkan postingan dengan label S1 Teknik Informatika. Tampilkan semua postingan
Tampilkan postingan dengan label S1 Teknik Informatika. Tampilkan semua postingan

Senin, 28 Mei 2012

Deteksi SO


         Salah 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-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 (-v). Ketika digunakan mode verbose bersama dengan -O, 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.
         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 http://nmap.org/book/osdetect.html.
Deteksi SO diaktifkan dan dikendalikan dengan opsi-opsi berikut:
-O (Aktifkan deteksi SO)
Aktifkan deteksi SO, seperti didiskusikan di atas. Anda dapat juga menggunakan -A untuk mengaktifkan deteksi SO dan hal lainnya.
--osscan-limit (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 -PN atas banyak host. Ia hanya penting ketika deteksi SO diminta dengan opsi -O atau -A.
--osscan-guess; --fuzzy (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.
--max-os-tries (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 --max-os-tries 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.

Minggu, 27 Mei 2012

Deteksi Versi dan Layanan


         Arahkan Nmap ke mesin remote dan ia dapat memberitahu anda bahwa port 25/tcp, 80/tcp, dan 53/udp terbuka. Dengan menggunakan database nmap-services yang berisi lebih dari 2.200 layanan yang dikenal, 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.
Bahkan 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-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. Ketika ditemukan layanan RPC, Nmap RPC grinder (-sR) secara otomatis digunakan untuk menentukan program dan angka versi RPC. Beberapa port UDP diinformasikan dalam status open|filteredsetelah 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 -A di antaranya mengaktifkan deteksi versi. Sebuah paper yang mendokumentasikan cara kerja, penggunaan, dan kustomisasi deteksi versi tersedia di http://nmap.org/book/vscan.html.
         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.
Deteksi versi diaktifkan dan dikendalikan dengan opsi-opsi berikut:
-sV (Deteksi Versi)
Mengaktifkan deteksi versi, seperti yang dijelaskan di atas. Anda dapat pula menggunakan -A, yang salah satunya mengaktifkan deteksi versi.
--allports (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 --allports untuk memeriksa seluruh port tanpa mengindahkan direktif Exclude.
--version-intensity <intensity> (Menset intensitas pemeriksaan versi)
Ketika melakukan pemeriksaan versi (-sV), 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. Nilai bakunya adalah 7. Ketika sebuah probe didaftarkan ke port target melalui direktif nmap-service-probes ports, 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.
--version-light (Aktifkan mode ringan)
Opsi ini merupakan alias dari --version-intensity 2. Mode ringan ini membuat pemeriksaan versi lebih cepat, namun mungkin kurang dapat mengidentifikasi layanan.
--version-all (Coba semua probe tunggal)
Sebuah alias bagi --version-intensity 9, memastikan bahwa setiap probe tunggal dicoba terhadap setiap port.
--version-trace (Melacak aktivitas pemeriksaan versi)
Hal ini membuat Nmap mencetak info debugging yang ekstensif tentang pemeriksaan versi yang sedang dilakukan. Ia merupakan subset dari --packet-trace.
-sR (RPC scan)
Metode 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. Ia secara otomatis diaktifkan sebagai bagian pemeriksaan versi (-sV) jika anda memintanya. Oleh karena deteksi versi menyertakannya dan jauh lebih lengkap, -sR jarang dibutuhkan.

Selasa, 03 April 2012

Spesifikasi Port dan Urutan Scan

        Selain 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.

-p <port ranges> (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 -p- untuk memeriksa port dari 1 hingga 65535. Anda diperbolehkan memeriksa port nol jika anda menspesifikasikannya secara eksplisit. Untuk pemeriksaan protokol IP (-sO), 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 -p U:53,111,137,T:21-25,80,139,8080 akan memeriksa port UDP 53, 111,dan 137, dan juga port TCP yang disebutkan. Untuk memeriksa UDP dan TCP, anda harus menspesifikasikan -sU dan paling tidak satu jenis scan TCP (seperti -sS, -sF, atau -sT). Jika tidak diberikan qualifier protokol, nomor port akan ditambahkan ke seluruh daftar protokol.
      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 -p ftp,http*. Berhati-hatilah dengan ekspansi shell dan berilah tanda kutip pada argumen -pjika 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: -p [-1024]. Berhati-hatilah dengan ekspansi shell dan berilah tanda kutip pada argumen -p jika tidak yakin.

-F (Fast (limited port) scan)
      Memberitahukan bahwa anda ingin memeriksa lebih sedikit port daripada jumlah baku. Normalnya Nmap memeriksa 1.000 port umum untuk setiap protokol yang diperiksa. Dengan -F, jumlahnya dikurangi menjadi 100.
      Nmap membutuhkan file nmap-services dengan informasi frekuensi untuk mengetahui port yang paling umum . Jika informasi frekuensi port tidak tersedia, mungkin karena penggunaan filenmap-services kustom, -F berarti memeriksa hanya port yang ada di dalam file services (normalnya Nmap memeriksa seluruh port yang memiliki nama dan port 1–1024).

-r (Jangan randomisasi port)
      Secara 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 -r untuk pemeriksaan port secara berurutan.

--port-ratio <angka desimal antara 0 dan 1>
      Memeriksa seluruh port dalam file nmap-services dengan rasio lebih daripada angka yang diberikan sebagai argumen.

--top-ports <integer 1 atau lebih>
      Memeriksa port-port dengan rasio tertinggi N yang ditemukan dalam file nmap-services.

Selasa, 27 Maret 2012

Teknik Scanning Port

          Sebagai 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, 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. Hal ini karena mereka mengirim dan menerima paket raw, 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 (-sU) dapat digabungkan dengan sembarang jenis scan TCP. Sebagai pengingat, opsi jenis scan port adalah dalam bentuk -s<C>, dengan <C> merupakan karakter utama dalam nama scan, biasanya yang pertama. Satu pengecualian untuk ini adalah scan bounce FTP yang telah kuno (-b). 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.
-sS (TCP SYN scan)
SYN 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, danfiltered.
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).
-sT (TCP connect scan)
Scan 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.
-sU (UDP scan)
Walau 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 -sU. Ia dapat digabungkan dengan jenis scan TCP seperti SYN scan (-sS) 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 iaopen. 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 (-sV) 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 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 --host-timeout untuk melewati host lambat.
-sN; -sF; -sX (TCP NULL, FIN, dan Xmas scan)
Ketiga jenis scan ini (bahkan kemungkinan lebih dengan adanya opsi --scanflags 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 (-sN)
Tidak mengirimkan bit(header flag TCP adalah 0)
FIN scan (-sF)
Hanya menset bit FIN TCP.
Xmas scan (-sX)
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 tanggapanopen|filtered.
-sA (TCP ACK scan)
Scan 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 --scanflags). 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 merekaopen 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.
-sW (TCP Window scan)
Window 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.
-sM (TCP Maimon scan)
Scan Maimon dinamakan dengan nama penemunya, Uriel Maimon. Ia menjelaskan teknik ini dalam Phrack Magazine issue #49 (November 1996). 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.
--scanflags (Custom TCP scan)
User Nmap mahir tidak perlu membatasi dirinya pada jenis scan yang tersedia secara baku. Opsi --scanflags memungkinkan anda merancang scan anda sendiri dengan menspesifikasikan sembarang flag TCP.. Biarkan cairan kreatif anda mengalir, sementara mengakali intrusion detection system yang vendornya sekedar membaca man page Nmap menambahkan aturan khusus!
Argumen --scanflags 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, --scanflags URGACKPSHRSTSYNFIN 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 -sA atau -sF). 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.
-sI <zombie host>[:<probeport>] (idle scan)
Metode 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 http://nmap.org/book/idlescan.html.
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 (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).
-sO (IP protocol scan)
Scan 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 -p 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 Rieger menerima ide tersebut, menulis patch yang bagus untuk mengimplementasikannya, dan mengirimnya ke milis nmap-hackers. 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 sebagaiopen. 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
-b <FTP relay host> (FTP bounce scan)
Satu 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 -b 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.

Selasa, 20 Maret 2012

Dasar Scanning Port

       Meskipun 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 Nmap
open
Sebuah 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 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
Nmap 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
Status 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
Nmap 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
Status ini digunakan ketika Nmap tidak dapat menentukan apakah port tertutup atau di-filter. Ia hanya digunakan pada scan idle ID IP.

Sabtu, 17 Maret 2012

Port scanning untuk melihat target di internet

Dalam melakukan hacking jarak jauh (remote), langkah paling awal yang harus dilakukan sebelum proses hacking dilakukan adalah melihat servis yang diberikan oleh server / target di Internet. Dalam konsep jaringan komputer klien-server, setiap program / servis akan menempati sebuah port dalam tatanan protokol TCP (Transmission Control Protocol). Sebagai gambaran kombinasi port-program/servis yang cukup familiar dengan pengguna umum Internet adalah:

            25        smtp server
80                web server
110            pop server

Cara paling sederhana untuk melihat status servis pada server target di Internet adalah menggunakan software port scanner seperti nmap di Linux yang dibuat oleh fyodor@insecure.org.

Nmap di rancang untuk memungkinkan seorang sistem administrator atau perorangan yang iseng untuk melakukan scan jaringan yang besar, melihat mesin yang sedang beroperasi & servis yang mereka berikan. Cukup banyak teknik scan yang diberikan oleh nmap seperti  UDP, TCP connect(), TCP SYN (half open), ftp proxy (bounce attack), Reverse-ident, ICMP (ping sweep), FIN, ACK sweep, Xmas  Tree,  SYN sweep, dan Null scan. Di samping itu, nmap juga memberikan banyak fitur seperti remote OS detection via TCP/IP fingerprinting,  stealth  scanning,  kalkulasi dynamic   delay   &       retransmission, parallel scanning, detection of down hosts via parallel  pings,  decoy  scanning,  port filtering detection, direct (non-portmapper) RPC scanning,      fragmentation scanning, dan spesifikasi yang flexible dari target & port.

Saya kebetulan menggunakan Linux Mandrake 8.0 di komputer Pentium 133MHz di rumah. Linux Mandrake 8.0 menyediakan nmap dalam distribusinya. Port scanner nmap dapat digunakan menggunakan command line (di ketik di promt $ atau #) atau menggunakan grafik interface di Linux. Saya sendiri lebih suka menggunakan command line, karena kita dapat mengontrol lebih banyak parameter.

Cuplikan contoh hasil port scan tiga (3) situs Indonesia di Internet, yaitu:

            www.detik.com
            www.telkom.co.id
            ibank.klikbca.com


[root@gate onno]# nmap -v -sS -O www.detik.com

Starting nmap V. 2.53 by fyodor@insecure.org ( www.insecure.org/nmap/ )
Host www.detik.com (202.158.66.181) appears to be up ... good.
Initiating SYN half-open stealth scan against www.detik.com
Interesting ports on www.detik.com (202.158.66.181):
(The 1513 ports scanned but not shown below are in state: filtered)
Port       State       Service
20/tcp     closed      ftp-data
21/tcp     closed      ftp
22/tcp     open        ssh
25/tcp     closed      smtp
80/tcp     open        http
110/tcp    closed      pop-3
443/tcp    closed      https
1417/tcp   closed      timbuktu-srv1
5900/tcp   closed      vnc
5901/tcp   closed      vnc-1

TCP Sequence Prediction: Class=random positive increments
                         Difficulty=3193299 (Good luck!)

Nmap run completed -- 1 IP address (1 host up) scanned in 580 seconds


[root@gate onno]# nmap -v -sS -O www.telkom.co.id

Starting nmap V. 2.53 by fyodor@insecure.org ( www.insecure.org/nmap/ )
Host  (202.134.2.15) appears to be up ... good.
Interesting ports on  (202.134.2.15):
(The 1493 ports scanned but not shown below are in state: closed)
Port       State       Service
7/tcp      open        echo
9/tcp      open        discard
13/tcp     open        daytime
19/tcp     open        chargen
37/tcp     open        time
80/tcp     open        http
111/tcp    open        sunrpc
137/tcp    filtered    netbios-ns
138/tcp    filtered    netbios-dgm
139/tcp    filtered    netbios-ssn
199/tcp    open        smux
512/tcp    open        exec
513/tcp    open        login
514/tcp    open        shell
543/tcp    open        klogin
544/tcp    open        kshell
882/tcp    open        unknown
883/tcp    open        unknown
1234/tcp   open        hotline
1352/tcp   open        lotusnotes
1524/tcp   filtered    ingreslock
2041/tcp   filtered    interbase
2401/tcp   open        cvspserver
6000/tcp   filtered    X11
6112/tcp   open        dtspc
12345/tcp  filtered    NetBus
12346/tcp  filtered    NetBus
27665/tcp  filtered    Trinoo_Master
32771/tcp  open        sometimes-rpc5
32773/tcp  open        sometimes-rpc9

TCP Sequence Prediction: Class=truly random
                         Difficulty=9999999 (Good luck!)


Nmap run completed -- 1 IP address (1 host up) scanned in 284 seconds
[root@gate onno]#




[root@yc1dav onno]# nmap -vv -sS -O ibank.klikbca.com

Starting nmap V. 2.53 by fyodor@insecure.org ( www.insecure.org/nmap/ )
Host  (202.158.15.52) appears to be down, skipping it.
Note: Host seems down. If it is really up, but blocking our ping probes, try -P0
Nmap run completed -- 1 IP address (0 hosts up) scanned in 43 seconds


Tampak diantara ke tiga (3) situs di atas, ibank.klikbca.com merupakan situs yang palings serius pertahanannya. Bahkan oleh nmap yang melakukan stealth probe gagal untuk melihat port yang aktif di ibank.klikbca.com (sebetulnya port 443 terbuka di ibank.klikbca.com).

www.telkom.co.id merupakan situs yang termasuk paling parah pertahanannya, demikian banyak port yang terbuka di Internet sehingga membuat kita berfikir apakah betul ini Telkom yang hebat itu? Koq sampai demikian ceroboh? Atau di sengaja? Entahlah.

www.detik.com cukup baik hanya membuka penuh port 80 (Web) dan 22 (SSH); di samping ada beberapa port lain yang beroperasi tapi tertutup bagi umum di Internet untuk mengakses-nya.

Cara menjalankan nmap juga tampak relatif sederhana, menggunakan format

            # nmap [tipe scan] [option] nama-target-mesin

Jika PC anda tersambung ke Internet, maka port scanning akan dijalankan secara otomatis oleh nmap & menampilkan hasil seperti tampak di atas.

Ada beberapa tipe scan yang sering digunakan untuk melihat port nama saja yang terbuka dari ribuan port; beberapa perintah yang ada seperti, -sT, -sF, -sR dsb. Yang sering saya gunakan adalah:

-sS - TCP SYN scan: teknik ini kadang di sebut “half-open” scanning, karena anda tidak membuka penuh hubungan TCP. Jika di responds dengan SYN|ACK maka port berarti terbuka. Bila responds berupa RST menunjukan servis tidak jalan. Pada saat SYN|ACK di terima, nmap akan meresponds dengan RST. Dengan teknik ini, sedikit situs yang akan mencatat scanning yang dilakukan. Hal ini di sebut stealth scannning.

Ada banyak option yang mengatur cara kerja nmap, beberapa yang sering saya gunakan misalnya:

            -P0 – tidak melakukan ping ke target, untuk menghindari kita terlihat oleh target.

-f  - menggunakan potongan paket kecil-kecil (fragmented) agar sulit di deteksi oleh software pendeteksi penyusup.

            -v – verbose mode, untuk melihat hasil antara proses scan pada layar.

            -O – mencoba menebak sistem operasi yang digunakan oleh mesin target.


Untuk melihat penjelasan lengkap berbagai pilihan yang ada di nmap, ada baiknya membaca manual nmap yang dapat diperoleh dengan men-tik

            $ man nmap

di prompt Linux.

Setelah kita mengetahui port / servis yang dijalankan di mesin target, kita perlu mengetahui jenis software untuk servis tersebut. Dan mencoba membaca-baca di situs underground kelemahan software tersebut, sukur-sukur kalau kita menemukan eksploit software tersebut. Biasanya eksploit yang tersedia perlu di compile menggunakan compiler C.

Perlu di ingat & di pahami proses hacking akan terdiri dari empat (4) langkah utama yaitu:

Step 1: Memperoleh akses ke situs.
Step 2: Menghack root.
Step 3: Menutupi bekas-bekas anda.
Step 4: Membuat backdoor untuk menjaga account.

Kita baru mencapai Step 0, usaha untuk membuka akses ke situs. Perjalanan masih lama & membutuhkan banyak waktu & proses belajar.