arp_antidote - средство для активной борьбы с атаками типа arpoison

17813
arp_antidote - средство для активной борьбы с атаками типа arpoison

Уже давно известна уязвимость протокола ARP к атаке, получившей название arpoison. Атака позволяет перенаправлять данные, предназначенные одному компьютеру в локальной сети, на другой. Это широко используется, особенно в атаках типа Man in the Middle, позволяющих перехватывать информацию, передаваемую по "защищенным" протоколам: ssh, ssl, https. arp_antidote - средство для активной борьбы с атаками типа arpoison (arp spoofing), используемых для осуществления MitM-атак утилитами типа ettercap.

buggzy (alienhard@mail.ru)

Уже давно известна уязвимость протокола ARP к атаке, получившей название arpoison. Атака позволяет перенаправлять данные, предназначенные одному компьютеру в локальной сети, на другой. Это широко используется, особенно в атаках типа Man in the Middle, позволяющих перехватывать информацию, передаваемую по "защищенным" протоколам: ssh, ssl, https. Программа ettercap, позволяющая человеку без специальных знаний перехватывать пароли, передаваемые по SSH, основана именно на атаке arpoison.

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

Предлагаемое решение позволяет не только обнаружить, но и предотвратить атаку типа arpoison. При этом оно не имеет никаких "побочных эффектов" - не перекладывает функции протокола ARP на плечи администратора (нет необходимости вручную прописывать статические записи), позволяет машинам менять соответствие IP <-> MAC автоматически. Контролируются только arpoison-атаки.

arp_antidote - средство для активной борьбы с атаками типа arpoison (arp spoofing), используемых для осуществления MitM-атак утилитами типа ettercap.

Патч arp_antidote изменяет реализацию протокола ARP в linux kernel так, что провести атаку arpoison становится невозможно.

Установка патча.

Патч написан для ядра 2.4.19, однако, тестировался и в 2.4.18 и, предположительно, подходит для любого ядра 2.4. Для установки скачайте antidote.diff.gz в каталог с исходным кодом ядра linux,

распакуйте его

gzip -d antidote.diff.gz

и примените патч:

patch -p1 < antidote.diff

После применения патча и перекомпиляции фичу нужно разрешить (по умолчанию она запрещена) через sysctl:

sysctl -w net.ipv4.neigh.eth0.arp_antidote=1 - разрешить на интерфейсе eth0

sysctl -w net.ipv4.neigh.eth0.arp_antidote=0 - запретить

Когда фича запрещена, работает стандартная реализация протокола ARP. При приеме пакета ARP-reply (посылаемого при атаке arpoison) ядро обновляет запись в кеше, если она там уже была, независимо от ее старого значения.

Если фичу разрешить, то при приеме ARP-reply производится сравнение старого и нового MAC-адреса,

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

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

При обнаружении подозрительной ситуации ("двойника") ядро выводит сообщение:

"ARP_ANTIDOTE: Possible MITM attempt!", и не обновляет запись ARP-кеша, а наоборот, прописывает старую запись как статическую. После предотвращения таким образом непосредственной угрозы атаки следует приступить к принятию организационных мер против горе-хакера :) Затем статическую запись можно опять удалить.

Нам интересно ваше мнение: результаты тестирования, в том числе положительные :), и нужна ли такая система вообще, следует ли делать версию для FreeBSD.

4E9
ЛЕТ
ЭВОЛЮЦИИ
МИМО
Антипов жжет
МЫ СТАЛИ СРЕДОЙ, НА КОТОРОЙ ВЫРАСТАЕТ НЕЧТО ИНОЕ.
Разум впервые проектирует разум напрямую. Сингулярность уже вшита в логику повседневных решений. Техноманифест.