iptables | Jenis ICMP: yang mana (berpotensi) berbahaya?

8

Saya membaca bahwa jenis paket ICMP tertentu dapat berbahaya. Pertanyaan:

  • Yang mana dan mengapa?
  • Bagaimana saya harus mengatur tata aturan iptables untuk menangani setiap jenis paket ICMP?
  • Haruskah saya memberi peringkat-batas pada semua jenis paket ICMP ini? Dan bagaimana?

[¹] Jenis yang saya baca tentang: Redirect (5), Timestamp (13) dan Address Mask Request (17). Tolong jangan hanya mempertimbangkan ini pada jawaban Anda.

Info lebih lanjut
Ini adalah server web pada VPS dengan Ubuntu Server.

Tujuan
saya mencoba membuat sistem lebih aman, mengurangi risiko beberapa serangan D / DoS dan penyalahgunaan umum.

Terkait
Apakah firewall linux saya aman?
Mengapa tidak memblokir ICMP?

ML--
sumber

Jawaban:

10

Sepertinya Anda menjadi korban mantra "ICMP IS EVIL".
ICMP BUKAN jahat, hanya disalahpahami. Kenyataan yang menyedihkan adalah bahwa banyak admin takut apa yang tidak mereka pahami, dan karena itu mereka mengeluarkan ICMP dari jagat jaringan mereka, menyembunyikannya di tingkat firewall tepi dan mencegahnya mengambil tempat yang tepat dan tepat untuk kepentingan jaringan mereka.

Karena itu, izinkan saya menjawab pertanyaan Anda:


Jenis pesan ICMP mana yang bisa berbahaya, dan mengapa?
Semuanya cukup banyak.

  • Echopaket dapat digunakan untuk mengganggu layanan (terutama untuk sistem dengan tumpukan IP yang diimplementasikan dengan buruk); Digunakan secara sah mereka dapat memberikan informasi tentang jaringan Anda.

  • Destination Unreachabledapat disuntikkan secara jahat; Digunakan secara sah mereka dapat memberikan informasi tentang * firewall / struktur perutean Anda, atau tentang mesin tertentu di jaringan Anda.

  • Source Quench dapat dikirim dengan jahat untuk membuat server Anda secara efektif duduk di sudut dan mengisap jempolnya.

  • redirect dapat digunakan sesuai namanya.

  • router advertisementdan router solicitationpermintaan dapat digunakan untuk membuat topologi lalu lintas yang "menarik" (dan memfasilitasi serangan MITM) jika host Anda benar-benar memperhatikannya.

  • tracerouteadalah dirancang untuk memberikan informasi jaringan topologi.

... dll ...

Nama - nama berbagai pesan ICMP cukup detail apa yang mampu mereka lakukan. Latih paranoia bawaan Anda dalam memimpikan skenario mimpi buruk :-)


Bagaimana saya harus mengatur tata aturan iptables untuk menangani setiap jenis paket ICMP?
Tidak ada alasan yang baik untuk mengacaukan lalu lintas ICMP, biarkan saja!
Mucking tentang dengan lalu lintas ICMP mencegah penggunaan yang tepat dari pesan ICMP (manajemen lalu lintas dan pemecahan masalah) - itu akan lebih membuat frustrasi daripada membantu.


Haruskah saya memberi peringkat-batas pada semua jenis paket ICMP ini? Dan bagaimana?
Ini mungkin satu-satunya pengecualian yang sah untuk filosofi "biarkan saja sendiri" - pesan ICMP yang membatasi atau bandwidth dapat berguna dalam membantu Anda menghindari penggunaan pesan ICMP yang tidak sah. FreeBSD dikirimkan dengan ICMP Bandwidth / Rate Limiting secara default, dan saya berasumsi Linux memiliki fungsi serupa.

Pembatasan Rate / Bandwidth jauh lebih baik daripada aturan firewall selimut yang menjatuhkan lalu lintas ICMP: Ini masih memungkinkan ICMP untuk melayani tujuannya di jaringan, dan juga mengurangi sebagian upaya untuk menyalahgunakan server Anda.


Hal di atas mewakili pendapat salah seorang sysadmin, yang pada bagiannya adalah FREAKIN 'Lelah MEMILIKI JARINGAN PENYELESAIAN MASALAH DI MANA SEMUA LALU LINTAS ICMP DIJALANKAN - Menjengkelkan, membuat frustrasi, dan membutuhkan waktu lebih lama untuk menemukan dan memperbaiki masalah. :-)

voretaq7
sumber
Tapi .. tapi .. Ping Kematian harus ditakuti, ke tingkat yang tidak rasional! (burukkah aku bisa tahu siapa yang menulis jawaban ini setelah paragraf pertama?)
Shane Madden
Memang, ICMP berguna. Jika saya adalah korban "ICMP itu jahat", saya lebih suka memblokir semua dan tidak membuka pertanyaan ini :) Yang saya inginkan adalah bantuan untuk membuat keputusan. Anda dapat yakin bahwa saya tidak akan memblokir mereka semua :)
ML
@Shane Madden: Akan --state INVALIDmenjatuhkan Ping of Death?
ML--
7
@ ML - Tolong jangan khawatir tentang ping kematian. Tidak ada OS dari milenium ini yang rentan.
Shane Madden
2
@ ML - Satu vektor yang saya khawatirkan adalah Source Quench, dan Anda dapat memblokirnya dengan impunitas relatif (TCP pada akhirnya akan mencari tahu sendiri). Ping & Traceroute jelas merupakan kebocoran informasi, tetapi dalam praktiknya saya tidak berpikir itu menambah keamanan nyata bagi lingkungan Anda. Jarak tempuh Anda (dan tingkat paranoia yang diperlukan) dapat bervariasi (tergantung pada sensitivitas data / lingkungan Anda).
voretaq7
4

Ini bukan tentang banyak jenis daripada kemungkinan vektor serangan. Ada vektor serangan DoS yang agak efektif menggunakan paket quench sumber ICMP di banyak tumpukan TCP / IP host internet selama bertahun - tahun - namun itu tidak berarti bahwa pesan ICMP sumber-quench perlu disaring secara umum. Seperti halnya segala sesuatu dalam keamanan jaringan, timbang manfaat protokol atau layanan tertentu terhadap kemungkinan permukaan serangan berdasarkan prioritas pribadi Anda . Jika Anda memiliki host di jaringan Anda yang rentan terhadap vektor serangan melalui ICMP, Anda tidak dapat memperbaikinya dan Anda tidak memerlukan fitur spesifik, Anda tentu harus mempertimbangkan untuk memfilternya.

Untuk jaringan v4 yang saya kelola, saya merasa aman dan nyaman untuk mengizinkan ICMP tipe 0, 8 (permintaan / balasan gema), 11 (TTL kedaluwarsa), 3 (tujuan tidak terjangkau) dan 12 (kesalahan header IP) dan untuk menghapus semua sisanya.

the-wabbit
sumber