Использование фильтров отображения в Tshark

WiresharkBeginner
Практиковаться сейчас

Введение

В этом лабораторном практикуме вы научитесь использовать фильтры отображения в командной строке Wireshark tshark для эффективного анализа сетевого трафика. Вы будете практиковаться в чтении файлов захвата пакетов (capture.pcap) и применении фильтров для выделения определённых шаблонов трафика, таких как пакеты от конкретных IP-адресов или TCP-портов.

Практические упражнения помогут вам освоить ключевые команды tshark, включая -r для чтения файлов и -Y для применения фильтров. Лабораторная работа делает упор на сравнении результатов с фильтром и без него, чтобы улучшить ваши навыки по устранению неполадок в сети.

Проверка установки Tshark и образцового файла

На этом начальном этапе вы подтвердите, что инструмент командной строки tshark установлен и что образец файла захвата пакетов доступен в вашей рабочей директории. Это гарантирует готовность вашей среды для последующих задач анализа сети.

  1. Сначала проверьте установку tshark, проверив его версию. Откройте терминал и выполните:

    tshark -v

    Вы должны увидеть вывод, похожий на этот, указывающий на установку tshark:

    TShark (Wireshark) X.Y.Z (Git vX.Y.Z-gXXXXXXXXXXXX)
    ...

    Номера версии (X.Y.Z) могут отличаться, но наличие вывода подтверждает готовность tshark.

  2. Далее перейдите в директорию проекта, где находится образец файла захвата пакетов. Это стандартная рабочая директория для этого практикума:

    cd ~/project
  3. Проверьте, что образец файла захвата пакетов capture.pcap существует в этой директории. Этот файл будет использоваться для всех последующих этапов анализа:

    ls -l capture.pcap

    Вы должны увидеть вывод, похожий на этот:

    -rw-r--r-- 1 labex labex 123456 Янв 1 00:00 capture.pcap

    Этот вывод подтверждает права доступа, владельца, размер и дату изменения файла, указывая на его наличие и доступность.

Чтение файла захвата пакетов с помощью -r

В этом шаге вы узнаете, как читать и отображать содержимое файла захвата пакетов с помощью tshark. Флаг -r является основополагающим для указания входного файла, позволяя tshark анализировать предварительно записанный сетевой трафик вместо захвата данных в реальном времени.

  1. Убедитесь, что вы находитесь в директории ~/project, так как именно там расположен наш файл capture.pcap:

    cd ~/project
  2. Теперь используйте tshark для чтения и отображения всех пакетов из файла capture.pcap:

    tshark -r capture.pcap

    Флаг -r указывает tshark на чтение из указанного файла. Эта команда выведет сводку каждого пакета непосредственно в ваш терминал.

  3. Вывод будет отображать основную информацию для каждого пакета в столбцах. Вы увидите такие детали, как номер пакета, метка времени, исходные и конечные IP-адреса, протокол и краткое описание. Например:

    1   0.000000 10.0.2.15 → 10.0.0.2 TCP 74 80 → 49234 [SYN] Seq=0 Win=64240 Len=0
    2   0.000123 10.0.0.2 → 10.0.2.15 TCP 74 49234 → 80 [SYN, ACK] Seq=0 Ack=1 Win=29200 Len=0
    ...

    Каждая строка представляет один сетевой пакет, предоставляя краткий обзор трафика.

  4. Поскольку capture.pcap содержит множество пакетов, вывод будет непрерывно прокручиваться. Чтобы остановить отображение и вернуться к командной строке, нажмите Ctrl+C. Эта комбинация клавиш безопасно завершит процесс tshark.

Фильтрация по источнику IP с помощью -Y "ip.src==10.0.2.15"

В этом шаге вы узнаете, как применять фильтр отображения, чтобы показывать только пакеты, исходящие от определенного исходного IP-адреса. Опция -Y в tshark позволяет использовать мощную синтаксическую конструкцию фильтров отображения Wireshark для сужения анализа до релевантного трафика.

  1. Убедитесь, что вы находитесь в директории ~/project:

    cd ~/project
  2. Теперь отфильтруйте файл capture.pcap, чтобы отобразить только пакеты, где исходный IP-адрес равен 10.0.2.15. Фильтр ip.src==10.0.2.15 задаёт это условие:

    tshark -r capture.pcap -Y "ip.src==10.0.2.15"

    Флаг -Y применяет предоставленный в кавычках фильтр отображения.

  3. Команда выведет только пакеты, соответствующие критериям фильтра. Вы заметите, что каждый отображаемый пакет имеет 10.0.2.15 в качестве исходного IP-адреса:

    1   0.000000 10.0.2.15 → 10.0.0.2 TCP 74 80 → 49234 [SYN] Seq=0 Win=64240 Len=0
    3   0.000456 10.0.2.15 → 10.0.0.2 TCP 66 80 → 49234 [ACK] Seq=1 Ack=1 Win=64240 Len=0
    ...

    Сравните этот вывод с результатами без фильтрации из предыдущего шага. Это демонстрирует, как фильтры отображения помогают сосредоточиться на определённых шаблонах трафика в большом файле захвата.

  4. После завершения проверки отфильтрованного вывода нажмите Ctrl+C, чтобы остановить отображение и вернуться к командной строке.

Комбинирование фильтров с помощью -Y "ip.src==10.0.2.15 и tcp.port==80"

В этом шаге вы научитесь объединять несколько фильтров отображения с помощью логических операторов для уточнения анализа сетевого трафика. Используя оператор and, вы можете указать, что пакеты должны удовлетворять всем определённым условиям, чтобы быть отображёнными, что позволяет проводить высоконаправленные исследования.

  1. Убедитесь, что вы находитесь в директории ~/project:

    cd ~/project
  2. Теперь давайте отфильтруем пакеты, которые одновременно удовлетворяют двум условиям: они должны исходить от IP-адреса 10.0.2.15 И использовать TCP-порт 80 (обычно используемый для HTTP-трафика). Оператор and гарантирует, что оба условия должны быть истинными для включения пакета в вывод:

    tshark -r capture.pcap -Y "ip.src==10.0.2.15 and tcp.port==80"

    Эта команда отобразит только пакеты, которые соответствуют как критериям исходного IP-адреса, так и критериям TCP-порта.

  3. Вывод будет содержать только пакеты, удовлетворяющие обоим условиям. Например, вы можете увидеть HTTP-запросы или ответы с указанного IP-адреса:

    1   0.000000 10.0.2.15 → 10.0.0.2 TCP 74 80 → 49234 [SYN] Seq=0 Win=64240 Len=0
    5   0.001234 10.0.2.15 → 10.0.0.2 HTTP 145 GET /index.html HTTP/1.1
    ...

    Обратите внимание, как этот объединённый фильтр даёт более точные результаты по сравнению с использованием отдельных фильтров. Этот метод имеет решающее значение для изоляции конкретных разговоров или трафика приложений.

  4. После завершения проверки вывода нажмите Ctrl+C, чтобы вернуться к командной строке.

Проверка вывода с помощью -P (Подробный просмотр пакетов)

В этом заключительном шаге вы узнаете, как отобразить подробную информацию о отфильтрованных пакетах с помощью опции -P утилиты tshark. Флаг -P особенно полезен, когда вы хотите видеть сводки пакетов, одновременно записывая пакеты в файл, или когда используется с другими опциями, подавляющими вывод.

  1. Убедитесь, что вы находитесь в директории ~/project:

    cd ~/project
  2. Сначала давайте посмотрим разницу между использованием -P и его отсутствием при записи в файл. Запустите эту команду без -P:

    tshark -r capture.pcap -Y "ip.src==10.0.2.15 and tcp.port==80" -w filtered.pcap

    Обратите внимание, что никакая информация о пакетах не отображается на экране, потому что пакеты записываются в файл.

  3. Теперь запустите ту же команду с опцией -P:

    tshark -r capture.pcap -Y "ip.src==10.0.2.15 and tcp.port==80" -w filtered.pcap -P

    С флагом -P вы увидите сводки пакетов, отображаемые на экране, в то время как пакеты одновременно записываются в файл:

    1   0.000000 10.0.2.15 → 10.0.0.2 TCP 74 80 → 49234 [SYN] Seq=0 Win=64240 Len=0
    2   0.000123 10.0.2.15 → 10.0.0.2 TCP 74 80 → 49234 [ACK] Seq=1 Ack=1 Win=64240 Len=0
    ...
  4. Ещё один полезный сценарий — это сочетание -P с -q (режим без вывода). Сначала попробуйте только -q:

    tshark -r capture.pcap -Y "ip.src==10.0.2.15 and tcp.port==80" -q

    Это подавляет весь вывод пакетов и показывает только счётчик в конце.

  5. Теперь объедините -q с -P:

    tshark -r capture.pcap -Y "ip.src==10.0.2.15 and tcp.port==80" -q -P

    Опция -P переопределяет подавление -q и снова отображает сводки пакетов.

Опция -P наиболее полезна, когда вам нужно отслеживать обработку пакетов одновременно с сохранением отфильтрованных результатов в файл или когда вы хотите переопределить подавление вывода другими опциями, такими как -q.

Резюме

В этом лабораторном практикуме вы научились эффективно применять фильтры отображения с помощью командной строки Wireshark tshark для анализа сетевого трафика. Вы практиковались в чтении файлов PCAP с помощью -r, фильтрации по IP-адресам и портам с помощью -Y и объединении условий с логическими операторами, такими как and.

Упражнения продемонстрировали, как изолировать определённые шаблоны трафика и проверять результаты с помощью -P, снабдив вас необходимыми навыками для целенаправленного анализа пакетов. Эти методы позволяют эффективно устранять неполадки, сосредотачиваясь на релевантных сетевых данных.