Семейство протоколов TCP/IP. Протокол ICMP. Сообщения Request/Reply.


Добавил:DMT
Дата создания:21 июня 2008, 13:02
Дата обновления:21 июня 2008, 13:03
Просмотров:15970 последний сегодня, 15:19
Комментариев: 0

Протокол ICMP. Сообщения Request/Reply

Сообщения типа Echo (эхо) - принадлежат к парным сообщениям ICMP. Сообщения этого типа используются для того, чтобы определить возможность достижения и статус компонентов сети Internet. Любой компонент сети, который получает адресованное ему сообщение Echo Request, должен сформировать ответное сообщение Echo Reply в адрес источника полученного сообщения.

Наиболее простые утилиты Ping посылают одно сообщение Echo Request в адрес назначения и указывают на получение ответного сообщения Echo Reply. Более сложные утилиты формируют несколько последовательных сообщений Echo Request и измеряют значение интервала времени, который отделяет момент передачи этих сообщений от момента приема соответствующих ответных сообщений.

Сообщения Echo Request и Echo Reply имеют одинаковый формат и отличаются только содержимым поля TYPE:

•  Значение поля TYPE = 0 соответствуют сообщению Echo Reply;

•  Значение поля TYPE = 8 соответствуют сообщению Echo Request.

Таблица 2.5.1.

0

7

15

31

TYPE=0/8

CODE=0

CHECKSUM

IDENTIFIER

SEQUENCE NUMBER

DATA

В поле CODE сообщений Echo Request/Reply размещается значение 0. В полях IDENTIFIER и SEQUENCE NUMBER помещается кодировка, которая позволяет станции назначения установить соответствие между переданными и полученными сообщениями.

Как было выше отмечено, сообщения Echo Request/Reply используются для того, чтобы проверить правильность функционирования сети, однако, эти же сообщения могут быть использованы для того, чтобы нарушить функционирование сети. Для этого, чтобы нарушить функционирование сети в данном случае используется специальный тип спланированных действий, который называется атакой.

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

Наиболее часто в сети Internet применяются атаки, которые направлены на инициирование перегрузки каналов доступа к данной сети и её активных компонентов потоками служебных сообщений. Поскольку в этом случае клиенты не могут получить доступ к ресурсам сети, такой класс атак называется DOS – Denial of Service(подавление услуги).

При проведении наиболее распространенной атаки класса DOS smurf-attack используется сообщения Echo Request/Reply.

На рисунке представлена схема организация атаки типа smurf. В организации этой атаки используются три компонента:

•  Нападающий хост (Attacker);

•  Посредник (Mediator);

•  Хост, который был выбран объектом для нападения (Victim).

Рис. 2.5.1.

В момент начала атаки атакующий хост формирует поток фальсифицированных сообщений типа Echo Request. Сообщения Echo Request, которые составляют этот поток, должны быть сформированы следующим образом:

•  Адрес назначения – сетевой адрес типа directed broadcast для сети посредника;

•  Адрес источника - сетевой адрес жертвы.

После того, как шлюз посредника получает сообщение, которое адресовано всем хостам подключенной к нему сети, он осуществляет непосредственную доставку данного сообщения, используя при этом broadcast–адрес канального уровня. Таким образом, сообщение Echo Request получают все хосты данной сети. В соответствии с правилами формирования сообщений протокола ICMP, каждый из этих хостов должен будет сформировать ответное сообщение Echo Reply и направить его в адрес предполагаемого источника сообщения. Число этих ответных сообщений будет соответствовать числу активных на данный момент элементов в сети посредника. В данном случае сеть посредника играет роль умножителя, который увеличивает мощность информационного потока, который направлен на жертву нападения.

Для предотвращения атак с использованием ICMP Echo Request/Reply могут быть использованы самые различные способы.

В качестве одного из таких эффективных мероприятий можно использовать запрещение приема и распространения сообщений типа directed broadcast. Использование данной меры рекомендовано документом RFC 1122, в соответствии с которым должны строиться правила функционирования маршрутизаторов в сети IP. В частности, в этом документе указано, что сообщения ICMP Echo Request, которые направлены в адрес типа directed broadcast, могут быть уничтожены без формирования какого либо диагностического сообщения.

Радикальным способом противодействия атакам типа smurf является запрещение трафика ICMP Echo Request/Reply на входных интерфейсах. Однако данная мера лишает многих пользователей возможности использования эффективных инструментов, которые широко используются для определения статуса данного компонента сети – утилит ping, tracert и т.д.

Сообщения Timestamp Request/Reply предназначаются для обеспечения взаимной синхронизации счетчиков времени у различных компонентов сети Internet. Поскольку компоненты сети Internet не имеют общего управления, значения индивидуальных датчиков времени у каждого из компонентов могут существенно отличаться. Для того, чтобы обеспечить взаимную синхронизацию этих датчиков могут быть использованы сообщения Timestamp Request/Reply.

Сообщения Echo Request и Echo Reply имеют одинаковый формат и отличаются только содержимым поля TYPE:

•  Значение поля TYPE = 14 соответствуют сообщению Timestamp Reply;

•  Значение поля TYPE = 13 соответствуют сообщению Timestamp Request.

Таблица 2.5.2.

0

7

15

31

TYPE=13/14

CODE=0

CHECKSUM

IDENTIFIER

SEQUENCE NUMBER

Originate Timestamp

Receive Timestamp

Transmit Timestamp

В полях IDENTIFIER и SEQUENCE NUMBER помещаются кодировки, которые позволяют станции назначения установить соответствие между переданными и полученными сообщениями.

В поле Originate Timestamp сообщения Timestamp Reply отправитель помещает значение своего датчика времени в момент отправки этого сообщения. В момент получения этого сообщения станция назначения помещает в поле Receive Timestamp значение собственного датчика времени. Значения этих полей передающая станция переписывает в соответствующие поля ответного сообщения Timestamp Reply. Поле Transmit Timestamp этого сообщения формируется в момент отправки этого сообщения в адрес отправителя исходного запроса. Значения этого поля в данном случае будет соответствовать значению счетчика времени Timestamp Request–сервера в момент отправки сообщения.

Получив сообщение Timestamp Request, отправитель запроса может определить величину задержки распространения между ним и сервером и, таким образом, сформировать поправку к своему датчику времени.

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

Сообщения Address Mask Request/Reply предназначены для обеспечения возможности контроля установленного значения маски для внеклассовой сети.

В момент включения хост должен передать несколько сообщений типа Address Mask Request. До получения ответа на эти сообщения хост должен считать, что маска сети, к которой он подключен, соответствует классу этой сети. При получении первого ответа Address Mask Reply хост должен установить первое принятое значение в качестве маски данной сети.

Таблица 2.5.3.

0

7

15

31

TYPE=17/18

CODE=0

CHECKSUM

IDENTIFIER

SEQUENCE NUMBER

ADDRESS MASK

Сообщения Echo Request и Echo Reply имеют одинаковый формат и отличаются только содержимым поля TYPE:

•  Значение поля TYPE = 18 соответствуют сообщению Address Mask Reply;

•  Значениие поля TYPE = 17 соответствуют сообщению Address Mask Request.

В поле ADDRESS MASK сообщения Address Mask Reply должна быть размещена маска сети, к которой подключен отправитель сообщения Address Request.

Сообщения Timestamp Request/Reply (синхронизация времени) - принадлежат к парным сообщениям ICMP. Предполагалось, что сообщения данного типа будут использованы для выполнения процедуры определения сетевого адреса.
up