<-Back-----<

 

WWW.SPYROZONE.NET

 

 
[222]. PORT SCANNING

 

 

 

 

-----------------------------------------------------------------------------------

Author  : SPYRO KiD

Contact : admin@spyrozone.net => http://spyrozone.net

CopyLEFT (c) 2007 www.spyrozone.net All Rights Reserved

31/10/2007 19.35.41 WIB

-----------------------------------------------------------------------------------

 

 

 

...oO0--(TOC

 

I.    Preface

II.   Apa itu PORT?

III.  Jenis-Jenis PORT

IV.   Jenis-Jenis PORT Scanning

V.    Probe

VI.   Ragam Tools PORT Scanning

VII.  Penutup

 

 

 

...oO0--(I). Preface

 

    Alhamdulillah Ya Robbi.. akhirnya saya mempunyai kesempatan untuk menulis artikel lagi. Kali ini saya akan memberikan pembahasan mengenai PORT dan PORT Scan. Dalam tahap-tahap melakukan Hacking, Scanning terhadap PORT merupakan tahapan dasar yang sangat penting.

 

    Anda sendiri tentu sering membaca dan mendengar tentang seorang Hacker yang mengambilalih system targetnya dengan memanfaatkan PORT yang terbuka. Nah, apa sich PORT itu sebenarnya? Mengapa PORT dibiarkan terbuka sementara banyak serangan dilakukan dengan memanfaatkan PORT yang terbuka? Bagaimana cara mengetahui PORT apa saja yang terbuka? Untuk menjawab pertanyaan-pertanyaan itulah artikel ini ditulis ;)

 

    Enjoy..

 

 

 

...oO0--(II). Apa itu PORT?

 

    PORT adalah suatu saluran yang memungkinkan untuk dilewati oleh data. PORT sebenarnya berupa suatu alamat pada stack jaringan kernel, sebagai sarana dimana transport layer mengelola koneksi dan melakukan pertukaran data antar komputer. PORT ibarat pintu bagi rumah kita. Kita mempergunakan pintu untuk berinteraksi dengan dunia luar, melakukan hubungan dengan orang-orang di luar rumah dan mengunjungi tempat-tempat lain (pintu-pintu milik orang lain).

 

    Demikian juga dengan fungsi PORT. Dengan adanya PORT, kita dapat mengakses perangkat-perangkat luar seperti Flashdisk, printer, dan lain sebagainya. Dengan adanya PORT kita dapat browsing ke situs-situs kesayangan kita, kita dapat mengakses FTP, kita dapat mengirim email kepada kerabat-kerabat kita dan melakukan banyak aktivitas menyenangkan lainnya.

 

 

 

...oO0--(III). Jenis-Jenis PORT

 

    Ada 2 jenis PORT yang ada dalam komputer kita, yaitu PORT fisik dan PORT perangkat lunak atau biasa disebut PORT logikal.

 

---//PORT FISIK

 

    PORT Fisik ialah slot yang berada di CPU kita. Contohnya  USB, COM1, COM2 dan lain sebagainya. Melalui saluran inilah kita menghubungkan perangkat luar dengan komputer.

 

---//PORT LOGIKAL

 

    Port logikal merupakan PORT yang dipergunakan oleh software/aplikasi untuk berinteraksi dengan komputer lain. Ketika Anda melakukan browsing ke suatu situs, komputer anda akan membuka PORT secara acak diatas PORT 1023 lalu membuka PORT 80 pada situs tujuan. Dengan adanya PORT yang terbuka inilah kita bisa beraktivitas saat berselancar di Internet. Dengan adanya PORT yang terbuka inilah suatu proses Hacking memungkinkan untuk dilakukan ;)

 

    Port Logikal ini sendiri dibagi menjadi beberapa bagian yaitu:

 

1.  WELL KNOWN PORT
    PORT jenis ini ialah PORT yang banyak dikenal oleh para pengguna komputer dan paling sering dipergunakan. PORT ini memiliki range dari 0-1023. Contoh dari well known PORT ialah: PORT 21 (ftp), PORT 22 (ssh), PORT 23 (telnet), PORT 45 (SMTP), http (80), dll.

2.  Registered PORTs
    Nah, PORT jenis ini telah kita singgung tadi. PORT ini memiliki range dari 1024-49151, biasanya dibuka secara acak sementara waktu oleh komputer kita saat berkomunikasi dengan menggunakan remote server. Ketika aktivitas hubungan client-server berakhir, PORT ini akan ditutup kembali.

3.  The Dynamic/Private PORTs
    Port bagian ini merupakan PORT yang menjadi pintu favorit bagi kebanyakan Trojan (walaupun ada juga aplikasi legal yang mengggunakan range ini). Range dari PORT ini ialah 49152-65535. (Baca kembali artikel No. [021]. Mengenal TROJAN)

 

 

 

...oO0--(IV). Jenis-Jenis PORT Scanning

 

    Port Scanning bisa jadi ancaman yang cukup serius bagi system kita, dan menjadi hal yang sangat menyenangkan bagi para attacker ;p Dengan PORT scanning, attacker mendapatkan informasi-informasi berharga yang dibutuhkan dalam melakukan serangan. Pada intinya, melakukan port scanning ialah untuk mengidentifikasi port-port apa saja yang terbuka, dan mengenali OS target.

 

    Adapun jenis-jenis PORT scanning antara lain:

 

---| TCP connect scan
    Scan jenis ini sangat mudah terdeteksi oleh system target. Scan tipe ini tergantung dari OS korban, sehingga cukup riskan untuk dipakai. Jenis Scan ini ialah dengan melakukan koneksi ke PORT sasaran dan menyelesaikan three-way handshake (SYN, SYN/ACK, dan ACK). Hal ini berarti, korban akan melakukan logging scanning jenis ini. Karena itulah scanning jenis ini sangat mudah terdeteksi. 


---| TCP SYN scan (half-opening scanning)

    Jenis ini lebih aman daripada TCP connect scan. TCP SYN scan merupakan tehnik yang paling banyak digunakan dan agak sukar terdeteksi, karena tidak menggunakan 3 way handshake secara lengkap, yang disebut sebagai teknik half open scanning.

 

    Pada TCP SYN scan, suatu koneksi penuh TCP tidak sampai terbentuk. Tehnik dari TCP SYN scan ialah dengan mengirimkan suatu paket SYN ke PORT sasaran. Apabila SYN/ACK diterima dari PORT sasaran, maka kita dapat mengambil kesimpulan bahwa PORT itu berada dalam status LISTENING. Suatu RST/ACT akan dikirim oleh mesin yang melakukan scanning sehingga koneksi penuh tidak akan terbentuk.


---| TCP FIN scan

    Teknik ini hanya dapat dipakai pada stack TCP/IP berbasis UNIX. Teknik dari TCP FIN scan ialah dengan mengirimkan suatu paket FIN ke PORT sasaran. Sistem sasaran akan mengirim balik suatu RST untuk setiap PORT yang tertutup (RFC 793).


---| TCP Xmas Tree scan
    Teknik ini dilakukan dengan mengirimkan suatu paket FIN, URG, dan PUSH ke PORT sasaran.


---| TCP Null scan

    TCP Null scan dilakukan dengan membuat off semua flag.


---| TCP ACK scan

    Scan tipe ini agak sedikit berbeda karena tidak digunakan untuk menentukan apakah PORT tersebut terbuka tau tertutup. Scan ini hanya menunjukkan apakah state korban terfiltered atau unfiltered. Jika terfiltered, maka PORT mana yang terfiltered.

 

    Dengan kata lain, TCP ACK scan dipergunakan untuk memetakan set aturan firewall. Tehnik ini akan membantu menentukan apakah firewall itu merupakan suatu simple packet filter yang membolehkan hanya koneksi-koneksi tertentu (koneksi dengan bit set ACK) atau suatu firewall yang menjalankan advance packet filtering.


    ACK scan bekerja dengan mengirimkan paket TCP dengan flag ACK. Jika unfiltered, korban mengirim RST, yang artinya korban menerima paket ACK, Akan tetapi, status PORT target bisa dalam kondisi open atau close. Apabila ternyata korban tidak merespon, atau mengirim paket ICMP error (type 3, code 1, 2, 3, 9, 10, or 13), maka korban diberi status filtered.


---| TCP Windows scan

    Teknik ini dapat mendeteksi PORT-port terbuka maupun terfilter/tidak terfilter pada sistem-sistem tertentu (sebagai contoh, AIX dan FreeBSD) sehubungan dengan anomali dari ukuran windows TCP yang dilaporkan.


---| TCP RPC scan

    Teknik ini spesifik hanya pada system UNIX dan digunakan untuk mendeteksi dan mengidentifikasi PORT RPC (Remote Procedure Call) dan program serta normor versi yang berhubungan dengannya.
 

---| UDP scan

    Pada UDP scan, sesuai dengan namanya, paket yang dikirim adalah paket UDP. Bila PORT sasaran memberikan respon berupa pesan “ICMP PORT unreachable” artinya PORT ini tertutup. Sebaliknya bila tidak menerima pesan di atas, kita dapat menyimpulkan bahwa PORT itu terbuka. UDP scanning merupakan proses yang amat lambat apabila anda mencoba menlakukan scan terhadap suatu perangkat yang menjalankan packet filtering berbeban tinggi.

 

 

 

...oO0--(V). Probe

  

---| FIN probe
    Suatu paket FIN atau paket tanpa flag ACK atau SYN dikirim untuk membuka port dan menunggu respon. Seharusnya tidak ada respon bagi aksi ini berdasarkan RFC 793. Akan tetapi hal ini tidak berlaku mutlak. Pada implementasi yang buruk,  banyak implementasi stack pada MS Windows, BSDI, CISCO, HP/UX, MVS, dan IRIX yang mengirimkan kembali RESET.
 
---| Flag BOGUS probe
    Pada aksi ini, suatu flag TCP undefined (64 atau 128) di-set pada header TCP dari suatu SYN packet. Beberapa system operasi akan merespon dengan flag yang di-set pada response packet-nya. Linux misalnya, akan menjaga flag ini tetap di keadaan set pada responnya.
 
---| Sampling TCP ISN
    Nmap merupakan program pertama yang menggunakan ini untuk melakukan identifikasi OS. Idenya ialah dengan mendapatkan suatu pola pada initial sequence yang dipilih oleh implementasi TCP sewaktu merespon suatu permintaan koneksi.
 
---| Bit don't fragment
    Beberapa OS akan mengeset 'Don't fragment bit' pada beberapa paket yang mereka kirim dengan alasan untuk meningkatkan performa. Masing-masing OS memiliki kondisi yang berbeda untuk melakukan ini. Karena itulah, bit ini dapat dimonitor untuk menentukan jenis sistem operasi target.

---| Window inisial TCP
   Banyak informasi yang bisa kita dapatkan dari test ini. Akurasi mekanisme fingerprinting didapatkan karena beberapa OS dapat  di-identifikasi secara unik melalui window sendiri. Aksi ini melakukan pelacakan initial window size pada paket yang dikembalikan. Misalnya saja AIX. AIX merupakan OS yang menggunakan 0x3F25. Dari angka unik inilah OS fingerprinting sukses dilakukan.

---| ACK Value
    Nilai yang digunakan untuk field ACK berbeda-beda pada kasus tertentu. Misalnya saja ketika kita mengirimkan FIN|PSH|URG ke port TCP yang tertutup. Seharusnya respon yang diberikan ialah mengembalikan sequence number yang dikirim. Namun Windows akan mengembalikan sequence number +1. Nah, dari keanekaragaman inilah identifikasi bisa dilakukan.


---| ICMP Error Message Quenching
     Apabila OS merujuk pada RFC 1812, maka ada batasan tertentu dalam kecepatan pengiriman Error Message. Cobalah mengirim paket ke beberapa port UDP bernomor besar secara acak, anda dapat menghitung unreachable message received. Karena harus mengirim paket secara acak dan menunggunya kembali, tes ini membuat proses identifikasi menjadi sedikit lebih lama.

---| ICMP Message Quoting
    Berdasarkan RFC, Sistem operasi memberikan informasi yang berbeda-beda ketika mendapatkan ICMP error. Kita dapat membuat dugaan OS target dengan memanfaatkan hal ini (dengan memeriksa quoted message).


---| ICMP Error message echoing integrity
    Dalam kondisi wajar, mesin seharusnya memberi respon dengan mengirim kembali bagian pesan asli dengan error port yang tidak dapat dicapai. Namun dalam impelmentasinya, IP header diubah saat mengirim kembali ICMP error messages. Dengan mngendus perubahan-perubahan dan perbedaan ini, kita dapat menentukan OS target.

---| Tipe Service
     Untuk pesan port ICMP yang tidak dapat dicapai,  Anda dapat melihat nilai Type Of Service (TOS) dari paket yang kembali. Kebanyakan implementasi stack akan memakai 0 untuk error ICMP ini. Namun ada juga yang berbeda. Misalnya saja Linux, memakai 0xC0.


---| Penanganan Fragmentasi
    Aksi ini dilakukan dengan mengambil keuntungan dari fakta bahwa implementasi berbeda sering menangani fragmen IP yang overlapping secara berbeda. Beberapa menimpa data lama, menggantinya yang baru, sementara yang lain dapat kebalikannya. Dari sanalah banyak perbedaan yang bisa digunakan untuk menentukan bagaimana paket tersebut disusun kembali.

---| Pilihan TCP
    Implementasi stack yang lebih baru (RFC 1323) mengirimkan paket dengan multiple option set, seperti no operation, maximum segment size, window scale factor, dan timestamp. Dari sisnilah dimungkinkan untuk membuat dugaan-dugaan tentang OS target.


 

...oO0--(VI). Ragam Tools Scanning

 

 

---| NMAP --> http://insecure.org

     Scanner buatan FYODOR ini merupakan tools hacking FAvorit saya ;) NMAP memiliki segudang opsi menarik dan merupakan tools yang lebih dari cukup untuk melakukan scanning. Mulai dari port scanning untuk TCP serta ICMP, hingga tehnik-tehnik anti deteksi bisa dilakukan oleh NMAP.

 

 

---| NETCAT --> http://netcat.org
    NETCAT dikenal sebagai tools hacking serba-guna. Aksi-aksi mengerikan mulai dari banner grabbing, port scanning, mengambil alih system target melalui konsol, hingga sebagai backdoor.

 

     Perhatikan contoh penggunaan NETCAT berikut:

 

C:\TMP\NETCAT>nc -v -z xxx.x.x.xx 10-140
blablabla [xxx.x.x.xx] 139 (netbios-ssn) open
blablabla [xxx.x.x.xx] 113 (auth) open
blablabla [xxx.x.x.xx] 110 (pop3) open
blablabla [xxx.x.x.xx] 98 (?) open
blablabla [xxx.x.x.xx] 80 (http) open
blablabla [xxx.x.x.xx] 25 (smtp) open
blablabla [xxx.x.x.xx] 23 (telnet) open
blablabla [xxx.x.x.xx] 21 (ftp) open
 

 

---| d-el-el a.k.a dan lain-lain ;p

     Masih banyak kok tools lain untuk membantu anda melakukan scanning. Namun hanya dua yang telah saya sebutkan tadi yang biasa saya pergunakan untuk menjelajah. Silahkan anda gunakan bantuan paman Google untuk mencari scanner lain ;)

 

 

 

...oO0--(VII). Penutup

 

     Wah, sekian dulu dech.. Kita sambung lagi artikelnya jika ada kesempatan. Di artikel lanjutan nanti, kita akan bahas lebih dalam mengenai tehnik penggunaan 2 tools scanning tadi dan cara-cara mencegah port scanning.

 

Bubbay zoNERS.. keep learning and Happy Hacking!

 

 

 

/* ------------------------------|EOF|------------------------------ */

 

  <-Back-----<   

 WWW.SPYROZONE.NET