IP Smart Spoofing - новый метод отравления ARP кэша

IP Smart Spoofing - новый метод отравления ARP кэша

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

По материалам - http://www.althes.fr/ressources/avis/smartspoofing.htm

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

Введение

IP smart spoofing использует комбинацию отравления ARP кэша (ARP cache poisoning), NAT и маршрутизации. Реализация атаки не требует углубленных знаний.

ARP cache poisoning

Компьютер, связанный с IP/Ethernet  сетью имеет два адреса. Глобально-уникальный  MAC адрес  для каждого сетевого интерфейса и логический IP адрес, назначенный программой. Протокол определения адресов (ARP protocol) формирует ассоциацию между этими двумя адресами. Когда компьютер должен послать пакет IP адресу, расположенному в той же самой сети, он пошлет широковещательное сообщение "ARP who has ?". Как показано на рисунке, владелец IP адреса отвечает со своим Ethernet адресом.

Чтобы минимизировать широковещательные ARP запросы, операционные системы кэшируют ARP ответы. 

К сожалению, протокол определения адресов не поддерживает состояние подключения (stateless), и большинство операционных систем обновляет кэш при получении ARP ответа, независимо от того, отослали ли они фактический запрос. Посылая поддельные ARP ответы, атакующий может заставить операционную систему посылать фреймы, предназначенные одному компьютеру на другой компьютер. Этот процесс известен как "ARP Cache poisoning".

 В зависимости от операционной системы, отравление кэша может быть достигнуто восемью типами ARP сообщений со следующими свойствами:

  • ARP сообщение послано в MAC broadcast или MAC unicast.
  • Код операции может быть "ARP Who is" или "ARP Reply".
  • ARP сообщение – допустимое сообщение или недопустимое (внедрение тех же самых IP адресов для источника и адресата)

Согласно проведенным испытаниям на операционных системах Windows 9x, NT, 2000, XP, Solaris 8, Linux kernel 2.2 и 2.4, Cisco IOS 12, Nokia IPSO 3.5, существует не менее одного типа ARP сообщения, способного отравить кэш. Кроме того, на системах Windows (9x/NT/2K), статическая ARP запись может всегда быть перезаписана, используя фальшивое ARP сообщение.

Обратите внимание, что из-за способа обработки  MAC адреса на концентраторе, имитация источника MAC адреса приведет к тому, что злонамеренный пользователь некоторое время будет получать весь трафик, предназначенный подмененной системе, вызывая тем самым отказ в обслуживании на короткое время.

IP Smart Spoofing

Используя отравления ARP кэша, злонамеренный пользователь вставляет свой компьютер по пути связи от сервера к клиенту. Используя IP переадресацию, существующий трафик все еще направляется к клиенту. Конечно, ICMP Redirect должен быть заблокирован на компьютере злонамеренного пользователя. Наконец,  SNAT (Source Network Address Translation) используется злонамеренным пользователем для обмана IP адреса клиента и установления нового подключение к серверу.

 

 После этого, злонамеренный пользователь может запустить любые стандартные сетевые приложения, чтобы подключиться к серверу, используя IP адрес клиента. Любое управление доступом, основанное на IP адресе клиента,  будет успешно обойдено. Кроме того, существующий трафик не будет нарушен со стороны сервера, т.е. smart spoofing атака не может быть обнаружена.

Эта методика была успешно проверена на Redhat Linux 7.3, с arp-sk и arpsoof и iptables. Кроме того,  был разработан инструмент arp-fillup, чтобы обслуживать ARP записи на имитируемом хосте, чтобы избежать регулярных широковещательных ARP запросов.

Воздействие Smart Spoofing

Сетевые устройства, типа маршрутизаторов или межсетевых защит часто используют фильтрацию по IP адресу источника. Эти правила могут быть обойдены с любого компьютера, расположенного на сетевом пути между авторизованным клиентом и межсетевой защитой. Например, в большинстве корпоративных сетей, подключенных к Internet через межсетевую защиту, только немногие из идентифицированных компьютеров могут непосредственно обращаться к интернету (внутренний прокси сервер, получение/отправка SMTP сообщений на прямую, и т.п). Используя smart spoofing, любой внутренний пользователь может обойти правила фильтрации.

Тем же самым способом, приложение, доступ которого ограничен определенным IP адресам, может неправильно эксплуатироваться любым компьютером, расположенным на сетевом пути между авторизованным клиентом и сервером. Уязвимость может воздействовать на многие приложения, типа Apache ACL, r-commands, NFS, TCP Wrapper, ограниченные административные средства, и т.д

Выводы

Из-за проблем защиты в ARP протоколе и возможному smart spoofing нападению, ограничения доступа, основанные на IP адресе, могут неправильно эксплуатироваться.

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

 Другой метод защиты может использовать Host-Based IDS, чтобы обнаружить фальшивые ARP сообщения и поддержать целостность ARP таблицы. Для этого можно использовать инструмент arpwatch, доступный для большинства UNIX систем. При любой подозрительной деятельности администратор сети будет уведомлен по E-mail. Однако arpwatch не умеет предотвращать атаку, программа только сигнализирует о возможном нападении. Причем успешная атака может привести к тому, что сигнализировать не удастся. Мы советуем пользоваться более гибким инструментом - arp_antidote, который позволяет успешно блокировать подобные нападения. Однако в нем нет функции уведомления администратора по E-mail, а так же он доступен только для LINUX систем.

 Наконец, надежное средство управление доступом должно использовать сильную идентификацию или парольную идентификацию. VPN протоколы, подобно SSH, SSL или IpSec могут значительно улучшить защиту, чтобы предотвратить подобные нападения.

Не ждите, пока хакеры вас взломают - подпишитесь на наш канал и станьте неприступной крепостью!

Подписаться