Добрый день! Подскажите пожалуйста как сменить локальный MAC адрес на своей машине? Нашел метод через СОМ интерфейс и реестр, но может есть еще методы? Может через WinPcap? ... парень один вроде делает, ему на форум отослал, но он чего-то молчит ((( Поделитесь пожалуйста. ))
Если память мне не изменяет, менять MAC-адреса можно было под старые сетевые карты, современные сетевые эту фичу не поддерживают, если только ручками напрямую EEPROM не портачить
Realtek 8139 поддерживал однозначно, я этих MAC-адресов в своё время переменял изрядно. Утилита называлась rset8139 то ли .com то ли .exe. Работала, ессно, только из-под голого ДОСа.
Нашел бородатую статью про МАС-flooding Так там идею в том чтобы забИть таблицу коммутатора ложными строками IP-MAC и как только это произойдет - наступить всеобщее счастье )) Так вот скрипт работает по принципу: 1. Меняю свой МАС 2. Делаю пинг 3. goto 1. Да вот как менять свой мас кроме как через СОМ - хотел спросить ))
_sheva740 Так при помощи WinPСap посылай свой ARP пакет адресату. Да можно попробовать и через WinAPI функу SendARP.
Kaimi T800 Конечно слать пакет. Дело не в том чтобы слать пакет. Тут же таблицу забить нужно ))) Не ну там руководство типа такое Код (Text): #!/bin/sh for zm_8 in 0 1 2 3 4 5 6 7 8 9 a b c d e f do for zm_9 in 0 1 2 3 4 5 6 7 8 9 a b c d e f do for zm_10 in 0 1 2 3 4 5 6 7 8 9 a b c d e f do for zm_11 in 0 1 2 3 4 5 6 7 8 9 a b c d e f do for zm_12 in 0 1 2 3 4 5 6 7 8 9 a b c d e f do ifconfig eth0 down ifconfig eth0 hw ether 00:00:0${zm_8}:${zm_9}${zm_10}:${zm_11}${zm_12} up arp -s <nieuzywany_adres_ip> 00:05:05:05:6c:05 ping <nieuzywany_adres_ip> -c 1 & done done done done done echo ${zm} Строку ifconfig eth0 hw ether 00:00:0${zm_8}:${zm_9}${zm_10}:${zm_11}${zm_12} up хотел реализовать. Поляки пишут что так работает.))) Какой-то так cisco забомбили, он стал как хаб работать , тоесть всем все на все порты ))
Так вот и вопрос - как сменить свой МАС с помощью WinPСap? Слать самому себе пакет ARP с МАС-ом - не получается, да и долго((
Что-то у ТС какая-то путаница с таблицами. На коммутаторах таблицы MAC->port или (MAC+VLAN)->port, никакого отношения к ARP-протоколу не имеющие. ARP - это таблица IP->MAC, к процессам коммутации Ethernet-фреймов никакого отношения не имеющая. На коммутаторе может быть конечно помимо таблиц MAC[,VLAN]->port еще и таблица ARP, но она касается только управляющего IP-адреса на коммутаторе и его connected-IP-подсети. MAC[,VLAN]->port строятся динамически на основе MAC-адресов любых ethernet-фреймов (совсен необязательно ARP), приходящих на порты. Пришел фрейм с некоторым source-MAC-адресом на некоторый порт N - в таблицу MAC->port заносится информация, что данный MAC находится за данным портом и фреймы с таким destination-MAC-адресом надо отправлять именно на такой порт (в случае с VLAN проверяется на допустимость еще и метка VLAN на tagged-портах). Так что все-таки надо для начала разобраться, отравление ARP-таблиц на хостах данного ethernet-сегмента вы хотите устроить, или MAC flapping в таблице коммутатора. ARP-отравление устраивается путем отправки ложных ARP-ответов или gratuitus-ARP со своим маком, но с чужим IP-адресом. Для этого просто в raw-сокете надо сформировать ARP-фрейм ручками. MAC-флаппинг устраивается путем отправки любых Ethernet-фреймов с чужим MAC-адресом. Это можно сделать не на любых сетевухах, а только на тех, что позволяют менять свой MAC (поскольку поле source-MAC-адрес при отправке фрейма заполняется Ethernet-контроллером аппаратно).
Как вариант - попробовать менять в реестре и потом "отключить/включить" Ethernet-интерфейс, если дело под виндами. Сначала задать руками какой-то мак-адрес для Ethernet-интерфейса, скажем, 112233445566 (11-22-33-44-55-66, 1122.3344.5566) через стандаритные виндовые средства (Сетевые подключения, ЛВС или высокоскоростной интернет - "подключение по локальной сети 1" или как у вас называется, Свойства/ Подключение через: настроить/закладка дополнительно, свойство "сетевой адрес"). В реестре скорее всего где-то появится параметр NetworkAddress с данным маком (у меня появился). А вообще зачем вам такая гадость? за что-то невзлюбили своего провайдера? Хакнуть таким методом вряд-ли что можно - теоретически при переполнеии таблицы MAC->port фреймы начнут рассылаться по всем портам и можно будет подслушать чужой трафик, но практически скорее всего от Ethernet-шторма ляжет сеть оператора, и вообще ничего не будет работать, пока шторм не прекратится.
Да с провайдером все в порядке будет конечно )) Этот тип атаки реален для рамок локальной сети. Интересно чужой трафик снифером послушать в локалке офиса, интересно и реально вполне ))) Может менеджер Иванова любит меня, а я не знаю ))) Видать кроме реестра никак под виндой. Ну ничего, если что выйдет отпишусь ))
Ну смотри, если коммутатор управляемый, а админ не баран - глянет таблицу форвардинга на коммутаторе и настучит по башке пользователю конкретного порта. Производительность сети заметно ведь упадет, особенно если кто-то пересылает по сети крупные файлы - фактически вся эта пересылка начнет размножаться в такое количество раз, сколько портов задействовано в твоем влане. И это только если один коммутатор. А если несколько - твой макфлуд ведь подействует на все коммутаторы, не только на ближайший.
Dmitry_Milk Не ну ты тоже фантаст ))) кто туда смотрит вообще, тем более это состояние быстро восстанавливается после прекращения флуда. Поляки говорят (они на убунтах все провели) что за обеденный перерыв все успели. Т.е. за час. Узнали пасс на внутренний ftp одной рудой пани )) Вполне реально )) Да оно проясняется. Меняется МАС только через реестр. Меняется он для всех сетевух. Даже те которые не позволяют сменить свой МАС (он прошит), так они все равно его дублируют в реестре, а в реестре можно менять. Разница в программах только в том как резетнули сетевуху после смены мака. Можно: - через интерфейс SetupAPI - через NetShell.dll и из нее NcFreeNetconProperties() - или перезагрузиться )) Я у своего админа на работе только что спросил - так он и не знал программируемый у него коммутатор или нет )))
Да не может такого быть. Явно не аппаратно, т.к. меняя MAC в настройках сетевухи (в реестре), меняеется и значение поля src-MAC ы Eth-части. Можно через WinPCap спокойно отправлять "тройное рукопожатие" и при этом самому указывать все байтики. Только при этом надо отключить в свойствах соединения все ненужные сервисы ("Протокол Интернет" + "Клиент для сетей MS").