Page tree
Skip to end of metadata
Go to start of metadata


5.1. Общие сведения о ARP Spoofing

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

Для сокращения количества ARP-пакетов в сети, протокол ARP спроектирован таким образом, что даже если хост не запрашивал ARP другого хоста, при получении такого пакета он внесет запись в свою таблицу. Поэтому существует возможность подделки ARP-пакета (ARP Spoofing). Когда злоумышленник хочет перехватить трафик между двумя хостами, он отправляет ARP-ответы на оба этих хоста по отдельности, заставляя их принимать свой MAC-адрес за MAC-адреса друг-друга. Таким образом трафик от одного хоста к другом фактически будет передаваться через хост злоумышленника, что позволяет ему не только прочитать необходимую информацию, но и модифицировать пакеты данных на свое усмотрение для последующей передачи.

5.1.1. Отключение обновления без запроса (arp-security)

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

5.1.2. ARP Guard

Существует также вероятность подмены злоумышленником адреса шлюза или коммутатора - в этом случае кроме перехвата трафика данных, существует также опасность отказа всей сети из-за передачи трафика не по назначению. Для предотвращения подмены адреса шлюза, возможно использовать функцию ARP Guard. При получении на порт ARP-ответа с source адресом, указанным в ARP-Guard, это пакет будет расценен как вредоносный и отброшен.

5.1.3. Рассылка ARP коммутатором без запроса (Gratuitous ARP)

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

5.2. Настройка функции предотвращения ARP Spoofing

  1. Отключить автоматическое обновления ARP;

  2. Отключить автоматическое обучение ARP;

  3. Конвертировать динамические ARP в статические;

  4. Настроить защищенный IP-адрес для arp-guard;

  5. Настроить Gratuitous ARP;

  6. Просмотреть конфигурацию Gratuitous ARP.


  1. Отключить автоматическое обновления ARP:

Команда

Описание

ip arp-security updateprotect

no ip arp-security updateprotect

!  В режиме глобальной конфигурации и в режиме конфигурирования интерфейса

Выключить автоматическое обновление ARP

Включить автоматическое обновление ARP


2. Отключить автоматическое обучение ARP:

Команда

Описание

ip arp-security learnprotect

no ip arp-security learnprotect

!  В режиме глобальной конфигурации и в режиме конфигурирования интерфейса

Выключить автоматическое обучение ARP

Включить автоматическое обучение ARP


3. Конвертировать динамические ARP в статические:

Команда

Описание

ip arp-security convert

!  В режиме глобальной конфигурации и в режиме конфигурирования интерфейса

Конвертировать динамические ARP в статические ARP


4. Настроить защищенный IP-адрес для arp-guard

Команда

Описание

arp-guard ip <addr>

no arp-guard ip <addr>

!  В режиме конфигурирования интерфейса

Добавить ARP Guard адрес

Удалить ARP Guard адрес


5. Настроить Gratuitous ARP.

Команда

Описание

ip gratuituous-arp <5-200>

no ip gratuituous-arp

!  В режиме глобальной конфигурации или в режиме конфигурирования интерфейса

Включить функцию gratuitious ARP и задать интервал отправки сообщений ARP <5-200> в секундах.

Отключить функцию gratuitious ARP


6. Просмотреть конфигурацию Gratuitous ARP.

Команда

Описание

show ip gratuituous-arp [interface vlan <1-4094>]

no show ip gratuituous-arp

!  В привилегированном режиме

Добавить ARP-Guard адрес

Удалить ARP-Guard адрес

5.3. Пример использования функции предотвращения ARP Spoofing



Рисунок 37.1 - Пример топологии для использования функции предотвращения ARP spoofing.


Оборудование

Конфигурация

Кол-во

Коммутатор

IP:192.168.2.4; mac: 00-00-00-00-00-04

1

Хост А

IP:192.168.2.1; mac: 00-00-00-00-00-01

2

Хост B

IP:192.168.1.2; mac: 00-00-00-00-00-02

3

Хост C

IP:192.168.2.3; mac: 00-00-00-00-00-03

несколько


На рисунке 37.1 связь установлена между хостами B и C. Хост A хочет, чтобы коммутатор направлял ему пакеты, отправленные хостом B. В первую очередь Хост A отправляет пакет ARP-ответа на коммутатор в формате 192.168.2.3, 00-00-00-00-00-01, сопоставляя его MAC-адрес c IP-адресом хоста С. Коммутатор обновляет таблицу ARP и начинает отправлять пакеты для 192.168.2.3 на MAC-адрес 00-00-00-00-00-01 (адрес хоста A).
В дальнейшем хост А пересылает принятые пакеты хосту С, заменив адрес источника и адрес назначения. Так как ARP таблица обновляется, хост A должен непрерывно отправлять ARP-ответы с подмененным адресом на коммутатор.
Поэтому необходимо настроить запрещение изучения ARP в стабильной сети, а затем заменить динамические ARP-записи на статические. В результате выученные ARP не будут обновляться и будут защищены.

Switch#config
Switch(config)#interface vlan 1
Switch(config-if-vlan1)#arp 192.168.2.1 00-00-00-00-00-01 interface ethernet 1/0/1
Switch(config-if-vlan1)#arp 192.168.2.2 00-00-00-00-00-02 interface ethernet 1/0/2
Switch(config-if-vlan1)#arp 192.168.2.3 00-00-00-00-00-03 interface ethernet 1/0/3
Switch(Config-If-Vlan3)#exit
Switch(Config)#ip arp-security learnprotect
Switch(Config)#
Switch(config)#ip arp-security convert

Если топология и конфигурация сети меняется, необходимо запретить обновления ARP: как только запись в ARP таблицу будет добавлена, она не может быть обновлена новым ARP-ответом.

Switch#config
Switch(config)#ip arp-security updateprotect

Для защиты от подмены адреса коммутатора необходимо настроить ARP Guard и Gratuitous ARP:

Switch#config
Switch(config)#int eth 1/0/1-3
Switch(config-if-port-range)#arp-guard ip 192.168.2.4
Switch(config-if-port-range)#exit
Switch(config)#interface vlan 1
Switch(config-if-vlan1)#ip gratuitous-arp 5
  • No labels