Настройка отображения временных меток в Tshark

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

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

Введение

В этом практическом занятии (лабораторной работе) вы научитесь настраивать отображение временных меток в утилите tshark из пакета Wireshark для более эффективного анализа сетевого трафика. Вы изучите ключевые методы, такие как чтение файлов PCAP с использованием параметра -r и форматирование временных меток в формате UTC (-t u) или в формате эпохи Unix (-t e).

Практические упражнения помогут вам применить различные форматы временных меток, чтобы удовлетворить разные потребности в анализе. Вы будете практиковаться в использовании команд, таких как tshark -r capture.pcap -t u, чтобы стандартизировать отображение времени по всем часовых поясам или получить точные временные метки в формате эпохи Unix.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL wireshark(("Wireshark")) -.-> wireshark/WiresharkGroup(["Wireshark"]) wireshark/WiresharkGroup -.-> wireshark/packet_analysis("Packet Analysis") wireshark/WiresharkGroup -.-> wireshark/commandline_usage("Command Line Usage") subgraph Lab Skills wireshark/packet_analysis -.-> lab-548919{{"Настройка отображения временных меток в Tshark"}} wireshark/commandline_usage -.-> lab-548919{{"Настройка отображения временных меток в Tshark"}} end

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

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

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

cd ~/project

Опция -r (сокращение от "read", т.е. "читать") сообщает tshark считывать пакеты из указанного файла с захваченными пакетами, а не из активного сетевого трафика. В нашем случае мы будем анализировать заранее подготовленный пример файла с именем capture.pcap, который содержит типичные данные сетевого взаимодействия.

Для отображения базовой информации о пакетах из нашего файла с захваченными пакетами выполните следующую команду:

tshark -r capture.pcap

Эта команда покажет вам последовательный список всех пакетов в файле, где каждая строка представляет один сетевой пакет. Вывод включает несколько важных полей:

  • Номера пакетов (показывающие порядок захвата)
  • Временные метки (записывающие, когда был захвачен каждый пакет)
  • IP-адреса источника и назначения
  • Типы протоколов (например, TCP, UDP или ICMP)
  • Размеры пакетов в байтах
  • Краткие описания содержимого пакетов

Вот пример того, как может выглядеть вывод для установления соединения TCP:

1 0.000000 192.168.1.1 → 192.168.1.2 TCP 66 443 → 34512 [SYN] Seq=0 Win=64240 Len=0
2 0.000123 192.168.1.2 → 192.168.1.1 TCP 66 34512 → 443 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0

В этом примере мы видим два пакета: первый - это пакет TCP SYN, инициирующий соединение с 192.168.1.1 на 192.168.1.2 по порту 443, а второй - это ответный пакет SYN-ACK. Опция -r является важной для изучения ранее захваченного сетевого трафика и составляет основу для более продвинутых методов анализа пакетов.

Установка формата UTC с помощью -t u

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

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

cd ~/project

Параметр -t u сообщает tshark преобразовать все временные метки в формат UTC. Это отличается от локального системного времени. Мы сочетaremos эту опцию с опцией -r (которую вы узнали на предыдущих этапах) для чтения нашего примерного файла с захваченными пакетами:

tshark -r capture.pcap -t u

После выполнения этой команды вы увидите вывод, похожий на следующий, с четкими временными метками в формате UTC:

1 2023-01-01 00:00:00.000000 UTC 192.168.1.1 → 192.168.1.2 TCP 66 443 → 34512 [SYN] Seq=0 Win=64240 Len=0
2 2023-01-01 00:00:00.000123 UTC 192.168.1.2 → 192.168.1.1 TCP 66 34512 → 443 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0

Обратите внимание, что каждая временная метка теперь содержит обозначение "UTC". Этот формат особенно полезен, когда вы анализируете логи серверов, расположенных в разных географических местах, или сотрудничаете с членами команды, находящимися в разных часовых поясах. Формат UTC устраняет путаницу при использовании временных ссылок, так как он не зависит от настроек локального часового пояса.

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

Использование эпохи времени с помощью -t e

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

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

cd ~/project

Теперь мы будем использовать опцию -t e вместе с опцией -r (которая означает "читать") для обработки нашего примерного файла с захваченными пакетами. Базовая структура команды проста: укажите входной файл после -r и добавьте -t e для форматирования времени в формате эпохи:

tshark -r capture.pcap -t e

После выполнения этой команды вы увидите вывод, похожий на следующий, где во второй колонке отображаются временные метки в формате эпохи:

1 1672531200.000000 192.168.1.1 → 192.168.1.2 TCP 66 443 → 34512 [SYN] Seq=0 Win=64240 Len=0
2 1672531200.000123 192.168.1.2 → 192.168.1.1 TCP 66 34512 → 443 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0

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

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

Для лучшего понимания различий вы можете сравнить этот вывод с результатами из предыдущего примера с форматом UTC. Просмотр обоих форматов рядом поможет вам понять, как один и тот же момент времени может быть представлен различными способами.

Отображение пакетов с помощью -P

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

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

cd ~/project

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

tshark -r capture.pcap -P

Вот как выглядит типичный пакет в этом формате:

Packet 1:
    Arrival Time: Jan  1, 2023 00:00:00.000000000 UTC
    Epoch Time: 1672531200.000000000 seconds
    Frame Number: 1
    Frame Length: 66 bytes
    Protocols: eth:ethertype:ip:tcp
    Source: 192.168.1.1
    Destination: 192.168.1.2
    Source Port: 443
    Destination Port: 34512
    TCP Flags: 0x002 (SYN)

Формат -P особенно полезен в нескольких ситуациях:

  • Когда вам нужно быстро просмотреть конкретные поля в пакетах без напряжения для глаз
  • Когда вы хотите передать вывод другим командам для дальнейшей обработки, так как структурированный формат упрощает разбор
  • Когда вы предпочитаете более организованное представление информации о пакетах, аналогичное тому, как пакеты отображаются в графическом интерфейсе Wireshark

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

Резюме

В этом практическом занятии вы научились настраивать отображение временных меток в Tshark с помощью практических командной строки опций. В упражнениях показано, как считывать файлы с захваченными пакетами с помощью -r capture.pcap и форматировать временные метки в формате UTC с использованием -t u для согласованного анализа временных зон.

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