Try   HackMD
tags: arp

Лабораторная рабоата. Иследуем протокол ARP.

Цель работы: Научиться работать с программой Wireshark. Изучить работу протокола ARP.

Необходимые материалы: ПК с установленной программой Wireshark.

Теоретическая часть.

Для определения физического адреса по IP-адресу используется протокол разрешения адреса Address Resolution Protocol (ARP).

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

Протокол ARP позволяет динамически определить МАС-адрес по IP-адресу. Протокол ARP работает в пределах одной подсети и автоматически запускается, когда возникает необходимость преобразования IP-адреса в аппаратный адрес.

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

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

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

В ARP-таблице могут содержаться как статические, так и динамические записи. Динамические записи добавляются и удаляются автоматически, статические заносятся вручную.

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

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

Сообщения протокола ARP при передаче по сети инкапсулируются в поле данных кадра. Они не содержат IP-заголовка. В отличие от сообщений большинства протоколов, сообщения ARP не имеют фиксированного формата заголовка. Это объясняется тем, что протокол был разработан таким образом, чтобы он был применим для разрешения адресов в различных сетях.

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

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

А так выглядит ARP запрос. На втором уровне мы видим заголовок Ethernet где указаны MAC адреса отправителя и получателя а также какой протокол используется на следующем уровне (ARP). Далее идет служебная информация. А после нее информация о том кому направлен запрос а также IP адрес и мак адрес который необходимо узнать.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Вы можете заметить что mac выражен в 0-лях потому что роутер его не знает. На данном скрине роутер хочет узнать какой MAC адресс у устройства с IP 192.168.1.12.

ARP Harvesting

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

Как пример использование утилиты arp-scan в Linux:

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

Протокол arp имеет ряд уязвимостей о которых вы узнаете на 4 курсе.

Практическая часть.

  1. Выполните команду arp-a опишите увиденное.
  2. Изучите каким образом можно добавить статическую arp запись в Windows, Linux и Cisco IOS.
  3. Откройте программу Wireshark начните захват трафика на одном из активных сетевых интерфейсов, отфильтруйте трафик по протоколу arp. Найдите и опишите arp запрос и arp ответ.

Таблица Ethernet.

Тип сообщения Mac Адрес отправителя MAC адрес получателя
Аrp запрос mac адресс mac адресс
Аrp ответ mac адресс mac адресс

Таблица ARP.

Тип сообщения MAC отправителя IP адресс отправителя Target MAC Target IP
Аrp запрос text text text text
Аrp ответ text text text text
  1. Проведите arp разведку в вашей локальной сети. Вы можете использовать Linux с утилитой arp-scan или же любую другую утилиту работающую на других OC с похожим действием.

Контрольные вопросы.

  1. Зачем нужен протокол arp в сети?
  2. Зачем нужна arp таблица?
  3. Зачем нужны два адреса в сети IP и MAC?
  4. Обьясните как вы понимаете что такое широковещательный домен?

Ответы на некоторые вопросы вы можете найти тут: https://hackmd.io/@erikguru/HyZA5oYdo