ICQCorp
Навигатор О проекте Новости Ссылки Установка ФАКи Скриншоты Благодарности Документы PostgreSQL Скачать Об авторе Гостевая книга Russian English IServerd project

--- Как я получаю и анализирую пакеты протоколов.

Бывает меня спрашивают об инструментах, которые я использую, чтобы получить пакеты, создаваемые ICQ и о том как анализировать полученную информацию. В качестве инстумента я использую snort. Вы можете скачать его вот здесь. Это очень полезная программа, которую можно также использовать для обнаружения атак на вашу машину.

Для получения сетевых пакетов ICQ я запускаю snort в режиме демона со следующими параметрами: ./snort -D -i ed0 -d -c ./rule.txt -l ./log, где ed0 - интерфейс на моем маршрутизаторе (FreeBSD), rule.txt - файл правил, для фильтрации, чтобы из всего траффика сети выделять только нужный. Этот файл может содержать много правил, но в нашем случае достаточно одной строки: log udp any any <> any 4000.

В этом режиме снорт будет записывать все проходящие пакеты в в каталог log Когда я занимался анализом протокола V3 - я просто брал и читал лог-файлы снорта Но при исследовании протокола V5 возникли сложности - часть пакетов была зашифрована. Для решения этой проблемы я написал небольшую утилиту дешифрации и к ней perl-скрипт, который анализирует лог-файл и с помощью утилиты дешифрует шифрованные пакеты. Скачать эту утилиту и скрипт можно здесь. Этот скрипт очень прост в использовании. Удалите разделительные линии из лог-файла и запустите его с именем лог-файла в качестве параметра: ./parse.pl snort.log. После обработки вы получите файл log.txt.new, который содержит незашифрованные пакеты.

Вот пример расшифрованного куска из лога snort:





Я выделил цветом некоторые поля, чтобы показать вам как анализируются эти данные.

Желтый - поле с номером версии протокола.
Розовый - поле с номером uin пользователя
Голубой - поле c номером сессии клиента
Зеленый - поле с кодом команды
Красный - номера последовательности 1 и 2
Оранжевый - поле контрольной суммы пакета

Остальная часть пакета содержит параметры команды. Эта часть для различных команд будет различна, т.е. она переменной длины.

Описание  ] Установка  ] Спасибо(а)  ] Скрины  ] Постгрес  ] Скачать  ]
Новости  ] ФАКи  ] Автор  ] Ссылки  ] Документы  ] Отзывы  ]
Webmaster
А.В.Шутко