Awalnya suatu paket dengan SYN-flag dikirim ke IP tujuan, tujuan akan memberikan respon dengan suatu ACK(SYN) flag atau suatu paket de ngan RST-flag. Akan saya jelaskan: SYN singkatan dari SYN -(synchronisation), yang digunakan untuk ‘memberitahukan' komputer tujuan suatu permintaan melakukan koneksi, kalau diterima, maka permintaan tersebut akan dijawab dengan suatu paket ACK(SYN) flag. A CK singkatan dari ACK-(nowledgement). Setelah menerima paket dengan ACK(SYN) flag, komputer mengirim kembali suatu ACK memberitahukan host lain bahwa koneksi telah dibuat. Hal ini kita sebut sebagai "Three-Way-Handshake". Jika koneksi telah dibuat dan salah satu host ingin melakukan disconnect, akan dikirim suatu paket dengan FIN-flag diaktifkan. (FIN singkatan dari FINish).
TCP Three-Way Handshake.
- TCP client memulai three-way handshake dengan mengirim segmen dengan sinyal SYN (Synchronize Sequence Number), yang mengindikasikan nilai awal dari nomor sekuensial yang ada pada header. Nilai awal ini dikenal dengan Initial Sequence Number (ISN), digunakan untuk memulai mengirim aliran data dari klien ke server untuk sesi ini.
- TCP server perlu untuk mengacknowledge SYN segmen yang diterima dari klien untuk membangun sesi dari klien ke server. Maka, server mengirim segmen balik ke klien dengan ACK flag. Klien akan mengenali bahwa server menerima sinyal SYN dari TCP klien.
- Akhirnya, klien TCP merespon dengan segmen yang berisi ACK yang digunakan untuk merespon TCP SYN yang dikirim oleh server. Ketika kedua sesi telah terbentuk antara klien dan server, semua tambahan segmen yang bertukar pada komunikasi ini akan memiliki ACK flag.
ICMP
Internet Control Message Protocol (ICMP) adalah protokol yang digunakan untuk membantu error handling dan prosedur pengaturan (control procedure). Protokol ini bekerja pada network layer dan berurusan dengan layanan koneksi (connection services). Tugas dari ICMP adalah menyediakan pengendalian error (error control ) dan pengendalian arus (flow control) pada network layer.
Kegiatan yang berjalan di Internet dimonitor secara teliti oleh router. Jika terjadi seseuatu yang tidak diinginkan, kejadian tersebut akan dilaporkan oleh ICMP. ICMP mendeteksi kondisi error seperti kongesti/kemacetan internetwork (internetwork congestion) dan hubungan yang putus, lalu memberitahukan IP (Internet Protocol) dan protokol pada layer atas sehingga paket-paket dapat dikirimkan disekeliling area yang bermasalah.
Tipe Pesan/Message ICMP
Pesan ICMP dibagi dalam 2 jenis : error-reporting message dan query message.
1. Error reporting
Tanggung jawab utama ICM adalah melaporkan terjadinya error. Namun ICMP tidak memperbaiki error. Perbaikan error hanya dilakukan pada lapisan protokol yang lebih tinggi. Pesan error selalu di kirim ke alamat asal. Ada 5 jenis error yang ditangani oleh ICMP, yakni :
- Destination unreachable
- Source Quence
- Time exceeded
- Parameter Problem
- Redirection
2. Query
Jenis pesan yang lain untuk ICMP adalah query. Dalam pesan jenis ini, node mengirim pesan yang dijawab dalam format spesifik oleh node tujuan. Jenis-jenis query pada ICMP adalah :
- Echo request and reply
- Timestamp request and reply
- Address mask request and reply
- Router solicitation and advertisement.
Untuk penjelasan mengenai tipe-tipe pesan tersebut:
· Destination unreachable: Tipe pesan ini digunakan ketika subnet atau router tidak dapat menemukan tujuan, atau paket dengan DF bit tidak dapat dikirimkan, karena “paket-kecil” jaringan berada pada jalur.
· Time exceeded: Tipe pesan ini akan dikirimkan ketika paket di-drop dikarenakan counter telah mencapai 0. Kejadian tersebut merupakan gejala bahwa terjadi looping pada paket, kemacetan yang sangat besar, atau pengatur waktu (timer) yang diatur terlalu rendah.
· Parameter problem: Tipe pesan ini menunjukkan bahwa nilai yang tidak sah (ilegal) telah terdeteksi pada header field. Masalah ini menunjukkan adanya bug pada software IP host pengirim, atau mungkin pada software router yang dilintasi oleh paket.
· Source quench: Tipe pesan ini tadinya digunakan untuk menghambat host yang mengirim terlalu banyak paket. Ketika host menerima pesan tersebut, diharapkan untuk memperlambatnya. Hal tersebut jarang dilakukan lagi karena ketika kemacetan (congestion) terjadi, paket tersebut cenderung untuk menambah kemacetan yang terjadi. Pengendalian kemacetan pada Internet sekarang sebagian besar ditangani pada transport layer.
· Redirect: Tipe pesan ini digunakan ketika router memperhatikan bahwa paket terlihat salah dikirimkan. Pesan ini digunakan router untuk memberitahu host pengirim tentang kemungkinan terjadinya error.
· Echo request dan echo reply: Kedua tipe pesan ini digunakan untuk melihat apakah tujuan (destination) dapat dicapai dan dalam keadaan hidup. Pada saat mengirim ECHO REQUEST, tujuan (destination) diharapkan untuk mengirim balik ECHO REPLY yang menandakan tujuan dapat dicapai dan dalam keadaan hidup.
· Timestamp request dan timestamp reply: Timestamp request dan timestamp reply adalah serupa, mengharapkan waktu tiba dari pesan dan waktu keberangkatannya dicatat pada saat membalas. Fasilitas ini digunakan untuk mengetahui performance jaringan.
Flood Ping
Pengertian mem-Flood adalah mengirim data ke IP komputer dengan terus-menerus (membanjiri IP tsb dengan data"). Sebenarnya fungsi Ping (Packet Internet Groper) adalah untuk melihat apakah ada hubungan antara komputer yang satu dengan yang lainnya dengan cara mengirimkan sejumlah packet data.
Ping Flooding adalah brute force Denial of Service sederhana. Jika serangan dilakukan oleh penyerang dengan bandwidth yang lebih baik dari korban, maka mesin korban tidak dapat mengirimkan paket data ke dalam jaringan (network). Hal ini terjadi karena mesin korban di banjiri (flood) oleh peket-paket ICMP. Varian dari serangan ini disebut “smurfing” Serangan DoS ini dapat dilakukan secara serempak dari beberapa komputer yang tersebar sehingga disebut Distributed DoS (DDoS). Serangan ini cukup ampuh dan sempat membuat down beberapa web site yang terkenal seperti Yahoo.com, ebay, CNN, dan lain-lainnya. Software yang digunakan untuk menyerang diduga adalah trinoo, tfn (tribal flood network).
Banyak software di internet yang dapat dikategorikan DoS, beberapa diantaranya adalah Ping of Death, Teardrop dan Ping Broadcast (Smurf).
Contoh Ping Flood:
Membutuhkan akses root untuk melakukan ini pada sistem Linux. Implementasinya sederhana saja, yaitu dengan mengirimkan paket data secara besar-besaran. bash # ping -fs 65000 [ip_target]
Ping of Death
Ping of Death adalah jenis serangan yang menggunakan utility ping yang terdapat pada sistem operasi komputer. Ping ini digunakan untuk mengecek waktu yang aka diperlukan untuk mengirim data tertentu dari satu komputer ke komputer lainnnya. Panjang maksimum data menurut TCP protokol IP adalah 65,536 byte. Selain itu, paket serangan Ping of Death dapat dengan mudah dispoof atau direkayasa sehingga tidak bisa diketahui asal sesungguhnya dari mana, dan penyerangnya hanya perlu mengetahui alamat IP dari komputer yang diserangnya.Penyerang dapat mengirimkan berbagai paket ICMP yang terfragmentasi sehingga waktu paket-paket tersebut disatukan kembali, maka ukuran paket seluruhnya melebihi batas 65536 byte. Contoh sederhananya sebagai berikut:
Masuk Ke Cmd:
C:\windows>ping -l 65540
ping 182.4.xxx.xxx -l 65000 -t (ping of death )
Ping normal misal ke ip 10.10.202.1
Ping of death ke 10.10.202.1
Perintah MSDOS di atas melakukan ping atau pengiriman paket ICMP berukuran 65540 byte ke suatu host/server. Pada jenis serangan tersebut, data yang akan dikirim melebihi panjang maksimal yang disediakan. Jika sistem tidak siap saat penerimaan data, maka sistem akan hang, crash, atau reboot.