Skip to content Skip to navigation Skip to footer

Что такое ICMP (Internet Control Message Protocol)

Контактные данные 

Что такое протокол управляющих сообщений (ICMP)?

Протокол управляющих сообщений (ICMP) — это протокол, используемый устройствами в сети для передачи данных. Согласно этому определению ICMP, одним из основных способов его использования является установление того, поступают ли данные в место назначения в нужное время. Это делает ICMP важным аспектом процесса отчетности об ошибках и тестирования, который позволяет увидеть, насколько хорошо сеть передает данные. Однако его также можно использовать для выполнения распределенных атак типа «отказ в обслуживании» (DDoS).

Способ работы ICMP при сетевом взаимодействии аналогичен способу общения между строителем дома и магазином товаров для дома. Магазин отправляет болты, напольное покрытие, кровельные материалы, изоляцию и многое другое при условии, что каждый компонент прибывает в правильном порядке. 

Например, когда строитель начинает строить стену, он заказывает 28 досок 2 x 4, 10 фунтов гвоздей и дверь. Сначала ему нужно получить гвозди, затем — доски 2 x 4, а в самом конце — дверь. Магазин товаров для дома отправляет их в таком порядке, но дверь доставляют первой. Строитель не сможет работать таким образом, потому что нельзя установить дверь, не построив стены. Поэтому строитель просит сотрудников магазина отправить гвозди и доски 2 x 4 еще раз. Они отправляют товары еще раз, дав водителю указание выбрать другой маршрут.

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

Кроме того, он не имеет собственного уровня в модели стандарта OSI, которая описывает семь уровней, участвующих в передаче данных по сети. Понимание принципа работы ICMP поможет вам узнать, почему это такое ценное средство, но также важно понимать, как ICMP может использоваться в DDoS-атаках, которые могут угрожать организации.

Для чего используется ICMP?

Самое главное в применении ICMP — отправка сообщений об ошибках. При условии, что два устройства подключены через Интернет, ICMP может использоваться для создания ошибок, которые могут передаваться с принимающего устройства на отправляющее устройство, если некоторые данные не поступают должным образом. Например, очень большие пакеты данных не могут использоваться для управления маршрутизатором. В этом случае маршрутизатор отклонит пакет данных и передаст сообщение ICMP отправителю, информируя его о проблеме.

Еще одно распространенное использование ICMP — это диагностика для оценки производительности сети. Для трассировки и проверки связи используется ICMP. Трассировка и проверка связи — это сообщения, отправляемые о том, были ли данные успешно переданы. При использовании функции трассировки в отчете отображаются устройства, через которые прошел пакет данных, чтобы добраться до места назначения. Сюда относятся физические маршрутизаторы, обрабатывающие данные. 

Трассировка также показывает, сколько времени потребовалось на передачу данных с одного устройства на другое. Каждый раз, когда данные перемещаются между маршрутизаторами, этот процесс называется «хоп». Информация, обнаруженная трассировкой, может быть использована для определения того, какие устройства вдоль маршрута вызывают задержки.

Проверка связи похожа на процесс трассировки, но она проще. Она показывает, сколько времени требуется для передачи данных между двумя точками. ICMP облегчает проверку связи, поскольку в процессе нее используется запрос эхо-запрос ICMP и эхо-ответ.

ICMP также используется для снижения производительности сети. Это делается с использованием ICMP-флуда, удаленной сетевой атаки и атаки Ping of death, которые перегружают устройство в сети и препятствуют нормальной работе.

Как работает ICMP?

ICMP отличается от IP-протокола версии 6 или IPv6 тем, что он не связан с протоколом управления передачей данных (TCP) или протоколом пользовательских данных (UDP). Следовательно, перед отправкой сообщения ICMP не требуется подключать одно устройство к другому. 

Например, в TCP два устройства, которые обмениваются данными, сначала участвуют в квитировании, для которого требуется несколько шагов. После завершения квитирования данные могут быть переданы от отправителя получателю. Эту информацию можно просматривать с помощью такого инструмента, как tcpdump. 

ICMP отличается от других сетевых протоколов. Он не формирует подключение. Сообщение просто отправляется. Кроме того, в отличие от TCP и UDP, которые управляют портами, на которые отправляется информация, в сообщении ICMP не содержится ничего, что могло бы направлять его на определенный порт устройства, который будет его получать.

Как ICMP используется в DDoS-атаках?

В DDoS-атаках ICMP обычно используется несколькими различными способами: посредством ICMP-флуда, атаки Ping of death и удаленной сетевой атаки.

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

Атака Ping of death подразумевает отправку злоумышленником черезчур объемного запроса на проверку связи в устройство, которое не может обрабатывать запросы такого размера. Машина может выйти из строя или зависнуть. Пакет данных фрагментируется, когда он направляется к цели, но в процессе сборки он собирается обратно. Когда он достигает цели, происходит переполнение буфера, что приводит к неисправности устройства. Атаки Ping of death представляют больше опасности для более старого оборудования в сети.

При удаленной сетевой атаке злоумышленник передает пакет ICMP с поддельным IP-адресом. Когда оборудование в сети отвечает, каждый ответ отправляется на поддельный IP-адрес, а целевой объект заполняется большим количеством пакетов ICMP. Подобная атака, как правило, является проблемой только для более старого оборудования.

Как Fortinet может помочь

Средства защиты FortiDDoS от Fortinet обеспечивают защиту сети от неправильного использования ICMP при DDoS-атаках. FortiDDoS проверяет поведение устройств, а необычные действия с сообщениями ICMP помечаются флажками, чтобы атака могла быть остановлена. Решение FortiDDoS оснащено панелью наблюдения, средствами защиты, глобальными параметрами и удобным графическим интерфейсом пользователя, что делает его более удобным в использовании. 

Чтобы сэкономить время и усилия ИТ-отдела, FortiDDoS сводит количество обнаруженных ложных срабатываний к минимуму. Оно также может одновременно исследовать сотни тысяч различных аспектов данных, что делает его более комплексным средством защиты от DDoS-атак. Кроме того, с помощью FortiDDoS можно создавать подробные отчеты и графики, представляющие активность сети.

Ответы на вопросы

Для чего используется ICMP?

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

Совпадают ли функции ICMP и проверки связи?

ICMP и проверка связи — это две разные вещи, которые взаимосвязаны. ICMP — это протокол, управляющий передачей сообщений между устройствами. Эхо-запросы и эхо-ответы, отправляемые протоколом ICMP, обычно называются проверкой связи. Таким образом, несмотря на то, что проверка связи производится с использованием ICMP, она не является этим протоколом.

Как работает проверка связи ICMP?

Процесс проверки связи ICMP — это способ узнать, могут ли два устройства в сети подключиться друг к другу. Он также может использоваться для проверки потери пакетов и задержки в сети. Команда проверки связи передает эхо-запрос ICMP на сетевое устройство. Затем это устройство сразу же отвечает ICMP-эхом. Затем эти данные могут быть проанализированы программным обеспечением для определения задержек и качества передачи данных.