logo search
Методические указания для АЗ-ИБ

Активный сниффинг

В коммутируемой сетевой среде пакеты передаются только в тот порт, которому они предзназначены, в соответствии с MAC-адресом получателя. Для этого требуется аппаратура, способная создавать и хранить таблицы,связывающие МАС-адреса с определёнными портамив зависимости от того, какое устройство подключено к каждому пору.

Преимущество коммутируемой среды в том, что устройства получают только те пакеты, которые им предназначены, а поэтому устройства в неразборчивом режиме (promisc mode) не могут перехватывать чужие пакеты. Но даже в коммутируемой среде существуют способы получения чужих пакетов. Важным элементом передачи данных в сети, позволющим получать любопытные результаты, является адрес отправителя. Сетевые протоколы никоим образом не гарантируют совпадение адреса отправителя в пакете с действительным адресом машины-отправителя. Поддержка адреса отправителя в пакете называется спуффингом (spoofing). В большинстве систем предполагается истинность адреса отправителя. Спуффинг первый шаг в перехвате пакетов в коммутируемой среде. Ещё две интересные детали обнаруживаются в ARP. Во-первых, если в ответе ARP содержится адрес, который уже есть в кэше ARP, приёмная система заменяет прежний MAC-адрес новым, полученным в ответе (если только запись в кэше ARP не была явно помечена как немодифицируемая). Вторая особенность ARP состоит в том, что система принимает ответ ARP, даже если она не посылала запрос ARP. Это происходит потом, что информация о состоянии трафика ARP не хранится, чтобы сберечь память и не усложнять простой протокол. Учитывая эти три обстоятельства, атакующий может перехватывать сетевой трафик в коммутируемой сети с помощью технологии, известной как переадресация ARP (ARP redirection). Атакующий посылает ответы ARP с фальшивыми адресами отправителя некоторым устройствам, в результате чего записи в кэше ARP этих устройств модифицируются данными, переданными атакующим. Эта технология называется порчей кэша ARP (ARP cache poisoning). Для перехвата сетевого обмена данными между точками А и В атакующий должен испортить кэш ARP у В, чтобы В считал, что IP-адрес А также находится по MAC-адресу атакующего. После этого машина атакующего просто должна пересылать все пакеты их настоящему конечному получателю; при этом весь трафик между А и В оказывается доставленным адресату, но пройдя при этом через машину атакующего.

Поскольку А и В присоединяют свои собственные заголовки Ethernet к отправляемым пакетам, исходя из соответствующих кэшей ARP, то IP-пакеты А, предназначенные для В, фактически отправляются по MAC-адресу атакующего, и наоборот. Коммутатор фильтрует трафик только на основе МАС-адресов, поэтому согласно своему предназначению будет отсылать IP-пакеты А и В, направляемые по MAC-адресу атакующего, в порт атакующего. После этого атакующий заменяет заголовки пакетов Ethernet, в которых содержатся IP-пакеты, правильными и направляет их обратно в коммутатор, который перешлёт их настоящим адресатам. Коммутатор работает правильно: это потерпевшие машины удалось обманным путём заставить переадресовать свой трафик на машину атакующего. В соответствии с установленными значениями тайм-аутов потерпевшие машины периодически посылают настоящие запросы ARP и получают на них настоящие ответы ARP. Для того чтобы атака переадресации не была из-за этого сорвана, атакующий должен периодически портить кэши ARP атакуемых машин. Для этого можно просто регулярно посылать поддельные ответы ARP обеим машинам А и В, например, каждые 10 секунд.