IP Spoofing terjadi ketika seorang
attacker ‘mengakali’ packet routing untuk mengubah arah dari data atau
transmisi ke tujuan yang berbeda. Packet untuk routing biasanya di
transmisikan secara transparan dan jelas sehingga membuat attacker
dengan mudah untuk memodifikasi asal data ataupun tujuan dari data.
Teknik ini bukan hanya dipakai oleh attacker tetapi juga dipakai oleh
para security profesional untuk men tracing identitas dari para
attacker.
Teknik ini berawal pada tahun 80-an
dengan ditemukannya kelemahan pada protokol TCP yang dikenal dengan
prediksi urutan atau rangkaian paket TCP (sequence prediction). Hal ini
memancing para ahli lain untuk ikut membahas kelemahan ini pada protokol
TCP/IP. Kevin Mitnick (hacker master) juga menggunakan teknik ini untuk
meng-hack mesin Profesor Tsutomu Shimomura.
IP (Internet Protocol)
IP merupakan network protokol yang
beroperasi pada layer ke 3 dari OSI (Baca artikel OSI layer). IP
merupakan protokol yang termasuk ’connectionless’. Artinya tidak ada
mekanisme yang dibutuhkan untuk memastikan informasi atau data yang
dikirimkan sampai ke tempat tujuan (konfirmasi). Kalau kita membaca atau
melihat IP header, dapat terlihat bahwa 12 bytes pertama berisikan
informasi mengenai paket data tersebut. Sedangkan 8 bytes berikutnya
berisikan alamat sumber dan tujuan. Dengan menggunakan tools tertentu,
hacker dapat melakukan modifikasi alamat-alamat tersebut pada IP header –
terutama alamat sumber untuk tujuan aktivitas IP spoofing. Karena
sifatnya yang ’connectionless’ seperti penjelasan di atas, maka setiap
paket data dikirimkan sendiri-sendiri tanpa ada ikatan antara paket satu
dengan lainnya.
TCP – Transmission Control Protocol
Lain halnya dengan IP, TCP merupakan
protokol yang connection oriented artinya ada langkah (step) konfirmasi
yang dibutuhkan dalam komunikasi atau pada saat pengiriman data. Ingat
3-way handshake yang saya bahas di buku ’Hack Attack’ ? OK. Bagi yang
belum baca, saya akan bahas sekilas. Pada saat satu host akan
mengirimkan data dengan protokol TCP ke host lain, maka host sumber akan
mengirimkan kode SYN ke host satunya. Host target kalau sedang idle
atau bisa menerima kiriman data, akan reply dengan kode SYN-ACK. Yang
kemudian host sumber akan me-reply lagi dengan kode ACK. Kalau di
kehidupan sehari-hari, bisa digambarkan sebagai berikut, misalnya saya
ingin ke rumah teman saya. Saya akan telpon dulu, ‘Hey, kamu ada di
rumah ngak saat ini ?’. Kalau teman saya ngak ada, berarti telpon saya
tidak akan direspon (tidak diangkat). Kalau ada, dia bilang, oh bisa,
saya lagi ngak ada kerjaan. Berarti teman saya memberikan respon
SYN-ACK. Selanjutnya saya akan memberikan konfirmasi ACK, OK, saya akan
ke tempatmu sekarang. Jelas ?
Sama halnya dengan IP, TCP juga
mempunyai header dalam setiap datagram. 12 bytes pertama dalam TCP
header berisikan informasi seperti port dan informasi lain seperti
sequence number yang dibutuhkan untuk menyusun kembali urutan data yang
dikirimkan atau untuk menentukan paket data perlu di-kirim lagi atau
tidak.
Setelah melihat penjelasan di atas dapat
kita simpulkan bahwa TCP/IP design mempunyai konsekuensi terhadap
berbagai serangan yang menggunakan teknik manipulasi header atau menebak
nomor sequence sehingga dapat memicu session hijacking.
Lalu bagaimana pencegahan terhadap IP spoofing??
* Filtering di Router.
Dengan memanfaatkan ”ingress dan engress
filtering” pada router merupakan langkah pertama dalam mempertahankan
diri dari spoofing. Kita dapat memanfaatkan ACL(acces control list)
untuk memblok alamat IP privat di dalam jaringan untuk downstream.
Implementasi kan ACL (access control
list) yang melakukan block terhadap alamat IP private (192.x.x.x atau
10.x.x.x) di sisi interface downstream (dari luar ke jaringan internal).
Juga lakukan blok alamat IP di luar alamat valid internal di sisi
upstream interface (dari internal ke luar), hal ini untuk mencegah
adanya usaha melakukan spoofing dari internal ke luar. Namun cara ini
mempunyai kelemngahan, yaitu tidak bisa mengontrol jika serangan
dilakukan dari dalam (internal attack) terhadap korban di dalam satu
jaringan yang sama.
* Menerapkan enkripsi dan Authentifikasi
Mengeliminasi semua authentikasi
berdasarkan host, yang di gunakan pada komputer dengan subnet yang sama.
Hal ini untuk mencegah packet data di-hijack orang di tengah jalan.
Karena data di transmisikan dari sumber ke tujuan dalam bentuk
di-enkrip.
0 komentar:
Show Emoticons
Posting Komentar