SnifferView — инструмент для анализа и перехвата пакетов
Код на Gitee: https://gitee.com/lougd/snifferview.git
Код на GitHub: https://github.com/lougd/snifferview.git
Исполняемый файл после компиляции: https://pan.baidu.com/s/1XapqLl7YgjkO5yhrNPqehg
Контакты автора: qq:412776488, mail: lougdhr@126.com.
Если этот инструмент вам полезен, пожалуйста, поставьте звезду. Спасибо!
История разработки:
Этот инструмент был создан в 2015 году. Автор часто использовал Wireshark для перехвата и анализа сетевых пакетов при работе с разными терминалами. Поскольку установка пакета Wireshark была сложной и не поддерживала перехват пакетов с обратной связью в сети, автор решил создать собственный инструмент для анализа пакетов. Так появилась первая версия SnifferView. Затем автор продолжал использовать и улучшать инструмент, и появилась его текущая версия.
Основные функции и особенности:
SnifferView представляет собой стабильный, функциональный и готовый к использованию инструмент для модификации и анализа пакетов. Он может быть полезен для регулярного перехвата, анализа и записи сетевых пакетов.
Скриншоты функций инструмента:
Главный экран предоставляет обзор текущего состояния перехвата сетевых пакетов. Здесь можно увидеть информацию о количестве перехваченных пакетов, скорости передачи данных и другую статистику.
Экран отслеживания потока TCP позволяет детально изучить поток данных TCP между двумя хостами. Здесь можно видеть информацию о каждом пакете в потоке, такую как номер последовательности, номер подтверждения и данные.
Экран просмотра состояния сети позволяет просматривать информацию о состоянии сети для определённого процесса. Здесь можно видеть IP-адрес, порт и другие параметры сетевого соединения процесса.
Архитектура программы:
Программа состоит из нескольких подпроектов:
Использование:
После запуска программа начинает перехват сетевых пакетов без фильтрации. Чтобы фильтровать интересующие пакеты, необходимо ввести соответствующие правила фильтрации в поле правил фильтрации на главном экране. Правила фильтрации аналогичны тем, которые используются в Wireshark.
Правила фильтрации SnifferView включают следующие ключевые слова:
Данные в правилах фильтрации могут быть следующих типов: n8 (8-битное целое число без знака), n16 (16-битное целое число без знака), n32 (32-битное целое число без знака), byte (аналогично n8), bytes (список байтов), char (символ), chars (строка).
Логические операторы для объединения выражений: > (больше), < (меньше), >= (больше или равно), <= (меньше или равно), == (равно), != (не равно), & (побитовое И).
Выражения могут быть объединены с помощью && (И) или || (ИЛИ), а также с использованием скобок. Например, чтобы получить пакеты GET или POST длиной более 128 байт, можно использовать выражение: tcp.length>128 and (tcp[chars]==«GET» or tcp[chars]= =«POST»).
Основные улучшения в SnifferView по сравнению с Wireshark:
В Wireshark фильтрация содержимого пакетов осуществляется с использованием выражения tcp[a:b], где a — смещение от начала пакета, а b — длина совпадения. Это неудобно, так как смещение отсчитывается от заголовка TCP, который может иметь разную длину. В SnifferView смещение начинается с пользовательских данных, и программа автоматически вычисляет длину заголовка TCP. Также поддерживается фильтрация по различным типам данных и автоматическое вычисление длины совпадения. Если в строке есть символы \n\r, они автоматически заменяются на символы возврата каретки и перевода строки.
Например, выражение tcp[4:n16]==0x33ee будет соответствовать 16-разрядному целому числу 0x33ee, начиная с 4-го байта пользовательских данных. Выражение tcp[5:chars]=="aaaa" будет соответствовать строке aaaa, начиная с 5-го байта пользовательских данных.
Конфигурационный интерфейс содержит опции для выбора порядка байтов: хост (данные хранятся в порядке байтов хоста) и сеть (данные хранятся в сетевом порядке байтов). Выбор порядка байтов влияет на способ интерпретации данных в выражениях фильтрации.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )