Использование протокола ARP для проведения атак

Рассмотрев особенности протокола ARP, необходимо остановиться на тех его воз­можностях, которые он предоставляет для проведения компьютерных атак на сеть. Атаки с использованием протокола ARP можно отнести к условно активным, так как они требуют выполнения определенных действий в сети (в то время как пере­хват пакетов с помощью анализатора протоколов можно отнести к пассивным ата­кам). С точки зрения атакующего, именно активные атаки могут принести ему наи­больший успех. Поэтому администратору сети необходимо иметь четкое представ­ление об их возможностях. Далее, в главе 4, рассматриваются основы атак типа spoofing (имитация соединений — их можно также отнести к классу атак DoS), которые достаточно популярны и предоставляют злоумышленнику широкие воз­можности. Но они относительно сложны в реализации, и атакующий, кроме всего прочего, должен надеяться на свою удачу. В противоположность этим атакам, ата­ка на протокол ARP (ее можно также назвать A RP spoof ing) очень проста в реали­зации.

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

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

Однако даже такая ситуация может быть на руку атакующему. В Интернете можно найти программу (например, send_arp.c), которая посылает ответы прото­кола ARP на соответствующие запросы, и в этих ответах может быть требуемая информация — IP и МАС-адреса. Обратите внимание на то, что при отправке со­общений протокола ARP в сеть другие устройства в сети будут их принимать и учитывать даже в том случае, если не нуждаются в них.

Естественно, из-за устаревания информации в кэше протокола ARP рассылае­мые сообщения следует повторять, причем частота повторения зависит от конк­ретной операционной системы, однако 40 секунд должно хватить для большин­ства систем. Но может возникнуть проблема с некоторыми системами, которые пытаются обновить записи в кэше с помощью посылки целенаправленных запро­сов ARP по кэшируемым адресам, для того чтобы убедиться в том, что адреса ак­тивны. Это может несколько подпортить ситуацию, так как может быть изменена запись ARP для компьютера-жертвы, которая была только что подменена ата­кующим.

ПРИМЕЧАНИЕ ----------------------------------------------------------------------

На маршрутизаторах Cisco Systems администратор имеет возможность вручную установить время хранения информации в кэше. Для этого следует воспользоваться командой агр timeout с аргумен­том в виде промежутка времени в секундах. Команда выполняется в режиме конфигурации интер­фейсов и соответственно влияет на записи, относящиеся именно к этому интерфейсу. По умолча­нию параметр установлен в 14 400 секунд, что соответствует четырем часам. Если в качестве аргу­мента указать значение 0, то маршрутизатор не будет помещать записи в кэш. Для получения информации о текущем значении таймера можно выполнить команду show Interface:

Router#sh int eO

ARP type: ARPA. ARP Timeout 04:00:00

_____________________________________________________________

Рассмотренная атака работает в пределах локальной сети, хотя вообще сфера ее воздействия ограничена только достижимостью пакетов ARP, то есть не очень далеко, так как эти сообщения не маршрутизируются в распределенную сеть. Од­нако одним из расширений этой атаки может быть подмена адреса маршрутизато­ра. Например, вполне возможна ситуация, когда какой-либо пользователь в ло­кальной сети, подменяя маршрутизатор, выдает фальшивое приглашение Telnet администратору сети с просьбой ввести имя и пароль доступа.

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

Другой способ использования особенностей протокола ARP заключается в ука­зании в сообщении одинакового IP-адреса отправителя и получателя. Некоторые системы рассматривают подобные сообщения в то время, когда эта система объяв­ляет о себе в сети и кэширует информацию. Таким образом, одним сообщением ARP можно нарушить работу всей сети.

СОВЕТ

Говоря о возможных атаках изнутри, следует также обратить внимание на протокол 802.1 spanning tree, используя который, атакующий может также нарушить работу сети. Но только в том случае, если этот протокол используется в сети.