САБЖ нужно подменить мак-адрес то, что это реализовывается через ринг0 - в курсе, по другому и быть не может ---------------------- 1. Просьба дать ссылки, где об этом можно почитать 2. Если у кого-нить есть исходники либо ссылки на исходники,- сбросьте в ПМ 3. Нужен алгоритм. Т.е. что и за чем делаем. По пунктам. (По скольку, я уверен, что этим многие занимались и делать с нуля то, что уже сделано, - не совсем рационально). Всем откликнувшимся заранее благодарен
Смотри примеры windows 2000 ddk и windows xp ddk (network/ndis). Там все ясно описано и даже уже реализовано. из win2000: packet - отправка и прием пакетов прям с сетевухи. В отличие от Raw socket доступен для изменения ethernet заголовок (с мак адресами). Т.е. можно отправлять пакеты с любого mac на любой mac. из win xp: filter - фильтрация всего проходящего траффика. Можно подменять маки в уходящих и приходящих пакетах. Как я понял, это то что тебе нужно.
Для общего образования раздел статей на этом сайте по сетям (http://www.wasm.ru/article.php?article=othergalaxy)
Смысл простой Через сетевуху проходят много паетов... Драйвером, сравниваются маки пакетов и мак сетевухи если пакет не нам, то мы его выкидываем Так вот, нужно, чтобы велись логи всех приходящих пакетов, не зависимо от их маков...
nitrotoluol Ну ловить пакеты и анализировать их можно с помощью winpcap, а вот отбрасывать ненужные - это нужно писать NDIS минипорт драйвер (Firewall). На форуме SteelRat выкладывал пример фаервола на асме. Глянь вдруг поможет.
TermoSINteZ вот как раз выбрасывать нам ничего и не нужно... нужно ловить все, что приходит к нам на сетевуху...и что проходит через нашу сетевуху.
Ну тогда все очень просто. Переключаем сетевуху в Promics mode и pcap ловишь все пакеты. (смотри пример tcpdump)
sMAC использует реестр, а именно HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\0001\NetworkAddress="FFFFFFFFFFFF". После перезагрузки сетевого подключения MAC меняется
да я вот тоже его найти шото не могу. Но в какой то версии ddk точно есть, я из него кусок кода выдергивал. так тебе подменить надо адрес или просто логить пакеты? Тогда используй дров из ддк packet.sys, он может все хватать (даже ничего менять не надо). Там прога к нему как пример идет, которая перехватывает и отправляет пакеты. Можно конечно использовать winpcap, но тогда с собой надо будет тягать ее дллки ему не то нужно. Это ты можешь поменять мак своей сетевухи (программно), а у него задача - хватать пакеты и дергать оттуда макадреса. И причем {4D36E972-E325-11CE-BFC1-08002bE10318} - это только для твоей системы.