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

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

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

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

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


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL wireshark(("Wireshark")) -.-> wireshark/WiresharkGroup(["Wireshark"]) wireshark/WiresharkGroup -.-> wireshark/display_filters("Display Filters") wireshark/WiresharkGroup -.-> wireshark/packet_analysis("Packet Analysis") wireshark/WiresharkGroup -.-> wireshark/commandline_usage("Command Line Usage") subgraph Lab Skills wireshark/display_filters -.-> lab-548939{{"Использование фильтров отображения в Tshark"}} wireshark/packet_analysis -.-> lab-548939{{"Использование фильтров отображения в Tshark"}} wireshark/commandline_usage -.-> lab-548939{{"Использование фильтров отображения в Tshark"}} end

Чтение файла с использованием -r tcp.pcap

На этом этапе вы научитесь считывать файл захвата пакетов с помощью командной строки инструмента Wireshark tshark. Опция -r является одной из самых основных команд в tshark, которая позволяет вам указать файл захвата пакетов (PCAP) для анализа. Это аналогично открытию файла в графическом интерфейсе Wireshark, но выполняется через командную строку.

  1. Сначала нам нужно перейти в каталог, содержащий наш файл захвата пакетов. Откройте терминал и выполните следующую команду:

    cd ~/project

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

  2. В лабораторной среде предоставлен пример файла захвата пакетов с именем tcp.pcap. Прежде чем пытаться прочитать его, убедимся, что он существует:

    ls -l tcp.pcap

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

    -rw-r--r-- 1 labex labex 12345 Jan 1 00:00 tcp.pcap

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

  3. Теперь мы используем tshark для чтения и отображения файла захвата пакетов:

    tshark -r tcp.pcap

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

  4. Вывод будет показывать каждый пакет с базовой информацией в столбцах:

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

    Каждая строка представляет один сетевой пакет, показывая его номер, временную метку, исходный и назначательный IP-адреса, протокол (здесь TCP) и флаги TCP.

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

Фильтрация по исходному IP с использованием -Y "ip.src==192.168.1.1"

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

  1. Сначала убедитесь, что вы находитесь в правильном каталоге, где хранится ваш файл захвата пакетов. Это важно, так как tshark должен знать, где найти файл, который вы хотите проанализировать:

    cd ~/project
  2. Теперь отфильтруем пакеты, исходящие с конкретного IP-адреса 192.168.1.1. Флаг -r указывает входной файл, а -Y применяет наше условие фильтрации. Синтаксис фильтра ip.src==192.168.1.1 означает "показать только пакеты, у которых исходный IP равен 192.168.1.1":

    tshark -r tcp.pcap -Y "ip.src==192.168.1.1"
  3. Команда выведет только те пакеты, которые соответствуют нашим критериям фильтрации. Обратите внимание, как каждая запись показывает исходный IP (192.168.1.1) и назначательный IP, а также другие детали протокола:

    1 0.000000 192.168.1.1 → 192.168.1.2 TCP 74 80 → 49234 [SYN] Seq=0 Win=64240 Len=0
    3 0.000456 192.168.1.1 → 192.168.1.2 TCP 66 80 → 49234 [ACK] Seq=1 Ack=1 Win=64240 Len=0
  4. Чтобы лучше понять эффект фильтрации, сравните этот вывод с неотфильтрованными результатами, которые вы видели ранее. Это показывает, как фильтры отображения помогают выделить конкретные шаблоны трафика из больших файлов захвата.

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

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

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

  1. Сначала перейдите в каталог проекта, где хранится ваш файл захвата пакетов. Это гарантирует, что tshark сможет найти файл, который вы хотите проанализировать:

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

    tshark -r tcp.pcap -Y "ip.src==192.168.1.1 and tcp.port==80"
  3. Вывод будет показывать только те пакеты, которые соответствуют обоим критериям. Например, вы можете увидеть HTTP-запросы с указанного IP-адреса:

    1 0.000000 192.168.1.1 → 192.168.1.2 TCP 74 80 → 49234 [SYN] Seq=0 Win=64240 Len=0
    5 0.001234 192.168.1.1 → 192.168.1.2 HTTP 145 GET /index.html HTTP/1.1
  4. Обратите внимание, как этот комбинированный фильтр дает более нацеленные результаты, чем использование отдельных фильтров. Сравните этот вывод с тем, что вы видели при фильтрации только по IP или только по порту, чтобы понять, как комбинирование фильтров помогает выделить конкретные шаблоны трафика.

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

Проверка вывода с использованием -P

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

  1. Сначала убедитесь, что вы находитесь в правильном каталоге, где расположен ваш файл захвата пакетов. Это важно, так как tshark должен иметь доступ к файлу pcap, который мы будем анализировать:

    cd ~/project
  2. Теперь мы используем tshark для фильтрации и отображения пакетов, исходящих из IP-адреса 192.168.1.1 и передающихся по TCP-порту 80. Команда объединяет три важных флага:

    • -r для чтения из файла захвата
    • -Y для применения фильтра отображения
    • -P для отображения подробной информации о пакетах
    tshark -r tcp.pcap -Y "ip.src==192.168.1.1 and tcp.port==80" -P
  3. Опция -P предоставляет иерархическое разбиение содержимого каждого пакета. Вот как может выглядеть пример вывода, показывающий разные уровни протоколов:

    Frame 1: 74 bytes on wire (592 bits), 74 bytes captured (592 bits)
    Ethernet II, Src: 00:11:22:33:44:55, Dst: 66:77:88:99:aa:bb
    Internet Protocol Version 4, Src: 192.168.1.1, Dst: 192.168.1.2
    Transmission Control Protocol, Src Port: 80, Dst Port: 49234, Seq: 0, Ack: 0, Flags: SYN
  4. Обратите внимание, как этот вывод показывает более технические детали, чем предыдущие команды без -P. Вы можете увидеть:

    • Информацию о физическом уровне (Ethernet)
    • Адреса сетевого уровня (IP)
    • Номера портов и флаги транспортного уровня (TCP)
  5. Когда вы закончите изучать вывод, вы можете остановить отображение, нажав Ctrl+C. Эта комбинация клавиш работает в большинстве терминалов Linux для прерывания текущей команды.

Резюме

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

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