вот написал несколько программ для freebsd, хочу поделиться. хотелось бы узнать мнения, что хорошо,что плохо. особенно интересно что плохо и почему. не хватает WEP расшифровщика, тк не могу чтото разобраться с тн слабыми векторами инициализации и прочими слабостями WEP шифрования. недавно упал tf (trafficfilter), с этим тоже както не разобрался еще. теперь краткое описание: td - открывает bpf0, привязывает его к интерфейсу, указанному в параметре, затем читает с него и пишет в STDOUT, благодаря чему есть возможность использовать его в конвейерах. usage: ./td <interface_name> (я писал изначально для своей машинки, поэтому он заточен на мои интерфейсы. критика этого момента не принимается, тк это не трудно исправить. я не стал себя утруждать) Интерфейс сет.карты переводим в желаемое состояние с помощью ifconfig. данной программе(td),считаю, не нужна такая функциональность, тк это возможно сделать используя другую(ifconfig). tf - работает на конвейере с td(либо читает с файла, соэданного td ранее). фильтрует пакеты идущие на STDIN отбирает, интересующие нас и пишет их на STDOUT. usage: ./tf -<key> <argument> ; keys: -b(BSSID), -s(SA), -d(DA), -r(RA), -t(TA) -f(FRAME) example: ./tf -b 001234567890 -s 001234567890 -f d/- (таким образом получаем фрэймы данных, не фильтруемые по подтипам (frametype/framesubtype) в зоне обслуживания 001234567890 и исходящие из данной ТД) доп.арг.: -y (если траффик не шифрованный, то этот ключ дает нам только данные начиная с заголовка SNAP. применяется только с ключем -f d/data); -yd (урезает все заголовки и пакует чистые данные в структуру: struct ipreq protocol db ? ipsrc dd? ipdest dd ? portsrc dw ? portdest dw ? seq dd ? datalen dd? data .......... ends. используется для tcat) ta - анализатор выводит многие поля из заголовков пролетающих пакетов usage: ./ta r(802.11radio) либо e(ethernet) tcat - используется пока при отсутствии шифрования в сети и объединяет тсп сегменты в файлы. как аргумент принимает путь к папке, в которой будут созданы файлы. tsrv - сервер. аргумент файл. ключ: -r (посылает файл в браузер, подключенный к нему) -s(посылает запрос по адресу переданному в параметре и возвращает браузеру ответ )))) в общем разберетесь))).... программа самая незавершенная из выше перечисленных. ti - инжектор. тоже не завершенный. на ассемблере предполагается написать функции заполнения полей фрэймов... вот тут много вопросов предстает: почему не посылаются многоадресные фрэймы, почему на одном интерфейсе посылается отдельно взятый фрэйм, а на другом - нет, почему не передаются произвольно составленные фрэймы, скажем, противоречащие сами себе??? напр. мэнедж.фрэйм с установкой флага WEP(те типа зашифрованый).....
всетаки приведу пример использования: ifconfig ath0 mediaopt monitor monitor promisc channel 6 -bgscan up cd wifi_dumper && ./td ath0 | ./tf -f d/data |./ta r ^C ./td ath0 |./tf -f d/data -yd > ../frames.traf ...time wait ./tcat files<../frames.traf ./tsrv -r files/any_file ....connect to machine with browser