Я хотел бы знать, как выполнить простую ядовитую ARP-атаку только с помощью команд UNIX (без ettercap, arpspoof или чего-либо подобного). Меня не волнует пересылка пакетов на реальный маршрутизатор, я просто хочу их отбросить. Я слышал, что он работает, отправляя поддельные пакеты arp на машины, которые хотят знать, каков MAC-адрес маршрутизатора. Как это можно сделать как можно проще?

1 ответ1

2

Поскольку Linux и BSD (включая OS X) расходятся, инструкции о том, как сделать это на данной Unix-подобной ОС, также расходятся. Вот несколько инструкций для OS X.

  1. Найдите IP-адрес вашего маршрутизатора, возможно, запустив netstat -rnaf inet и посмотрев на маршрут по умолчанию в верхней части списка.
  2. Найдите MAC-адрес вашего маршрутизатора, возможно, запустив arp -an и отыскивая IP-адрес вашего маршрутизатора.
  3. Сообщите вашему сетевому интерфейсу использовать MAC-адрес вашего маршрутизатора:
    sudo ifconfig en0 ether 00:11:22:33:44:55
  4. Надеюсь, что это работает. Без специализированных инструментов для подмены ARP вы зависите от ARP-кода вашего сетевого стека. Если ваш сетевой стек имеет современный код ARP, он может не пытаться получить этот MAC-адрес, если его уже использует кто-то другой (который, конечно, будет: ваш маршрутизатор).

Мне не известны какие-либо широко распространенные, «встроенные» инструменты командной строки Unix, которые позволяют вам подделывать пользовательские пакеты ARP. Вот почему люди устанавливают другие команды, такие как arpspoof и ettercap .

В OS X вы можете передавать любую произвольную последовательность байтов, которая вам нравится, с помощью средства ядра Berkeley Packet Filter. Просто open(2) устройство /dev/bpfX , используйте ioctl(2) чтобы подключить его к интерфейсу, например en0 , и записать в него байты. Каждая отдельная запись (то есть каждый буфер байтов, переданный в индивидуальном вызове write(2)) передается как пакет. Но это немного больше того, что вы можете легко сделать с помощью сценария оболочки. Я думаю, что большинство серых бород Unix взяли бы маленький инструмент C, чтобы сделать это. Но это в основном перевоплощает ключевую функциональность какого-либо другого хорошо известного инструмента ARP-спуфинга, и в современных средах Unix проще сказать менеджеру пакетов установить arpspoof или ettercap или что-то еще.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .