Ensiklopedia Serangan Denial of
Service
Onno W. Purbo
Tulisan ini merupakan saduran
bebas dari tulisan yang sama di PC Magazine http://205.181.113.18/pcmag/pctech/content/17/08/nt1708.002.html
dan juga hacktech.org (http://www.hacktech.org).
Denial of Service (DoS) merupakan serangan di Internet yang termasuk cukup di
takuti karena akan menyebabkan mesin / server tidak bisa beroperasi sama sekali
& tidak bisa memberikan servis. Tulisan ini akan mencoba memberikan
gambaran secara garis besar teknik dari berbagai serangan telak tersebut.
Beberapa teknik telak yang sering digunakan, antara lain adalah:
- Ping of Death.
- Teardrop.
- SYN Attack
- Land Attack
- Smurf Attack
- UDP Flood
Ping of Death menggunakan program utility ping yang ada di
sistem operasi komputer. Biasanya ping digunakan untuk men-cek berapa waktu
yang dibutuhkan untuk mengirimkan sejumlah data tertentu dari satu komputer ke komputer
lain. Panjang maksimum data yang dapat dikirim menurut spesifikasi protokol IP
adalah 65,536 byte. Pada Ping of Death data yang dikirim melebihi maksimum
paket yang di ijinkan menurut spesifikasi protokol IP. Konsekuensinya, pada
sistem yang tidak siap akan menyebabkan sistem tersebut crash (tewas), hang
(bengong) atau reboot (booting ulang) pada saat sistem tersebut menerima paket
yang demikian panjang. Serangan ini sudah tidak baru lagi, semua vendor sistem
operasi telah memperbaiki sistem-nya untuk menangani kiriman paket yang
oversize.
Teardrop – teknik ini
dikembangkan dengan cara mengeksplotasi proses disassembly-reassembly paket
data. Dalam jaringan Internet, seringkali data harus di potong kecil-kecil
untuk menjamin reliabilitas & proses multiple akses jaringan. Potongan
paket data ini, kadang harus dipotong ulang menjadi lebih kecil lagi pada saat
di salurkan melalui saluran Wide Area Network (WAN) agar pada saat melalui
saluran WAN yang tidak reliable proses pengiriman data menjadi lebih reliable.
Pada proses pemotongan data paket yang normal setiap potongan di berikan
informasi offset data yang kira-kira berbunyi “potongan paket ini merupakan
potongan 600 byte dari total 800 byte paket yang dikirim”. Program teardrop
akan memanipulasi offset potongan data sehingga akhirnya terjadi overlapping
antara paket yang diterima di bagian penerima setelah potongan-potongan paket
ini di reassembly. Seringkali, overlapping ini menimbulkan system yang crash,
hang & reboot di ujung sebelah sana.
SYN Attack- kelemahan dari
spesifikasi TCP/IP, dia terbuka terhadap serangan paket SYN. Paket SYN
dikirimkan pada saat memulai handshake (jabat tangan) antara dia aplikasi
sebelum transaksi / pengiriman data dilakukan. Pada kondisi normal, aplikasi
klien akan mengirimkan paket TCP SYN untuk mensinkronisasi paket pada aplikasi
di server (penerima). Server (penerima) akan mengirimkan respond berupa
acknowledgement paket TCP SYN ACK. Setelah paket TCP SYN ACK di terima dengan
baik oleh klien (pengirim), maka klien (pengirim) akan mengirimkan paket ACK
sebagai tanda transaksi pengiriman / penerimaan data akan di mulai. Dalam
serangan SYN flood (banjir paket SYN), klien akan membanjiri server dengan
banyak paket TCP SYN. Setiap paket TCP SYN yang dikirim akan menyebabkan server
menjawab dengan paket TCP SYN ACK.
Server (penerima) akan terus mencatat (membuat antrian backlog) untuk
menunggu responds TCP ACK dari klien yang mengirimkan paket TCP SYN. Tempat
antrian backlog ini tentunya terbatas & biasanya kecil di memori. Pada saat
antrian backlog ini penuh, sistem tidak akan merespond paket TCP SYN lain yang
masuk – dalam bahasa sederhana-nya sistem tampak bengong / hang. Sialnya paket
TCP SYN ACK yang masuk antrian backlog hanya akan dibuang dari backlog pada
saat terjadi time out dari timer TCP yang menandakan tidak ada responds dari
klien pengirim. Biasanya internal timer TCP ini di set cukup lama. Kunci SYN
attack adalah dengan membanjiri server dengan paket TCP SYN menggunakan alamat
IP sumber (source) yang kacau. Akibatnya, karena alamat IP sumber (source)
tersebut tidak ada, jelas tidak akan ada TCP ACK yang akan di kirim sebagai
responds dari responds paket TCP SYN ACK. Dengan cara ini, server akan tampak
seperti bengong & tidak memproses responds dalam waktu yang lama. Berbagai
vendor komputer sekarang telah menambahkan pertahanan untuk SYN attack ini
& juga programmer firewall juga menjamin bahwa firewall mereka tidak
mengirimkan packet dengan alamat IP sumber (source) yang kacau.
Land Attack – dalam Land
attack – gabungan sederhana dari SYN attack – hacker membanjiri jaringan dengan
paket TCP SYN dengan alamat IP sumber dari sistem yang di serang. Biarpun
dengan perbaikan SYN attack di atas, Land attack ternyata menimbulkan masalah
pada beberapa sistem. Serangan jenis ini relatif baru, beberapa vendor sistem
operasi telah menyediakan perbaikannya. Cara lain untuk mempertahankan jaringan
dari serangan Land attack ini adalah dengan memfilter pada software firewall
anda dari semua paket yang masuk dari alamat IP yang diketahui tidak baik.
Paket yang dikirim dari internal sistem anda biasanya tidak baik, oleh karena
itu ada baiknya di filter alamat 10.0.0.0-10.255.255.255,
127.0.0.0-127.255.255.255, 172.16.0.0-172.31.255.255, dan
192.168.0.0-192.168.255.255.
Smurf Attack - jauh lebih menyeramkan dari serangan
Smurf di cerita kartun. Smurf attack adalah serangan secara paksa pada fitur
spesifikasi IP yang kita kenal sebagai direct broadcast addressing. Seorang
Smurf hacker biasanya membanjiri router kita dengan paket permintaan echo
Internet Control Message Protocol (ICMP) yang kita kenal sebagai aplikasi ping.
Karena alamat IP tujuan pada paket yang dikirim adalah alamat broadcast dari
jaringan anda, maka router akan mengirimkan permintaan ICMP echo ini ke semua
mesin yang ada di jaringan. Kalau ada banyak host di jaringan, maka akan
terhadi trafik ICMP echo respons & permintaan dalam jumlah yang sangat
besar. Lebih sial lagi jika si hacker ini memilih untuk men-spoof alamat IP
sumber permintaan ICMP tersebut, akibatnya ICMP trafik tidak hanya akan
memacetkan jaringan komputer perantara saja, tapi jaringan yang alamat IP-nya
di spoof – jaringan ini di kenal sebagai jaringan korban (victim). Untuk
menjaga agar jaringan kita tidak menjadi perantara bagi serangan Smurf ini,
maka broadcast addressing harus di matikan di router kecuali jika kita sangat
membutuhkannya untuk keperluan multicast, yang saat ini belum 100% di
definikan. Alternatif lain, dengan cara memfilter permohonan ICMP echo pada
firewall. Untuk menghindari agar jaringan kita tidak menjadi korban Smurf
attack, ada baiknya kita mempunyai upstream firewall (di hulu) yang di set
untuk memfilter ICMP echo atau membatasi trafik echo agar presentasinya kecil
dibandingkan trafik jaringan secara keseluruhan.
UDP Flood pada dasarnya
mengkaitkan dua (2) sistem tanpa disadarinya. Dengan cara spoofing, User
Datagram Protocol (UDP) flood attack akan menempel pada servis UDP chargen di
salah satu mesin, yang untuk keperluan “percobaan” akan mengirimkan sekelompok
karakter ke mesin lain, yang di program untuk meng-echo setiap kiriman karakter
yang di terima melalui servis chargen. Karena paket UDP tersebut di spoofing
antara ke dua mesin tersebut, maka yang terjadi adalah banjir tanpa henti
kiriman karakter yang tidak berguna antara ke dua mesin tersebut. Untuk
menanggulangi UDP flood, anda dapat men-disable semua servis UDP di semua mesin
di jaringan, atau yang lebih mudah memfilter pada firewall semua servis UDP
yang masuk. Karena UDP dirancang untuk diagnostik internal, maka masih aman
jika menolak semua paket UDP dari Internet. Tapi jika kita menghilangkan semua
trafik UDP, maka beberapa aplikasi yang betul seperti RealAudio, yang
menggunakan UDP sebagai mekanisme transportasi, tidak akan jalan.
|