ICMP (Internet Control Message Protocol)
ICMP adalah protokol yang gunakan untuk memberikan informasi kepada kita. ICMP dapat melaporkan error yang terjadi pada jaringan dan memberitahu jika tujuan bisa / tidak bisa dijangkau.
ICMP digunakan
untuk melaporkan kesalahan dan informasi lain berdasarkan pemrosesan paket IP
kembali ke sumbernya. ICMP, yang didokumentasikan dalam RFC 792, paling dikenal
untuk digunakan oleh program "ping" dan "traceroute" pada
perangkat jaringan yang mendukung/memiliki IP Address. Utilitas ping mengirim paket echo request ICMP ke host tujuan untuk menguji konektivitas IP ke host tujuan tersebut, kemudian menerima pesan echo reply ICMP menunjukkan bahwa host dapat berhasil
dihubungi.
contoh test koneksi dengan perintah "ping"
Sebagai seorang
analis keamanan, penting untuk memahami ICMP. Misalnya, dalam paket echo request ICMP, orang seharusnya tidak mengharapkan untuk melihat muatan data yang
besar didalam sebuah paket echo request. echo reply juga harus dipasangkan dengan echo request (satu request akan dibalas dengan 1 reply). Jika Anda
melihat banyak echo request ICMP dan membalas paket dengan muatan besar,
atau jika Anda melihat ketidakseimbangan dalam echo request dengan jumlah echo reply, Anda harus menduga bahwa sesuatu yang mencurigakan mungkin
terjadi. Seorang penyerang mungkin melakukan tunneling data menggunakan ICMP.
Tunneling ICMP sendiri dibolehkan berdasarkan RFC 792, yang mendokumentasikan aturan
IETF yang mengatur paket ICMP, yang membolehkan untuk menambahkan atau merubah jumlah variable data pada setiap tipe 8 (echo request), atau tipe 0 (echo reply) paket ICMP.
Struktur ICMP
Hasil capture packet ICMP
Selain echo request dan echo reply, ICMP memiliki beberapa jenis pesan lainnya termasuk destination unreachable, redirect, waktu terlampaui (time exceeded), dan
sebagainya.
Ada dua alasan
mengapa ICMP memberikan status destination unreachable. Paling umum, adalah alamat yang digunakan sebagai tujuan tidak ada atau kadang karena router tidak memiliki rute ke
tujuan.
Pesan destination unreachable mencakup empat tipe dasar: network-unreachable, host-unreachable, protocol-unreachable, and port-unreachable.
- Network-unreachable : biasanya berarti bahwa kegagalan telah terjadi dalam perutean atau pengalamatan paket.
- Host-unreachable : biasanya menunjukkan bahwa paket telah dirutekan dengan benar ke jaringan tujuan, tetapi tujuan tidak aktif pada jaringan tsb.
- Protocol-unreachable : umumnya berarti bahwa tujuan tidak mendukung protokol lapisan transport yang ditentukan dalam paket.
- Port-unreachable : menyiratkan bahwa port tujuan TCP atau UDP yang ditentukan tidak merespon.
ICMP redirect dikirim oleh router ke host pengirim untuk menstimulasi perutean yang lebih
efisien jika router lain dengan jalur yang lebih baik ada di subnet lokal.
Router masih meneruskan paket asli ke tujuan.
ICMP time exceed dikirim oleh router jika kolom TTL paket IP (IP Header) telah mencapai nol. TTL mencegah paket terus-menerus beredar internetwork jika
terjadi routing loop. Maka router kemudian membuang paket tsb.
ICMP menggunakan
nomor protokol IP 1. Pesan ICMP diidentifikasi oleh kolom type pada IP header. Banyak dari
jenis ICMP menggunakan nomor kode yang berbeda untuk menunjukkan kondisi yang
berbeda. Tabel di bawah ini menunjukkan beberapa pesan ICMP umum.
Type
|
Name
|
Code
|
0
|
Echo Reply
|
0
|
3
|
Destination
Unreachable
|
0 =
Network Unreachable, 1 = Host Unreachable, 2 = Protocol Unreachable, 3 = Port
Unreachable, 4 = Fragmentation needed and Don't Fragment was set, etc.
|
5
|
Redirect
|
0 =
Redirect for the Network, 1 = Redirect for the Host, etc.
|
8
|
Echo
Request
|
0
|
11
|
Time
Exceeded
|
0 = Time
to Live exceeded, 1 = Fragment reassembly time exceeded
|
PING FLOOD (ICMP FLOOD)
Ping Flood, juga dikenal sebagai ICMP Flood, adalah serangan Denial of Service (DoS) umum di mana seorang penyerang membanjiri korbannya dengan cara mengirim sejumlah besar paket echo request ICMP, atau dikenal sebagai ping.
Serangan tsb membanjiri jaringan korban dengan paket-paket echo request, mengetahui bahwa jaringan akan merespon dengan jumlah paket balasan yang sama. Metode tambahan untuk menyerang target dengan ICMP request termasuk dengan penggunaan alat atau tools khusus, seperti hipping dan scapy.
Tools tsb terus menerus mengirimkan paket request dalam ukuran besar dan jumlah yang banyak sampai akhirnya memakan bandwidth dan resource yang banyak sehingga korban mengalami Denial of service.
Melancarkan ping flood tergantung pada penyerang apakah mengetahui alamat IP dari target mereka atau tidak. Serangan dapat dibagi menjadi tiga kategori, berdasarkan pada target dan bagaimana alamat IP-nya diketahui.
- Ping flood lokal yang tertarget, menargetkan satu komputer di jaringan lokal. Seorang penyerang harus memiliki akses fisik ke komputer untuk menemukan alamat IP-nya. Serangan yang berhasil akan mengakibatkan komputer target menjadi down.
- Ping flood router, target ping flood adalah sebuah router untuk mengganggu komunikasi antar komputer di jaringan. Hal ini bergantung pada penyerang mengetahui alamat IP internal dari router lokal. Serangan yang berhasil akan menghasilkan semua komputer yang terhubung ke router menjadi down.
- Blind ping flood, melibatkan penggunaan program eksternal untuk menemukan alamat IP komputer target atau router sebelum melakukan serangan.
Ada sejumlah perintah ping yang dapat digunakan untuk memfasilitasi serangan, termasuk:
- Perintah –n, yang digunakan untuk menentukan berapa kali permintaan dikirim.
- Perintah –l, yang digunakan untuk menentukan jumlah data yang dikirim dengan setiap paket.
- Perintah –t, yang digunakan untuk melanjutkan ping hingga waktu host habis.
Sekian dari saya tentang analisa dan celah dari Internet Control Message Protocol (ICMP)
Terima Kasih
Terima Kasih
Referensi :
Cisco Cisco Cybersecurity Fundamentals (SECFND)
RFC 792
Imperva Incapsula
Imperva Incapsula
No comments:
Post a Comment