Получение пакетов для разных MAC-адресов

можно ли перехватить некоторые пакеты в беспорядочном режиме (например, с помощью winpcap) и затем заставить ОС (приложения) получать их, поскольку они были отправлены для нашего MAC?

Мое наблюдение следующее. Мы можем:

  • захватить весь сетевой трафик, используя неразборчивый режим (winpcap)
  • фильтровать/изменять пакеты с помощью firewall-hook/filter-hook
  • отправлять пакеты в сеть с измененным MAC

Я не уверен, может ли firewall-hook получить доступ ко всем доступным пакетам благодаря неразборчивому режиму. Разве это не нижний слой? Если это невозможно, единственным решением будет захват нужных пакетов и повторная отправка их в сеть с измененным MAC-адресом?

Я новичок в сети, так что будьте со мной полегче :)

Любая помощь приветствуется. Заранее спасибо.


person Petr Peller    schedule 16.02.2010    source источник


Ответы (3)


Вы держите пальцы ног на линии белых/черных хакеров. Я знаю, что моя компания активно следит за беспорядочными сетевыми картами, выслеживает владельцев и убивает (увольняет) их. Может быть, если вы спросите нас, что вы пытаетесь сделать, мы можем предложить некоторые предложения.

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

person No Refunds No Returns    schedule 16.02.2010
comment
Все, что я хочу сделать, это иметь 2 MAC/IP-адреса на одной сетевой карте. К сожалению, сетевая карта не поддерживает эту функцию, но я уверен, что есть обходные пути ... и, конечно, мне любопытно :) - person Petr Peller; 16.02.2010
comment
@Petr Зачем вам нужны два MAC-адреса? Это совершенно справедливо для одной сетевой карты с одним MAC-адресом, чтобы иметь много IP-адресов. - person Rowland Shaw; 16.02.2010
comment
@Rowland Да, но для других он по-прежнему выглядит как одно устройство. Я хотел бы смоделировать два отдельных устройства из одного. - person Petr Peller; 16.02.2010
comment
Все, что я могу предложить, это попробовать HyperV или аналогичную виртуальную среду, которая будет виртуализировать сеть через вашу единственную сетевую карту. Я знаю, что я ввожу MAC-адрес, и это то, что сообщается миру. - person No Refunds No Returns; 16.02.2010

Во-первых, да, если ваш интерфейс работает в неразборчивом режиме, то вы будете получать все «по проводу». Что уже является одной трудностью, в настоящее время многие (если не все) сети коммутируются, а это означает, что аппаратное обеспечение, внешнее по отношению к вашей системе, уже будет выполнять некоторую фильтрацию до того, как пакеты поступят в вашу систему, поэтому вам сначала нужно обмануть коммутатор в передача этих пакетов на ваш конец (можно сделать, отправив фиктивные arps, настроив коммутатор или по злому умыслу ;-)). Тогда, если эти пакеты поступят в вашу систему, что вы планируете с ними делать? Там фреймы Ethernet будут переносить IP-пакеты, как правило, с IP-адресом назначения, который уже является чем-то, чего не будет на вашем хосте (и если это так, это означает, что у вас будут дублирующиеся IP-адреса в вашей сети, что также вызывает проблемы.

Итак, главный вопрос в том, что вы действительно действительно хотите сделать?

person amo-ej1    schedule 16.02.2010
comment
Спасибо за ответ. У меня нет проблем с неразборчивым режимом (уже проверено с помощью Wireshark). Хитрость в том, что пакеты фактически будут ответами на мои запросы (отправленные с моим виртуальным MAC-адресом). Я планирую создать инструмент, который позволит различным приложениям взаимодействовать с сетью, используя одновременно разные MAC/IP-адреса. - person Petr Peller; 16.02.2010
comment
Тогда зачем вам все это переписывание и т.д.? Или почему бы вам просто не использовать свой собственный MAC-адрес и не выполнять фильтрацию на уровне IP? - person amo-ej1; 16.02.2010
comment
Потому что таким образом с двумя MAC-адресами я мог бы использовать два разных интернет-соединения и объединить их пропускную способность :) ... Я могу действовать как два узла => У меня удвоилась пропускная способность. - person Petr Peller; 16.02.2010
comment
+1 очень хороший момент о переключателях. Именно поэтому я держу при себе старый тупой хаб, когда мне нужно понюхать ссылку. - person T.E.D.; 19.02.2010

Как только вы получили пакет, он уже прошел через стек протоколов. Я не думаю, что Windows дает вам доступ к середине Winsock, который потребуется, чтобы каким-то образом вставить его обратно.

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

person T.E.D.    schedule 16.02.2010
comment
Вот почему я должен использовать драйвер брандмауэра, не так ли? Я знаю, что есть лучший способ - купить аппаратное обеспечение, которое будет поддерживать это, но я хотел бы сделать это программным способом. - person Petr Peller; 16.02.2010