![]() |
Фильтры траффика или как украсть ценную информацию
Сейчас практически везде есть интернет, а это значит, что существуют сервера, которые его раздают. Крупные офисные сети, локальные сети, провайдеры ммм как много вкусной информации ;)
Анализаторов трафика или снифферов сейчас предостаточно, лично я пользуюсь wireshark, но мы же круты и напишем простейший сниффер на Си Ну, теперь трафика у нас предостаточно, что же мы будем с ним делать? Анализировать товарищи! но не руками, а функциями :) Давайте для начала напишем функцию, которая будет показывать логины и пароли при подключении Mail Agent-а. Изучив документацию по протоколу MRA становится ясно, что для подключения клиент должен послать пакет MRIM_CS_LOGIN2 Цитата:
Код:
int *mraTest(unsigned char *buffer,size_t buflen)теперь чтобы наша функция работала в паре с нашим снифером допишем ее сюда Код:
...но тут не все так просто лично я не знаю на данный момент программы, которая использует не шифрованную версию авторизации (кстати, в QIPе была галочка о простом доступе), а подобрать MD5 хеш пароля очень сложно ведь он по старым стандартам генерировался так Цитата:
Нет, мы реализуем кое-что поинтереснее, мы будем перехватывать переписку! Открыв сниффер включив миранду и отправив другу, сообщение я выяснил, что она отправляет сообщения вот таким макаром, а если быть еще точнее то таким. За дело! сохраняем дамп пакета и начинаем кодить... Код:
void ICQtestMessage(unsigned char *buffer,size_t szbuffer)теперь прикрепляем его в наш сниффер Код:
...Если задумываться о развитии этого проекта, то можно скрестить его с базами данных и вести нехилое хистори пользователей сети хех ну или искать в сообщениях слова алах-агбар и палить IP пользователя компетентным органам :D З.Ы: по закону у каждого провайдера должен стоят сервер ФСБ, а что он там делает :cool: . В моем универе не хилая сеть, а администраторы мои друзья. Не дай бог там проверить почту зайти в аську или контакт :cool: |
Gar|k, в большинстве сетей трафик идет через шлюз, а следовательно единственный выход ARP спуфинг, что сразу палится управляемыми свичами
так что снифер в большинстве случаев не актуален |
Эмм да возможно для большинства обывателей он и не доступен, но лично я не обычный обыватель и имею доступ к шлюзам-серверам. Самым распространненым примером может служить офисная сеть, которой нет только у компании где нет компьютеров :)
так что твое "большинство" распространяется лишь на ушастых юзеров. Я думаю их доля на этом форуме мала, хотя... |
тогда такой вопрос
если ты админ, то нафиг тебе использовать снифер для воровства паролей из Mail Agent-а. ? у тебя же есть доступ к машине и ты спокойно через софт можешь вытащить любые пароли |
Цитата:
и кстати можно узнать с каких пор на шлюзах стали ставить ОС Windows? а этот ваш сниффер он как бы только под нее откомпилируется |
2 fire64 - так не интересно ))) потом подобный подход можно использовать в трояне...
существуют много путей различных, можно расшифровывать файлы истории (Mail Agent) программ, можно вытаскивать пароли из памяти (дамп памяти процесса), можно вообще использовать аппаратный кейлогер, а можно анализировать траффик! я привел примеры и надеюсь что люди заинтересуются и напишут свои версии для протола POP, HTTP, FTP... |
2 bons сниффер да, но фильтры написаны на Си, что нам мешает приспособить их для чтения файла отчета тогоже TCPdump-а ? )
|
Удобное если ты владелец шлюза / прокси.
Потмоу как во многих локалках админ не может заходить на компы юзверей |
2 bons, эм вот вариант для UNIX с использованием tcpdump в качестве сниффера
Код:
packet_filter.c: |
а вот так будет выглядеть симбиоз tcpdump-а и фильтра в windows ;)
Код:
#include "stdafx.h"длинну передаваемого пакета можно определить по IP заголовку... дальше посмотреть заголовки TCP и если например порты которые мы фильтруем совпадают то вычеслить размер пакета и забрать его полностью из буфера чтения... а дальше анализировать ой как весело зная что это приблизительно за пакет хех )) удаче |
Цитата:
А наверно еще проще было бы заюзать уже существующие анализаторы дампов типа ngrep. Даже если подходящих не найдешь то во всяком случае писать такое стоило бы на perl или shell, так быстрее |
OSCAR (ICQ), MRA бинарные протоколы... в типизированых языках проще перевести нужное в byte word dword, а на perl пришлось бы извращатся с функцией pack и тому подобное... конечно для текстовых протоколов таких как HTTP, IRC, POP, SMTP perl предпочтительней. Но я надеюсь что моя программа обойдет по скорости Perl скрипт )) в крайнем случае для Си/Cи++ есть библеотека PCRE - реализующая работу регулярных выражений в стиле Perl
|
Мне статья понравилась)
|
| Время: 16:33 |