Назад | Перейти на главную страницу

iptables | Типы ICMP: какие (потенциально) опасны?

Я читал, что определенные типы пакетов ICMP могут быть вредными. Вопросы:

[¹] Типы, о которых я читал: перенаправление (5), отметка времени (13) и запрос маски адреса (17). Пожалуйста, не учитывайте только это в своем ответе.

Больше информации
Это веб-сервер на VPS с сервером Ubuntu.

Цель
Я пытаюсь сделать систему более безопасной, снизить риск некоторых D / DoS-атак и общих злоупотреблений.

Связанный
Безопасен ли мой брандмауэр Linux?
Почему бы не заблокировать ICMP?

Похоже, вы становитесь жертвой мантры «ICMP IS EVIL».
ICMP - это НЕ зло, просто неправильно понятое. Печальная реальность состоит в том, что многие администраторы боятся того, чего не понимают, и поэтому изгоняют ICMP из своей сетевой вселенной, избегая его на уровне пограничного брандмауэра и не позволяя ему занять свое правильное и надлежащее место на благо своей сети.

Сказав это, позвольте мне ответить на ваши вопросы:


Какие типы сообщений ICMP могут быть опасными и почему?
Практически все из них.

  • Echo пакеты могут использоваться для нарушения работы служб (особенно для систем с плохо реализованными IP-стеками); При законном использовании они могут предоставить информацию о вашей сети.

  • Destination Unreachable могут быть злонамеренно введены; При законном использовании они могут предоставить информацию о * вашем брандмауэре / структуре маршрутизации или о конкретной машине в вашей сети.

  • Source Quench могут быть злонамеренно отправлены, чтобы заставить ваш сервер сидеть в углу и сосать большой палец.

  • redirect можно использовать, как следует из названия.

  • router advertisement и router solicitation запросы могут использоваться для создания "интересных" топологий трафика (и облегчения атак MITM), если ваши хосты действительно обращают на них внимание.

  • traceroute является разработан для предоставления информации о топологии сети.

…и т.д...

В имена различных сообщений ICMP довольно подробно описывают, на что они способны. Проявите свою врожденную паранойю, придумывая кошмарные сценарии :-)


Как мне создать набор правил iptables для обработки каждого типа пакетов ICMP?
Отсутствие веской причины возиться с трафиком ICMP, оставь это, черт возьми!
Возбуждение с трафиком ICMP препятствует надлежащему использованию сообщений ICMP (управление трафиком и устранение неполадок) - это скорее расстраивает, чем помогает.


Следует ли мне ограничивать скорость любого из этих типов пакетов ICMP? И как?
Это может быть единственное законное исключение из философии «оставь это, черт возьми» - сообщения ICMP, ограничивающие скорость или полосу пропускания, могут быть полезны, чтобы помочь вам избежать незаконного использования сообщений ICMP. FreeBSD поставляется с Пропускная способность ICMP / ограничение скорости по умолчанию, и я предполагаю, что Linux имеет аналогичные функции.

Ограничение скорости / полосы пропускания намного предпочтительнее общего правила брандмауэра, отбрасывающего трафик ICMP: оно по-прежнему позволяет протоколу ICMP выполнять свои задачи в сети, а также частично предотвращает попытки злоупотребления вашим сервером.


Вышеизложенное представляет собой мнение одного системного администратора, который, в свою очередь, FREAKIN НАСТАЛО ИСПОЛЬЗОВАТЬ СЕТИ ДЛЯ УСТРАНЕНИЯ НЕИСПРАВНОСТЕЙ, ГДЕ ВЕСЬ ICMP-ТРАФИК ПРОДАЕТСЯ - Это раздражает, расстраивает, и на поиск и устранение проблем уходит больше времени. :-)

Дело не столько в типах, сколько в возможных векторах атаки. Был довольно эффективный вектор DoS-атаки с использованием Блокировка источника ICMP пакет в стеках TCP / IP многих распространенных интернет-хостов годами - и все же это не означает, что сообщения ICMP с подавлением источника необходимо фильтровать в целом. Как и во всем, что связано с сетевой безопасностью, оцените преимущества определенного протокола или службы по сравнению с возможной поверхностью атаки на основе ваших личный приоритеты. Если в вашей сети есть хосты, которые подвержены вектору атаки через ICMP, вы не можете их исправить и вам не нужны определенные функции, вам, безусловно, следует рассмотреть возможность их фильтрации.

Для моих администрируемых сетей v4 я счел безопасным и удобным разрешить типы ICMP 0, 8 (эхо-запрос / ответ), 11 (TTL истек), 3 (пункт назначения недоступен) и 12 (ошибка IP-заголовка) и отбросить все остальные.