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

1480078958_e0da_arp.png
ARP spoofing attack

Протокол ARP используется для преобразования IP-адреса в MAC-адрес. Исторически ARP не имеет никакой защиты или хотя бы проверки подлинности запросов. Повторю: совсем никакой! А еще возможна отправка ARP-ответов без ARP-запросов — это так называемый gratuitous ARP. Он-то нас и интересует. Чтобы провернуть подобную схему, можно воспользоваться тулзой Cain & Abel. Думаю, ты о ней знаешь.

С помощью Cain & Abel злоумышленник может вклиниться и перехватить трафик в одном широковещательном домене. Защититься от этой напасти можно при помощи механизма Dynamic ARP Inspection (Protection).

Для корректной работы Dynamic ARP Inspection необходимо указывать, какие порты коммутатора будут доверенными, а какие — нет. Под ненадежным портом подразумевается тот порт, к которому подключены клиенты. Для ненадежных портов выполняется ряд проверок сообщений ARP. А к доверенным портам коммутатора относятся те порты, к которым подключен другой коммутатор. Сообщения протокола ARP, полученные с доверенных портов, не отбрасываются.

Коммутатор перехватывает все ARP-запросы и ARP-ответы на ненадежных портах, прежде чем перенаправлять их. Также на ненадежных портах коммутатор проверяет соответствие MAC-адреса IP-адресу.

Проверка соответствия MAC-адреса IP-адресу может выполняться на основании статических записей или базы данных привязки DHCP.

На коммутаторах Cisco этот механизм во VLAN включается командой

Switch(config)# ip arp inspection vlan 1

А вот как выглядит настройка доверенного порта:

Switch(config)# interface gigabitethernet1/0/1
Switch(config-if)# ip arp inspection trust

Если у тебя нет коммутатора, способного защитить от атак подобного типа, можешь установить arpwatch: это демон, который отслеживает соответствие между IP- и MAC-адресами и при обнаружении аномалий фиксирует это в системном логе. Документацию можно глянуть вот здесь.

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

Чтобы защитить такой маршрутизатор, нужно получать от него ARP-таблицу по SNMP и анализировать ее на другой машине. Так, к примеру, действует программа remarp.

5 комментариев

  1. F03SD

    25.11.2016 at 19:10

    Ну и смысл от этого arp когда практически все сайты на сегодня используют https ?

    • ns3777k

      25.11.2016 at 19:40

      к примеру, в небольших компаниях обычно не запариваются с https и юзают http для внутренних ресурсов (трекер, веб-морда для git’а, …).

      • F03SD

        25.11.2016 at 19:55

        Речь идет о «Таргетированой» атаке типа MitM , Имеем локальную корпоративную сеть которая ходит в «интернеты» с помощью одного ip при помощи 1го хаба/свича . И если человек использующий данную атаку не находится в этой локальной сети , то атака не имеет никакого смысла. Даже если внутри сети используются http вместо https.

        • dmitryzorg

          28.11.2016 at 08:42

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

    • Inject0r

      28.11.2016 at 19:43

      mitm-атака с sslsrip+ может обойти https в 70% случаев.

Оставить мнение

Check Also

Прятки с Windows 10. Тестируем программы для отключения слежки и повышения приватности

С выхода Windows 10 прошло уже три с лишним года, а проблема слива пользовательских данных…