2012-04-21 11 views
3

Я программирую с Python и его партнером Scapy. Я столкнулся с ситуацией, когда я не знаю, является ли это нормальным поведением из протокола ARP или какой-то другой проблемой.

Поведение Spoof MAC Address communication

У меня есть такой сценарий:

1- ВМ машина (1) посылающий "ARP запрос" на другую виртуальную машину машины (2) с подмененного MAC Address поля (сгенерированный с Scapy).

2 - ВМ машина (2) принимает, что «ARP запрос» с поля адреса источника MAC и ОТВЕЧАЕТ поддельные, что с «ARP-ответ». Странная часть заключается в том, что машина vm (1) получает это.

Примечания: Я подтвердил с Wireshark, что первый пакет (ARP Request) попадает на виртуальную машину машины (2) с Source MAC Address Field ДЕЙСТВИТЕЛЬНО подделать. И непримиримый режим на сетевых интерфейсах отключен, поэтому машины vm получают только пакеты, которые ДЕЙСТВИТЕЛЬНО предназначены для их интерфейсов.

Итак, мои вопросы:

а) Это нормальное поведение от ARP протокола?

б) Поскольку VM машина (1) имеет другой MAC-адрес, настроенный на интерфейсе (реальная), как пакет ответа, посылаемого с Vm машины (2) с другой MAC-адрес на поле Destination (который подменяется, поэтому даже не существует в сети) поступает на vm-машину (1) и эффективно обрабатывается машиной vm (1), как действительный «ответ ARP» ??

+0

Вы говорите о кешировании ARP? Если машины получают ответ ARP (не предназначенный для него), он будет кэшировать его в своем локальном кеше. В конце концов, если кто-то объявляет, что «00-1F-29-52-E7-81 находится в 1.1.1.1», почему бы не добавить отображение записи arp 1.1.1.1 -> 00-1f-29-52-e7-81. –

+0

Также вы можете проверить, есть ли какие-либо другие пакеты от машины vm 2 до vm machine 1, которая отправляется по широковещательному адресу? vm machine 1 может отправлять сообщения arp (которые даже на интерфейсах с беспорядочным отключенным режимом будут получать). –

+0

Привет, Дэвид, я продемонстрирую (** Пакет 1 - Запрос **) - Кто имеет IP 192.168.2.2? - MAC-адрес источника: 22: 22: 22: 11: 11: 11 (Поддельный) - MAC-адрес назначения: ff: ff: ff: ff: ff: ff (Broadcast) ******** (* Пакет 2 - Ответ *) - IP 192.168.2.2 находится на 44: 44: 44: 44: 44: 44 - Исходный MAC-адрес: 44: 44: 44: 44: 44: 44 - MAC-адрес назначения: 22:22: 22: 11: 11: 11 (Spoofed) **** Вопрос: Как Packet2 (ответ) возвращается на машину vm (1), если пакет содержит MAC-адрес Fake Destination, который не является реальным MAC-адресом, настроенным на vm сеть машины (1) iface? – StarkBR

ответ

0

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

Ну, попробуйте проверить на столе ARP на VM (2) и см., какую запись MAC она хранит для VM (1); вероятно, вы обнаружите, что законный MAC-адрес кэшируется из-за некоторых сообщений, прежде чем вы обманываете MAC-адрес.

+0

Я сделал это. Таблица ARP из VM (2) показывает Spoofed IP и ссылается на Spoofed MAC. Таким образом, реальный MAC из VM (1) даже не существует в таблице ARP (2) VM, но ответ ARP отправляется обратно на виртуальную машину (1), помня, что она поступает на виртуальную машину (1) с помощью Spoofed MAC Address at Destination поле. – StarkBR

+0

Итак, нет ссылок на реальный MAC из VM (1), но ответ ARP по-прежнему отправляется обратно VM (1) с помощью VM (2). – StarkBR

+0

хорошо, что такое программное обеспечение виртуализации, которое вы используете, и какой тип виртуальной сети вы реализуете? – MYZ

 Смежные вопросы

  • Нет связанных вопросов^_^