Как может быть использовано нарушителем сообщение icmp redirect

Как может быть использовано нарушителем сообщение icmp redirect

Название работы: Атаки на протокол ICMP и его защита

Предметная область: Информатика, кибернетика и программирование

Описание: Атаки на протокол ICMP и его защита Поскольку протокол ICMP служит для передачи различных управляющих служебных сообщений поэтому всегда был популярной мишенью для атаки. Атака Sping Jolt Атака состоит в посылке нескольких дефрагментированных пакетов ICMP IСМР_ЕСНО больших размеров по частям. Для устранения уязвимости необходимо применить патч icmpfix который зависит от версии Windows NT и установленного пакета обновления. Атака ICMP Request Атака заключается в посылке пакета ICMP Subnet Msk ddress Request по адресу сетевого интерфейса.

Дата добавления: 2013-09-06

Размер файла: 27.5 KB

Работу скачали: 40 чел.

14. Атаки на протокол ICMP и его защита

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

Атака Sping/Jolt

Атака состоит в посылке нескольких дефрагментированных пакетов ICMP (IСМР_ЕСНО) больших размеров по частям. Windows NT, пытаясь собрать пакет, зависает, что приводит к отказу в обслуживании и может привести к нарушению целостности данных. Данная атака применима к Windows NT 4.0 Workstation и Server, Windows NT 3.51 Workstation и Server, Windows 95.

Для устранения уязвимости необходимо применить патч icmp-fix, который зависит от версии Windows NT и установленного пакета обновления.

Атака ICMP Request

Атака заключается в посылке пакета ICMP Subnet Mask Address Request по адресу сетевого интерфейса, сконфигурированного на использование нескольких IP-адресов, принадлежащих одной подсети. В результате Windows NT аварийно завершается с подачей сообщения STOP 0x0000000A (0хА0033000, 0x00000002, 0x00000000, 0хf381329В), где четвертый параметр относится к области памяти модуля Tcpip.sys. Атака применима к Windows NT 4.0 Workstation и Server. Уязвимость была ликвидирована в пакете обновления Windows NT Service Pack 4.

Атака ICMP Redirect

Некоторые хосты Netware, устройства автоматизации на производстве и некоторые старые хосты UNIX при получении сообщения ICMP redirect могут либо прекращать работу, либо сообщать о сбое стека TCP/IP.

Кроме того, посылку ложного пакета ICMP redirect можно использовать для искажения на компьютерах адреса основного маршрутизатора (Default Gateway), что приведет к невозможности обмена этих компьютеров с хостами в других сетях.

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

ICMP Timestamp может сообщить о состоянии часов.

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

Обеспечить защиту на сетевом уровне нам позволяют межсетевые экраны. На данном этапе используется межсетевой экран CheckPoint FireWall-1.

Источник

Атаки, обеспечивающие перехват данных

Ложное сообщение ICMP Redirect

Смысл этой атаки состоит в навязывании атакуемому хосту ложного маршрутизатора.

Предположим, что некий хост локальной сети А отправляет свои пакеты в Интернет через маршрутизатор G1. Однако маршрутизатор G1 может решить, что пакеты в данное место назначения следует отправлять через другой маршрутизатор – через G2. В этом случае он отправляет хосту А сообщение ICMP Redirect, в котором указывает адрес G2. Хост А, получив сообщение ICMP Redirect, начинает отправлять свои пакеты через маршрутизатор G2. В реальной жизни этот механизм может использоваться для балансировки загрузки маршрутизаторов.

Рассмотрим, как сообщение ICMP Redirect может быть использовано злоумышленником для перехвата трафика.

Атакующий, находящийся в одной сети с атакуемым хостом, действует следующим образом. Он отправляет атакуемому хосту А ложное сообщение ICMP Redirect, якобы от имени маршрутизатора локальной сети G. В этом сообщении он указывает свой адрес (X) как адрес нового маршрутизатора, через которого хост А теперь должен отправлять трафик в Интернет.

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

Отметим, что трафик из Интернета в А будет по-прежнему направляться маршрутизатором непосредственно хосту А, минуя злоумышленника. Несмотря на такой «половинчатый» перехват, злоумышленник может просматривать и модифицировать данные, направляемые из А в Интернет. Более того, злоумышленник может вообще не пересылать пакеты в Интернет, а отвечать на них сам, фабрикуя пакеты от имени узла в Интернете.

Как может быть использовано нарушителем сообщение icmp redirect. Смотреть фото Как может быть использовано нарушителем сообщение icmp redirect. Смотреть картинку Как может быть использовано нарушителем сообщение icmp redirect. Картинка про Как может быть использовано нарушителем сообщение icmp redirect. Фото Как может быть использовано нарушителем сообщение icmp redirect

Схема проведения атаки ICMP Redirect

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

Для устранения возможности описываемой атаки необходимо отключить на хосте обработку сообщений Redirect. Это действие выглядит совершенно разумным, особенно для хостов в сетях с единственным шлюзом, и может быть выполнено с помощью брандмауэра.

Вообще говоря, для пользователя атакуемого узла не составит особого труда раскрыть замысел злоумышленника:

1) полученное сообщение Redirect отобразится в виде неожиданно появившейся строки в таблице маршрутизации хоста А, направляющей данные для хоста В через узел Х.

2) Кроме того, утилита traceroute скорее всего покажет дополнительный промежуточный узел на пути к В.

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

Ложное сообщение DHCP

В некоторых случаях навязывание ложного маршрутизатора может быть произведено с помощью протокола DHCP. Фальсификация сообщений протокола DHCP будет успешна, если хост конфигурирует себя через этот протокол. В ответ на запрос DHCPDISCOVER злоумышленник оперативно возвращает хосту подложное сообщение DHCPOFFER, где в числе дополнительных параметров указывает себя в качестве маршрутизатора по умолчанию. Чтобы опередить предложение от легитимного сервера, злоумышленник может рассылать DHCPOFFER непрерывно, чтобы сделавший запрос хост получил предложение немедленно. В этом случае также происходит «половинчатый» перехват.

Атака на протоколы маршрутизации

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

Источник

Как может быть использовано нарушителем сообщение icmp redirect

Общеизвестно, что маршрутизация в Сети играет важнейшую роль для обеспечения ее нормального функционирования. Маршрутизация в Internet осуществляется на сетевом уровне (IP-уровень). На программном уровне для ее обеспечения в памяти сетевой операционной системыкаждого хоста существуют специальные таблицы, содержащие данные о возможных маршрутах. На аппаратном уровне каждый сегмент Сети подключен к глобальной сети как минимум через один маршрутизатор, а следовательно, все хосты и маршрутизатор должны физически располагаться в одном сегменте. Поэтому все сообщения, адресованные в другие сегменты Сети, направляются на маршрутизатор, который, в свою очередь, перенаправляет их далее по указанному в пакете IP-адресу, выбирая при этом оптимальный маршрут. Рассмотрим, что представляет собой таблица маршрутизации хоста. Она состоит из пяти колонок: сетевой адрес, сетевая маска, адрес маршрутизатора, интерфейс и метрика (см. рис. 4.9)

Как может быть использовано нарушителем сообщение icmp redirect. Смотреть фото Как может быть использовано нарушителем сообщение icmp redirect. Смотреть картинку Как может быть использовано нарушителем сообщение icmp redirect. Картинка про Как может быть использовано нарушителем сообщение icmp redirect. Фото Как может быть использовано нарушителем сообщение icmp redirect
Рис. 4.9. Таблица маршрутизации хоста

Немного о IСМР

Итак, в Internet удаленное управление маршрутизацией реализовано в виде передачи с маршрутизатора на хост управляющего ICMP-сообщения Redirect Message (Перенаправить сообщение). Заголовок сообщения представлен на рис. 4.10.

8-bit
Type
8-bit Code16-bit Checksum
32-bit
Gateway Internet Address
Internet Header + 64 bits of Original Data Datagram

Рис. 4.10. Заголовок сообщения ICMP Redirect Message

Итак, мы подошли к основному вопросу: в чем же потенциальная опасность реакции сетевой ОС на ICMP-сообщение Redirect Datagrams for the Host? Ответ очевиден: существует возможность несанкционированного изменения маршрутизации на хосте. Что может помешать кракеру самому послать подобное сообщение и навязать системе ложный маршрут? К сожалению, ничего. Анализ механизма идентификации ICMP-сообщения Redirect показывает, что единственным параметром, идентифицирующем это сообщение, является IP-адрес отправителя, который должен совпадать с IP-адресом маршрутизатора, так как это сообщение может и должно передаваться только маршрутизатором. Особенность протокола IСМР состоит в том, что он нс предусматривает никакой дополнительной аутентификации отправителей. То есть ICMP-сообщения передаются на хост маршрутизатором однонаправлепно без создания виртуального соединения (в процессе создания такого соединения можно было бы динамически, например по схеме Диффи-Хелмана, выработать идентифицирующую информацию). А так как ни хост, ни маршрутизатор не имеют заранее определенной статической ключевой информации для идентификации ICMP-сообщения Redirect, то очевидно, что в данном случае у получателя такого сообщения нет возможности установить подлинность его отправителя. Следовательно, ничто не мешает атакующему самому послать ложное ICMP-сообщение Redirect о смене маршрута от имени ближайшего роутера.

Приведенные выше факты позволяют осуществить типовую удаленную атаку «внедрение в распределенную ВС ложного объекта путем навязывания ложного маршрута».

Для осуществления этой удаленной атаки необходимо подготовить ложное ICMP-сообщение Redirect Datagrams for the Host, где указать конечный IP-адрес маршрута (адрес хоста, маршрут к которому будет изменен) и IP-адрес ложного маршрутизатора. Затем такое сообщение передается на атакуемый хост от имени маршрутизатора, для чего в IP-заголовке в поле адреса отправителя указывается IP-адрес маршрутизатора. Можно предложить два варианта данной удаленной атаки.

Как может быть использовано нарушителем сообщение icmp redirect. Смотреть фото Как может быть использовано нарушителем сообщение icmp redirect. Смотреть картинку Как может быть использовано нарушителем сообщение icmp redirect. Картинка про Как может быть использовано нарушителем сообщение icmp redirect. Фото Как может быть использовано нарушителем сообщение icmp redirect
Рис. 4.11. Внутрисегментное навязывание хосту ложного маршрута при использовании протокола ICMP

Как может быть использовано нарушителем сообщение icmp redirect. Смотреть фото Как может быть использовано нарушителем сообщение icmp redirect. Смотреть картинку Как может быть использовано нарушителем сообщение icmp redirect. Картинка про Как может быть использовано нарушителем сообщение icmp redirect. Фото Как может быть использовано нарушителем сообщение icmp redirect
Рис. 4.12. Межсегментное навязывание хосту ложного маршрута при использовании протокола ICMP, приводящее к отказу в обслуживании

Эксперимент показал, что оба варианта рассмотренной удаленной атаки удается осуществить как межсегмеитно, так и внутрисегментно на ОС Linux 1.2.8, ОС Windows 95 и ОС Windows NT 4.0. Остальные сетевые ОС, исследованные нами (Linux версии выше 2.0.0 и CX/LAN/SX, защищен- ная по классу Bl UNIX), игнорировали ICMP-сообщенис Redirect, что кажется вполне логичным с точки зрения обеспечения безопасности.

Защититься от этого воздействия можно фильтрацией проходящих ICMP-сообщений Redirect при помощи систем Firewall. Другой способ защиты заключается в изменении исходных текстов сетевого ядра операционных систем с дальнейшей его перекомпиляцией, чтобы запретить реакцию на ICMP-сообщение Redirect. Однако это возможно только в случае свободного распространения исходных текстов ОС (как в случае с ОС Linux или ОС FreeBSD).

Источник

Когда отправляются сообщения о перенаправлении ICMP?

Параметры загрузки

Об этом переводе

Этот документ был переведен Cisco с помощью машинного перевода, при ограниченном участии переводчика, чтобы сделать материалы и ресурсы поддержки доступными пользователям на их родном языке. Обратите внимание: даже лучший машинный перевод не может быть настолько точным и правильным, как перевод, выполненный профессиональным переводчиком. Компания Cisco Systems, Inc. не несет ответственности за точность этих переводов и рекомендует обращаться к английской версии документа (ссылка предоставлена) для уточнения.

Содержание

Введение

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

Предварительные условия

Требования

Необходимо знание набора протоколов IP.

Используемые компоненты

Это поддерживается во всей серии версий программного обеспечения Cisco IOS и маршрутизаторов Cisco.

Условные обозначения

Функции сообщений переадресации ICMP

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

Например, два маршрутизатора R1 и R2 связаны с тем же сегментом Ethernet, что и Host H. Шлюз по умолчанию для Host H настроен для использования маршрутизатора R1. Host H отправляет пакет на маршрутизатор R1, чтобы передать его на целевой объект на удаленном хосте филиала 10.1.1.1. При сверке со своей таблицей маршрутизации маршрутизатор R1 обнаруживает, что маршрутизатором следующего перехода на хост 10.1.1.1 является маршрутизатор R2. Теперь маршрутизатор R1 должен переадресовать пакет из того же интерфейса Ethernet, в котором этот пакет был получен. Маршрутизатор R1 переадресует пакет маршрутизатору R2, а также отправляет сообщение переадресации ICMP на Host H. Команда сообщает хосту, что оптимальный маршрут для перехода на хост 10.1.1.1 проходит через маршрутизатор R2. Затем Host H переадресует все последующие пакеты, предназначенные для хоста 10.1.1.1, на маршрутизатор R2.

Как может быть использовано нарушителем сообщение icmp redirect. Смотреть фото Как может быть использовано нарушителем сообщение icmp redirect. Смотреть картинку Как может быть использовано нарушителем сообщение icmp redirect. Картинка про Как может быть использовано нарушителем сообщение icmp redirect. Фото Как может быть использовано нарушителем сообщение icmp redirect

В этом сообщение отладки указано, что маршрутизатор R1 (как на схеме сети) отправляет сообщение переадресации ICMP на Host H (172.16.1.1).

Маршрутизатор R1 (172.16.1.100) отправляет сообщение переадресации Host H (172.16.1.1), чтобы использовать маршрутизатор R2 (172.16.1.200) в качестве шлюза для перехода к целевому хосту 10.1.1.1.

Когда отправляются сообщения о перенаправлении ICMP?

Если все эти условия соблюдены, маршрутизаторы Cisco отправляют сообщения переадресации ICMP:

Пакет поступает на маршрутизатор через тот же интерфейс, через который выполняется маршрутизация исходящих пакетов.

Подсеть или сеть исходного IP-адреса находятся в той же подсети или сети IP-адреса следующего перехода, что и маршрутизируемый пакет.

Дейтаграмма не маршрутизируется от источника.

Ядро настроено для отправки сообщений переадресации. (По умолчанию маршрутизаторы Cisco отправляют сообщения о перенаправлении ICMP. Подкоманда интерфейса no ip redirects можно использовать для отключения перенаправлений ICMP.

Примечание. Сообщения переадресации ICMP по умолчанию отключены, если в интерфейсе настроен протокол Hot Standby Router Protocol (HSRP). В программном обеспечении Cisco IOS версии 12.1(3)T и более поздних версий разрешено включать сообщения переадресации ICMP в интерфейсах, настроенных с HSRP. Дополнительные сведения см. в разделе Поддержка HSRP для сообщений переадресации ICMP статьи Компоненты и функции протокола Hot Standby Router Protocol.

Например, если маршрутизатор имеет два IP-адреса в одном из интерфейсов:

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

Источник

Ordnung muß sein. Ordnung über alles (18+)

Инструменты пользователя

Инструменты сайта

Боковая панель

Навигация

Линкшэринг

socialite Display:icon facebook twitter

ALARM!

Добавить новую страницу

Реклама

Содержание

Исследование возможностей перенаправления пакетов в протоколах ARP and ICMP

Как это часто бывает, различия неотличимы. Я рассматриваю 2 официальных протокола модели TCP/IP-ARP и ICMP, которые будучи внимательно рассмотрены, могут использоваться для достижения определённых целей.

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

Основы протокола ARP

Описание реализации атаки

Давайте представим гипотетическую сеть.

Программа send_arp.c (прилагаемая к данному тексту) может быть использована для решения поставленной задачи. Как видно из её названия, она посылает ARP-пакет (ARP-ответ, если быть точным: как следует из определения протокола, ответ будет принят успешно даже если его никто не запрашивал) в сеть, и Вы можете делать с данным пакетом всё, что Вы хотите. Посылая пакет при помощи данной программы, необходимо указать IP-адрес источника посылки и цели атаки и их hw-адреса (MAC).

Сложность здесь связана с особенностью механизма ARP-кэширования. Некоторые ОС (например, LINUX) будут пытаться обновить кэш-таблицу, посылая unicast (однонаправленные) пакеты к кэшируемым адресам. Так как такой запрос, направленный к ИСТИННОМУ RAT может помешать нам в наших планах, его необходимо предупредить. Этого можно достичь, зафлудив систему, которая могла послать ARP-запрос, ложными ARP-ответами таким образом, что она никогда не пошлёт ARP-запрос. Предупреждение, как всегда, является лучшим лекарством. В то время, как настоящий пакет от DOG к RAT должен быть послан, посылается ложный пакет с ARP-ответом от САТ. Как говорилось выше, периодичности в 40 сек. бывает достаточно.

Итак, процедура довольно простая. «Поднимаем» (bring up) алиас-интерфейс, т.е. eth0:1 (или используем текущий, не имеет значения) с IP-адресом RAT и включённым ARP-поскольку необходимо заполнить кэш-таблицу сначала, а это невозможно с выключенным ARP. Устанавливаем маршрут для DOG через правильный интерфейс. Устанавливаем в кэш-таблице запись для DOG и затем отключаем ARP. Теперь у нас всё установлено.

После этого запускаем прилагаемую программу send_arp для DOG и для RAT и теперь DOG уверен, что на самом деле Вы RAT. В дальнейшем не забываем периодически посылать ARP-пакеты для DOG и RAT.

Что ещё может быть сделано

Особый интерес представляет так называемый «даровой (gratuitous) ARP». Подобная ситуация возникает, если IP-адреса источника и цели в ARP-запросе равны. Это обычно происходит в случае широковещательного Ethernet-запроса. Некоторые реализации TCP/IP-cтека определяют подобную ситуацию, как специальный случай, и система посылает запросы об обновлении информации ко всем сетевым клиентам, обновляя собственный кэш ARP-ответами. В этом случае один пакет может привести к компроментации всей сети. Хотелось бы отметить, что «даровой (gratuitous) ARP» не определён, как часть стандрата ARP, поэтому большинство производителей ОС не применяют его, что придаёт ему меньшую популярность.

ICMP redirects

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

Cообщения с кодами 0 и 2 не используются современными ОС. Сообщение с кодом 1 информирует хост о том, что следует создать новый маршрут к отмеченному в сообщении объекту и внести его в таблицу маршрутизации, указывая IP-адрес хоста, для которого нужна смена маршрута (адрес будет занесён в поле Destination в пристыкованном IP-заголовке), и новый IP маршрутизатора, куда необходимо направлять пакеты для данного хоста (этот адрес заносится в поле Gateway). Что касается поля Type of Service (TOS) в заголовке IP-пакета, оно, по замыслу разработчиков должно было определять приоритет при маршрутизации. На это поле отводится 8 бит. Различные биты представлют собой значимость, задержку, скорость передачи, надёжность. TOS определяет обработку датаграммы при передаче через различные сети от источника к получателю. В большинстве случаев может оказаться невозможным удовлетворить сразу нескольким требованиям при обработке, предусмотренным полем TOS.

Добавление, включённое переводчиком.

Согласно книге «TCP/IP Illusrated» хост с реализацией сокетов 4.4 BSD, который принял ICMP-redirect применяет некоторые правила до модификации таблицы маршрутизации. Это предотвращает неправильное (и неправомерное) изменение таблиц маршрутизации. Такие правила включают следующие условия:

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

ICMP redirect представляет большую потенциальную возможность для DoS. В отличии от ARP-кэша, маршруты хоста не требуют обновления со временем. И конечно, в данном случае не требуется доступа к локальной сети, атака может быть запущена с любого места. Таким образом, если машина-жертва принимает ICMP redirects (и пакеты могут действительно достичь её), то система может прекратить поддерживать связь с любым определённым адресом в сети (не со всеми, но с теми, которые расположены в других физических сетях с жертвой). ДНС-сервера в данном случае могут быть потенциальными жертвами.

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

Эксперимент, проведённый авторами книги «Атака на Интернет» показал, что реализовать вариант удалённой атаки типа ICMP Redirect удалось осуществить как межсегментно, так и внутрисегментно на ОС Linux 1.2.8, ОС Win95 и ОС WinNT 4.0. Остальные сетевые ОС (испытывались Linux версии выше 2.0.0 и CX/LAN /SX, защищённая по классу B1 UNIX), проигнорировали ICMP Redirect.

Добавление, включённое переводчиком.

Здесь хотелось бы добавить, что сам Алан Кокс в дискуссии на сервере BUGTRAQ по данной статье указывает, что Юрий неправ. ICMP redirect маршруты для хостов всё-таки не постоянно держатся в таблице маршрутизации, а убираются через некоторе время.

Однако если находиться на коммутируемой сети (switched в оригинале) с большой сетевой маской (например сети класса B), можно использовать переназначение ICMP против многих хостов для добавления больше 65000 маршрутов в их таблицы.

Таким образом *nix-машины просто израсходуют всё доступоное RAM. Многие «десктоповые» ОС используют линейный алгоритм для поиска маршрутов.

Как защититься

Приведённая выше схема ARP-атаки работает в сетях 10Base2 (коаксиал). Однако, если машины соединены более «продвинутым» способом, используя некоторые «разумные» концентраторы или коммутаторы, атака может быть обнаружена и даже невозможна (то же самое касается и пассивных атак).

Почему я не остановился более подробно на ICMP-атаках? Дело в том, что многие сети имеют очень простую структуру и поэтому нет необходимости для добавления чего-нибудь в таблицы маршрутизации. Во-вторых, во многих сетях обычно устанавливают статические таблицы маршрутизации вручную, поэтому зачем доверять подобное измененение ICMP? И окончательно, ввиду опасности вышеописанной атаки, я даже запретил подобную ситуацию в моей ОС, даже ценой несоблюдения RFC1122. Но это может быть довольно непросто. На Linux или любой другой ОС с открытыми кодами, это может быть сделано на уровне «хака» ядра. На IRIX 6.2 и возможно других версий это достигается выставкой icmp_dropdirects=1 при использовании systune. Также можно достичь хорошего эффекта запретив прохождение пакетов типа ICMP redirect через маршрутизаторы (файрволлы). Как это сделать для Linux описывается во многих примерах настройки пакета ipchains (ipfw, iptables), также настройке фильтрации ICMP-пакетов уделено много места в книге «Брандмауэры в Linux». В качестве примера хотелось бы сказать что в Linux можно вообще очень просто запретить приём ICMP Redirect пакетов включением в какой-нибудь из стартовых скриптов следующей последовательности:

Что касается операционной системы FreeBSD, то реагирование данной ОС на пакеты ICMP redirect перекрывается следующим образом:

В состав операционной системы LINUX входит утилита arpwatch, при помощи которой ARP-кэш держит таблицу соответствия MAC и IP-адресов.

Из мануала:
Arpwatch keeps track for ethernet/ip address pairings. It syslogs activity and reports certain changes via email. Arpwatch uses pcap(3) to listen for arp packets on a local ethernet interface.

Также, для UNIX есть утилита ARP Wrap, которая предотвращает атаки типа АРП-спуффинга до выполнения программ (telnet, SSH).

Из оригинального описания:
Arpwrap is a tool which attempts to detect ARP spoofing attacks before executing a unix command (such as SSH or Telnet).

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *