Блокирование ответов ping в системе может помешать хакерам реализовать атаку ICMP flood dos.
Таким образом, это может быть наиболее успешная практика для безопасности системы, но большинство систем мониторинга онлайн используют ping для своего функционала.
Отключить Ping с помощью iptables
Вы можете просто блокировать ответы icmp непосредственно из брандмауэра в любых системах Linux.
# iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
Блокировать ping параметрами ядра
Мы можем блокировать ответы ping из системы, напрямую обновляя параметры ядра.
В этом случае мы можем блокировать ответы временно или постоянно, как показано ниже.
Блокировать ping временно
Вы можете временно заблокировать ping используя следующую команду:
Когда я делаю netstat -a на своем копмьютере Windows, я получаю список портов с одним из четырех состояний:
- LISTENING
- CLOSE_WAIT
- TIME_WAIT
- ESTABLISHED
Что CLOSE_WAIT и TIME_WAIT значит / указывает?
Из-за того, как работает TCP/IP, соединения не могут быть закрыты сразу. Пакеты могут выйти из строя или быть переданы повторно после того, как соединение было закрыто. CLOSE_WAIT указывает, что удаленная конечная точка (другая сторона соединения) закрыла соединение. TIME_WAIT указывает, что локальная конечная точка (эта сторона) закрыла соединение. Соединение поддерживается таким образом, что любые задержанные пакеты могут быть сопоставлены с соединением и обработаны соответствующим образом. Соединения будут удалены, когда они тайм-аут в течение четырех минут. Видеть http://en.wikipedia.org/wiki/Transmission_Control_Protocol для более подробной информации.
На персональной сети (LAN) можно просто присвоить IP-адрес. При выборе того же IP-адреса, что и существующий клиент, возникают проблемы. Есть такие компании, как IANA и ICANN, которые отвечают за объем IP-адресов и продают их. Но что мешает вам просто захватить случайный IP-адрес? Это построено на доверии? Что делать, если кто-то захватит IP-адрес и возникнет конфликт. Есть ли способ отслеживать этот IP-адрес для местоположения сервера, используя его?
Являются ли компании, которые фактически поддерживают физические интернет-кабели, проверяют, используют ли клиенты подключения купленные блоки IP-адресов?
Нет ничего, что помешало бы вам прикрепить к интернету ящик, настроенный с чужого IP-адреса. Тем не менее, это не обязательно вызовет какие-либо проблемы для кого-либо еще, кроме вас самих.
Если вы украли чужой IP-адрес за пределами подсети, к которой вы физически подключены, единственное, чего вы достигнете, это не возможность получать какой-либо трафик, так как любой маршрутизатор, ведя себя правильно, будет направлять трафик к реальному владельцу этого IP-адреса. Возможно, вы сможете рекламировать ложные маршруты для любого пограничного маршрутизатора вверх по течению от вас в надежде на то, что они будут распространяться дальше в надежде на то, что трафик будет перенаправлен вам на основе вашего похищенного IP-адреса, но любой незначительно компетентный провайдер/восходящий провайдер никогда не примет маршруты от своих не-корпоративных потребителей. Что касается корпоративных клиентов/других интернет-провайдеров, они связаны определенными правилами о том, какие маршруты они могут рекламировать и использовать с их транзитным провайдером или партнером, которые контролируются 24/7 сетевыми операциями и группами управления. Большинство из них также имеют правила о том, какие маршруты они будут принимать как действительные в зависимости от того, кто их рекламировал. Короче говоря, кража чьего-то IP-адреса за пределами подсети, к которой вы подключены, ничего не дает, если Вы также не можете манипулировать вышестоящими таблицами маршрутизации.
Кроме того, если бы вы украли IP-адрес кого-то в вашей же подсети, вы нарушите трафик как того, кто им владеет, так и самого себя. С любым управляемым коммутатором или маршрутизатором это вызовет сигналы тревоги, поскольку есть дублирующий адрес в сети и, вероятно, приведет к тому, что ваше соединение будет заблокировано каким-то образом.
Существует ли IP-адрес, который приведет к тому, что любой отправленный пакет будет проигнорирован (blackholed)?
Я знаю, что всегда могу настроить маршрутизатор с IP-адресом, а затем просто заставить его игнорировать все пакеты, отправленные ему, но существует ли такая вещь, чтобы спасти меня от этой проблемы?
Если в сети нет устройств с IP-адресом 192.168.0.10, то этот IP-адрес-своего рода черная дыра, и он будет «отбрасывать» весь трафик к нему, просто потому, что он не существует.
Протоколы, которые отслеживают состояние соединения (TCP), могут обнаружить отсутствующий хост назначения. Это не произойдет с UDP, и пакеты просто умрут, в то время как отправляющий хост не будет проинформирован об этом.
Вы можете настроить черную дыру с помощью брандмауэра, установив ее, чтобы тихо отбрасывать пакеты, (а не отклонять) от определенных (или разных) адресов.
Нет такого сетевого стандартного адреса, который будет делать черную дыру для вас в TCP/IP версии 4
Таким образом, у вас есть два варианта:
IP-адрес, который не был назначен ни одному хосту;
Хост с брандмауэром, который тихо отбрасывает пакеты или его вариации, например, с помощью netcat .
nc -vv -l 25 > /dev/null будет прослушивать входящие соединения на TCP-порт 25 и передать результаты /dev/null. Больше примеров здесь.
Вся подсеть также может быть черной дырой (нулевой маршрут).