Исходник программы, показывающей пример отправки поддельных ARP пакетов. Тем самым Вы можете заставить компьютер A думать, что его IP уже занят в сети или заставить компьютер A, обменивающийся данными с компьютером B слать данные не B, а другому компьютеру, и тем самым перехватывать чухой трафик (атака ARP Spoofing).
Зависимости
Для работы программы должна быть установлена библиотека WinPcap (NDIS драйвер) для работы с сокетами в "сыром" режиме.
Описание
Стек протоколов TCP/IP оперирует IP адресами (4 байта), тогда как физически сетевой адаптер идентифицируется по MAC адресу (6 байт). Для нормальной работы TCP/IP необходимо иметь таблицу соответствия MAC-IP. Эта таблица может быть статической или динамической, в последнем случае операционная система время от времени отсылает в сеть специальный широковещательный пакет, спрашивая кто такой IP: xx.xx.xx.xx, а в ответ получает пакет вроде: за этим IP скрывается MAC: yy:yy:yy:yy:yy:yy.
Эта система получила название Address Resolution Protocol (ARP).
Но его слабость заключается в том, что ОС поправит свою таблицу адресов, если мы отошлем ей поддельный ARP ответ даже без запроса. Пользуясь таким методом можно заставить определенный компьютер думать, что его IP уже занят кем-то в сети, или же можно заставить компьютер А думать, что компьютер B это компьютер C (Ваш), таким образом, если А будет обмениваться данными с B, Вы сможете перехватить весь этот трафик (для этого нужно еще пересылать данные дальше, куда их планировал отправить A).
Даная программа позволяет Вам отсылать ARP пакеты, задавая значение каждому полю. Вы можете указывать диапазон IP адресов целей (см. исходники). Введя например 192.168.0.1-255 Вы можете блокировать работу целой сети, но пожалуйста, не делайте этого!
Важно!
Данная программа представлена лишь в качестве обучающего примера. Тестировать ее на живых сетях и компьютерах настоятельно не рекомендуется.