Слайд 2Межсетевой протокол управляющих сообщений ICMP
(Internet Control Message Protocol) играет роль
транспортного
протокола для управляющей и
диагностической информации, которой обмениваются
между собой IP-, TCP- или UDP-модули скрытно от
приложений.
Слайд 3 Место ICMP при пересылке данных
Прикладная программа
TCP
UDP
ICMP
IP
ICMP
Уровень соединения
Слайд 4 Заголовок ICMP-пакета
Тип
Код
Контрольная сумма
РАЗНОЕ
Тело пакета
0
7
15
31
Слайд 5 Тип
Однобайтовое поле, содержащее идентификатор типа
ICMP-пакета. Значение этого поля определяет формат
всех остальных данных в датаграмме. Возможные
значения этого поля:
0 Ответ на запрос эха
3 Адресат недоступен
4 Подавление источника
5 Перенаправление
8 Запрос эха
11 Исчерпано время жизни
12 Ошибка в параметре
13 Запрос временной метки
14 Ответ на запрос временной метки
Слайд 6 Код
Однобайтовое поле, значение которого конкретизирует
назначение ICMP-пакета определенного типа.
Например для
Тип 5 — Перенаправление
Характерны следующие коды:
Код 0 — Перенаправление пакетов в сеть
Код 1 — Перенаправление пакетов к узлу
Код 2 — Перенаправление для каждого типа
обслуживания (TOS)
Код 3 — Перенаправление пакета к узлу для каждого
типа обслуживания
Слайд 7 Контрольная сумма
16-битовое поле, содержащее контрольную сумму,
подсчитанную для всего ICMP-пакета целиком.
Эта
контрольная сумма вычисляется суммированием всех
полей, начиная с поля Тип. При вычислении
контрольной суммы значение поля Контрольная сумма
полагается равным 0.
Слайд 8 РАЗНОЕ
Четырехбайтовое поле, предназначенное для хранения
разнообразной информации, специфичной для ICMP-
пакетов
определенного типа (например, номера в
TCP-последовательности, IP-адреса и т.п.)
Слайд 9 Тело пакета
Здесь содержится заголовок IP-пакета, явившегося
причиной данного ICMP-пакета, и первые
8 байт данных
тела этого IP-пакета. Если ICMP-пакет есть результат
проявления аномалии в TCP- или UDP-взаимодействии,
то эти 8 байт будут представлять собой первые восемь
байтов, соответственно, TCP- или UDP-заголовка, что
дает возможность определить, в частности, номера портов
(а, следовательно, и использующие их прикладные
программы). Для ICMP-пакетов некоторых типов
Тело пакета может содержать не начало IP-пакета,
а тестовые данные.
Слайд 10ICMP так же используется для проведения Атак.
Цель: загрузить сервер так, чтобы
он не мог отвечать.
Нужно послать как можно больше ответов Echo Reply на
«жертву».
Слайд 11 Типы ICMP-пакетов
Рассмотрим 6 типов ICMP-пакетов, реализованных во
всех клонах и версиях
ОС UNIX.
Адресат недоступен
ICMP-пакет этого типа генерируется в следующих случаях:
сеть, узел сети, протокол или порт являются недоступными;
в ходе продвижения по сети IP-пакета потребовалась его фрагментация, однако в заголовке пакета установлен флаг DF, запрещающий делать это;
предписываемый маршрут, указанный в поле дополнительных данных IP-пакета, оказался недействительным (несуществующим или неактивным).
Слайд 12Пример ICMP «Адресат недоступен» или «Tipe: 3».
Параметр «Code: 1» указывает на недостижимость
узла,
к которому мы подключаемся.
Слайд 13
Подавление источника
Механизм контроля потока данных гарантирует, что буфер
приема не переполнится (V
передачи < V приема).
Маршрутизаторы работают на уровне IP, и в их входящих
очередях могут возникнуть пробки.
Пока идут ICMP-пакеты, передатчик снижает скорость.
При исчезновении ICMP-пакетов передатчик начинает
увеличивать скорость.
Сообщение типа 4 имеет один код – 0.
Слайд 14
Перенаправление
Это сообщение посылается в том случае, когда
маршрутизатор видит, что компьютер отправляет
пакет
некоторой сети назначения нерациональным образом, то
есть не тому маршрутизатору сети, от которого
начинается более короткий маршрут к сети назначения.
Механизм перенаправления протокола ICMP позволяет
компьютерам содержать в конфигурационном файле
только IP-адреса его локальных маршрутизаторов.
Слайд 15
Перенаправление (продолжение)
С помощью сообщений о перенаправлении
маршрутизаторы будут сообщать компьютеру всю
необходимую
ему информацию о том, какому
маршрутизатору следует отправлять пакеты для той или
иной сети назначения. То есть маршрутизаторы передадут
компьютеру нужную ему часть их таблиц маршрутизации.
Слайд 16Случай, когда маршрутизатор перенаправляет пакеты по
другому маршруту (маршрут 2).
Слайд 17
ЭХО
Для реализации эха IP-модуль на узле A отправляет
узлу B ICMP-пакет типа
"запрос эха", содержащий в своем
теле вместо IP-заголовка тестовые данные произвольной
длины.
Узел B, получив такой запрос, возвращает узлу A
ICMP-пакет типа "ответ на запрос эха", содержащий те же
данные, что и в запросе.
Слайд 18
ЭХО (продолжение)
Эхо-посылки используются для проверки достижимости
удаленных узлов сети и измерения времени
прохождения
данных.
Слайд 19
Исчерпано время жизни
ICMP-пакет данного типа посылается источнику
IP-пакета, IP-пакет должен быть удален
по одной из двух
причин:
исчерпано время жизни IP-пакета;
исчерпано допустимое время на сборку фрагментированного IP-пакета.
Слайд 20Пример:
«Tipe: 11» превышение временного интервала
«Code: 0» время жизни пакета (TTL) истекло при
транспортировке
Слайд 21
Неверный параметр
С помощью ICMP-пакета данного типа источник IP-
пакета информируется о том, что
данный пакет
удален вследствие наличия ошибки в каком-либо из
полей его заголовка.
Слайд 22Рассмотрим пример ICMP-пакета.
Рис.1
Слайд 23
Перехват осуществлялся программой Wireshark.
Домашняя локальная сеть анализировалась на предмет
наличия ICMP-пакетов. Был
обнаружен ICMP-пакет
(рис. 1). Из содержания пакета видно, что при
попытке подключения к хосту 91.211.117.146, мы получили
ICMP-пакет с параметрами (Tipe: 3 Code: 3 ) .
Tipe: 3 – адресат недоступен
Code: 3 – порт недостижим