В этом лабораторном занятии вы узнаете, как экспортировать пакеты из Wireshark, мощного анализатора сетевых протоколов. Экспорт пакетов имеет решающее значение для сетевого анализа, устранения неполадок и проведения сетевых расследований. Кроме того, это позволяет вам делиться захваченными данными с коллегами.
В рамках этого лабораторного занятия вы будете захватывать сетевой трафик, применять фильтры для целевого выбора определенных типов коммуникации и экспортировать захваченные данные в различных форматах для дальнейшего анализа.
Skills Graph
%%%%{init: {'theme':'neutral'}}%%%%
flowchart RL
wireshark(("Wireshark")) -.-> wireshark/WiresharkGroup(["Wireshark"])
wireshark/WiresharkGroup -.-> wireshark/installation("Installation and Setup")
wireshark/WiresharkGroup -.-> wireshark/interface("Interface Overview")
wireshark/WiresharkGroup -.-> wireshark/packet_capture("Packet Capture")
wireshark/WiresharkGroup -.-> wireshark/display_filters("Display Filters")
wireshark/WiresharkGroup -.-> wireshark/export_packets("Exporting Packets")
wireshark/WiresharkGroup -.-> wireshark/packet_analysis("Packet Analysis")
subgraph Lab Skills
wireshark/installation -.-> lab-415945{{"Экспорт пакетов из Wireshark"}}
wireshark/interface -.-> lab-415945{{"Экспорт пакетов из Wireshark"}}
wireshark/packet_capture -.-> lab-415945{{"Экспорт пакетов из Wireshark"}}
wireshark/display_filters -.-> lab-415945{{"Экспорт пакетов из Wireshark"}}
wireshark/export_packets -.-> lab-415945{{"Экспорт пакетов из Wireshark"}}
wireshark/packet_analysis -.-> lab-415945{{"Экспорт пакетов из Wireshark"}}
end
Понимание и установка Wireshark
Wireshark является одним из наиболее широко используемых анализаторов сетевых протоколов в мире. В компьютерных сетях общение происходит с помощью небольших единиц, называемых пакетами. Представьте пакеты как маленькие конверты, которые переносят данные по сети. Wireshark позволяет вам захватывать эти пакеты и анализировать их, что позволяет вам увидеть, что происходит в вашей сети на очень детальном уровне. Это как микроскоп для вашей сети, который помогает вам понять, как данные передаются и есть ли какие - то проблемы.
Запуск Wireshark
Сначала нам нужно открыть Wireshark. Для этого мы начнем с открытия окна терминала. Терминал представляет собой текстовый интерфейс, в котором вы можете вводить команды для взаимодействия с компьютером. Вы можете открыть окно терминала двумя способами:
Нажмите Ctrl+Alt+T на клавиатуре. Это сочетание клавиш позволяет быстро открыть терминал.
В качестве альтернативы вы можете нажать на значок терминала на панели задач. Панель задач обычно находится внизу или по бокам экрана и содержит значки различных приложений.
После открытия терминала мы используем команду для запуска Wireshark. В терминале введите следующую команду и нажмите Enter:
wireshark
При выполнении этой команды откроется приложение Wireshark. Вы увидите список доступных сетевых интерфейсов. Сетевые интерфейсы - это соединения, которые ваш компьютер использует для общения с другими устройствами в сети, например Wi - Fi или Ethernet.
После открытия Wireshark потратьте немного времени на изучение интерфейса. Понимание его структуры облегчит вам использование этого инструмента в будущем.
Верхняя часть показывает доступные сетевые интерфейсы. Именно здесь вы выберете, с какого сетевого соединения Wireshark будет захватывать пакеты.
Средняя часть показывает недавно открытые файлы. Если вы ранее использовали Wireshark и открывали какие - то файлы с захваченными пакетами, они будут перечислены здесь для быстрого доступа.
Нижняя часть содержит полезные ссылки и функции. Они могут помочь вам в выполнении различных задач, например, получить помощь или получить доступ к дополнительным инструментам.
Понимание интерфейса Wireshark
Перед тем, как мы начнем захватывать пакеты, важно знать, что делает каждая часть интерфейса Wireshark. Эта информация поможет вам эффективно пользоваться этим инструментом и находить нужную информацию.
Меню: Как и в других приложениях, меню содержит стандартные пункты, такие как Файл, Редактировать, Вид и т.д. Вы можете использовать эти меню для выполнения общих действий, таких как открытие нового файла, сохранение захвата или изменение параметров вида.
Основная панель инструментов: Основная панель инструментов содержит ярлыки для часто используемых функций. Эти ярлыки позволяют быстрее выполнять задачи, которые вы будете использовать часто, например, запуск или остановка захвата пакетов.
Поле фильтра: Поле фильтра очень полезно. Оно позволяет применять фильтры отображения к захваченным пакетам. Это означает, что вы можете сузить список пакетов, которые вы видите, на основе определенных критериев, например, исходного или целевого IP - адреса.
Панель списка пакетов: Эта панель показывает каждый захваченный пакет в отдельной строке. Она дает вам быстрый обзор всех захваченных пакетов.
Панель деталей пакета: Когда вы выбираете пакет в панели списка пакетов, панель деталей пакета показывает подробную информацию о этом пакете. Это включает такие вещи, как используемый протокол, исходный и целевой адреса, а также другие соответствующие данные.
Панель байтов пакета: Эта панель показывает исходные байты выбранного пакета. Это полезно, если вы хотите увидеть фактические данные, которые передаются в пакете.
Теперь, когда вы понимаете основы интерфейса Wireshark, вы готовы начать захватывать сетевой трафик.
Захват сетевого трафика
На этом этапе вы узнаете, как захватывать сетевые пакеты, что является основным функционалом Wireshark. Захват пакетов - это своего рода инструмент детектива, который позволяет вам увидеть всю сетевую коммуникацию, происходящую в вашей системе. Это важно, так как дает вам ясное представление о том, какие данные входят и выходят из вашего устройства, что может быть решающим для различных целей, таких как устранение сетевых неполадок или анализ потенциальных угроз безопасности.
Запуск захвата пакетов
В главном интерфейсе Wireshark вы увидите список доступных сетевых интерфейсов. Эти интерфейсы можно представить как различные двери, через которые ваше устройство может подключиться к сети. Каждый интерфейс представляет собой разный способ передачи и приема данных вашим устройством, например Wi-Fi, Ethernet или виртуальное сетевые соединение. Найдите этот список, чтобы выбрать подходящий интерфейс для захвата пакетов.
Выберите интерфейс eth1, кликнув на него. Это ваш основной Ethernet - соединение. Ethernet - это распространенный способ подключения устройств к локальной сети с использованием физического кабеля. Выбрав eth1, вы выбираете захватывать сетевой трафик, проходящий через это конкретное Ethernet - соединение.
Нажмите на синий значок акулы в панели инструментов, чтобы начать захват пакетов. Этот значок является кнопкой запуска захвата пакетов в Wireshark. В качестве альтернативы вы можете двойным кликом нажать на интерфейс eth1. После запуска захвата Wireshark начнет собирать все сетевые пакеты, проходящие через выбранный интерфейс.
Теперь вы должны увидеть, как пакеты захватываются и отображаются в режиме реального времени. Каждая строка представляет собой отдельный пакет. В деталях пакета содержится следующая информация:
Номер пакета: Это уникальный идентификатор каждого пакета, который помогает вам отслеживать порядок захвата пакетов.
Время с начала захвата: Показывает, сколько времени прошло с момента запуска захвата пакетов, когда был захвачен этот конкретный пакет.
Исходный адрес: Это адрес устройства, которое отправило пакет. Он помогает вам определить, откуда приходят данные.
Целевой адрес: Это адрес устройства, для которого предназначен пакет. Он показывает, куда направлены данные.
Протокол: Протокол указывает на правила и стандарты, используемые для коммуникации. Например, TCP, UDP или HTTP - это распространенные протоколы.
Длина пакета: Показывает, сколько данных содержится в пакете.
Информация о пакете: Предоставляет более подробную информацию о содержимом и назначении пакета.
Генерация сетевого трафика
Чтобы увидеть более интересный трафик, давайте сгенерируем некоторый HTTP - трафик, посетив веб - сайт. HTTP (Hypertext Transfer Protocol) - это протокол, используемый для передачи веб - страниц по интернету. Сгенерировав HTTP - трафик, вы сможете увидеть фактический обмен данными, происходящий при посещении веб - сайта.
Пока Wireshark работает, откройте новый терминал, нажав Ctrl+Alt+T. Терминал - это командная строка, в которой вы можете вводить команды для взаимодействия с системой.
Используйте команду curl для запроса веб - страницы:
curl www.google.com
Команда curl - это инструмент для передачи данных от или к серверу. В этом случае вы используете ее для запроса веб - страницы Google. Вы должны увидеть HTML - содержимое домашней страницы Google в выводе терминала. Это показывает, что запрос был успешным и вы получили данные от сервера Google.
Вернитесь в Wireshark и посмотрите на новые пакеты, которые были захвачены. Вы должны увидеть DNS, TCP и HTTP - пакеты, связанные с вашим запросом к Google. DNS (Domain Name System) используется для преобразования доменных имен, таких как www.google.com, в IP - адреса. TCP (Transmission Control Protocol) отвечает за установление надежной связи между вашим устройством и сервером. HTTP используется для передачи фактических данных веб - страницы.
Остановка захвата и сохранение данных
Чтобы остановить захват пакетов, нажмите на красный квадрат - кнопку остановки в панели инструментов. Это остановит процесс сбора новых пакетов.
Теперь, когда вы захватили некоторые пакеты, сохраните их в файл:
Нажмите на File в меню. Меню содержит различные параметры для управления сессией Wireshark, такие как открытие, сохранение и экспорт файлов.
Выберите Save As. Этот параметр позволяет вам выбрать место и имя файла, в котором вы хотите сохранить захваченные пакеты.
Перейдите в каталог /home/labex/project. Именно здесь вы будете хранить захваченные данные пакетов.
Введите capture.pcapng в качестве имени файла. Расширение .pcapng указывает, что файл находится в формате PCAPNG, который является стандартным форматом для хранения сетевых пакетных данных.
Нажмите Save.
Файл теперь сохранен. Формат PCAPNG сохраняет все данные захвата и является форматом по умолчанию для Wireshark. Это означает, что все детали о захваченных пакетах, такие как исходные и целевые адреса, протоколы и содержимое пакетов, хранятся в файле.
Вы успешно захватили сетевой трафик и сохранили его в файл. На следующем этапе вы узнаете, как фильтровать эти пакеты, чтобы сосредоточиться на определенных типах трафика.
Фильтрация пакетов
В реальных сетевых сценариях при захвате сетевого трафика файлы с захваченными данными могут быть чрезвычайно большими, содержащими тысячи или даже миллионы пакетов. Анализ всех этих пакетов сразу может быть трудоемким и неэффективным. Именно здесь на помощь приходит фильтрация. Фильтрация - это важный метод, который позволяет сосредоточиться на определенных типах трафика. Сужая круг рассматриваемых пакетов, вы можете сделать процесс анализа гораздо более управляемым и быстрее найти нужную информацию.
Понимание фильтров отображения
Wireshark оснащен мощным языком фильтрации. Этот язык позволяет отображать только те пакеты, которые соответствуют определенным критериям. Вот несколько распространенных способов использования фильтров отображения:
Фильтрация по протоколу: Вы можете отображать пакеты определенного протокола, например HTTP, DNS или TCP. Это полезно, когда вы интересуетесь определенным типом сетевой коммуникации. Например, если вы исследуете веб - трафик, вы, возможно, захотите сосредоточиться на пакетах HTTP.
Фильтрация по IP - адресу: Вы можете отображать пакеты, отправленные с определенного IP - адреса или полученные от него. Это помогает отслеживать коммуникацию между определенными устройствами в сети.
Фильтрация по содержимому: Вы можете отображать пакеты, содержащие определенное содержимое. Это удобно, когда вы ищете определенные ключевые слова или данные в пакетах.
Комбинирование условий: Вы можете использовать логические операторы для комбинирования нескольких условий. Это позволяет создавать более сложные и точные фильтры.
Применение базовых фильтров
Сначала откройте файл с захваченными пакетами в Wireshark. После открытия файла обратите внимание на верхнюю часть окна Wireshark. Вы увидите текстовое поле с синим фоном. Это поле для фильтра. Именно здесь вы будете вводить критерии фильтрации.
Предположим, что вы хотите отфильтровать HTTP - трафик. HTTP - это протокол, используемый для веб - коммуникации. Для этого просто введите в поле фильтра следующее:
http
После ввода фильтра у вас есть два способа его применить. Вы можете нажать клавишу Enter на клавиатуре или нажать на стрелку вправо рядом с полем фильтра. После этого Wireshark начнет применять фильтр к списку пакетов.
После применения фильтра в списке пакетов должны отобразиться только пакеты HTTP. Однако, если вы не видите никаких пакетов, возможно, в вашем файле с захваченными данными нет HTTP - трафика. В этом случае вы можете попробовать использовать фильтр tcp. TCP - это основной транспортный протокол, и применение этого фильтра покажет все TCP - пакеты в файле с захваченными данными.
Если вы хотите очистить фильтр и снова увидеть все пакеты, есть два способа сделать это. Вы можете нажать на кнопку "X" справа от поля фильтра или удалить текст фильтра в поле и нажать клавишу Enter.
Использование расширенных фильтров
Давайте рассмотрим более конкретные фильтры, чтобы уточнить анализ пакетов.
Предположим, что вы интересуетесь только HTTP - запросами GET. Запрос GET - это распространенный тип HTTP - запроса, используемый для получения данных с сервера. Чтобы отобразить только эти запросы, введите в поле фильтра следующий фильтр:
http.request.method == "GET"
Нажмите клавишу Enter, чтобы применить фильтр. Затем Wireshark просмотрит список пакетов и отобразит только HTTP - запросы GET.
После применения фильтра, если вы не видите никаких пакетов, это означает, что в вашем файле с захваченными данными, возможно, нет HTTP - запросов GET.
Теперь давайте попробуем другой фильтр. Если вы хотите увидеть все TCP - пакеты, предназначенные для порта 80 (который является стандартным портом для HTTP), введите в поле фильтра следующий фильтр:
tcp.dstport == 80
Нажмите клавишу Enter, чтобы применить этот фильтр.
После применения фильтра в списке пакетов должны отобразиться все TCP - пакеты, отправленные на порт 80.
Комбинирование фильтров
Вы можете сделать свои фильтры еще более мощными, комбинируя несколько фильтров с использованием логических операторов.
Предположим, что вы хотите увидеть пакеты, которые относятся либо к HTTP, либо к DNS. DNS - это протокол, используемый для преобразования доменных имен в IP - адреса. Чтобы создать фильтр для этого, введите в поле фильтра следующее:
http or dns
Нажмите клавишу Enter, чтобы применить фильтр.
После применения фильтра в списке пакетов должны отобразиться как HTTP, так и DNS - пакеты.
Фильтрация - это мощная функция в Wireshark, которая позволяет сосредоточиться на пакетах, наиболее важных для вашего анализа. По мере накопления опыта работы с Wireshark вы сможете создавать более сложные фильтры, адаптированные к вашим конкретным потребностям.
Экспорт пакетов
После захвата и фильтрации пакетов часто возникает необходимость их экспорта. Экспорт пакетов позволяет провести более глубокий анализ, создать документацию или поделиться данными с другими людьми. Wireshark предоставляет несколько форматов экспорта, и каждый формат предназначен для различных сценариев использования.
Понимание форматов экспорта
Wireshark поддерживает несколько форматов экспорта. Вот краткое описание каждого из них:
PCAP/PCAPNG: Это формат по умолчанию для файлов с захваченными пакетами. Он сохраняет все данные точно в том виде, в котором они были захвачены, что делает его идеальным для хранения и повторного использования пакетных данных.
CSV (Comma - Separated Values): Этот формат отлично подходит для импорта пакетных данных в электронные таблицы или базы данных. Он структурирует данные в табличной форме, которую легко анализировать с использованием обычных инструментов анализа данных.
TXT (Plain Text): Человекочитаемый формат. Он полезен для создания документации, так как представляет информацию о пакетах в простой текстовой форме, которую каждый может понять.
XML: Структурированный формат. Его можно легко обработать с помощью скриптов или других инструментов, что делает его подходящим для автоматического анализа.
PSML/PDML: Это специальные форматы Wireshark. PSML используется для сводок пакетов, а PDML предоставляет подробную информацию о пакетах.
Экспорт определенных пакетов
Начнем с экспорта некоторых пакетов из вашего захвата.
Сначала вам нужно очистить все примененные фильтры. Для этого нажмите кнопку "X" в поле фильтра. При очистке фильтров будут отображены все захваченные пакеты. Этот шаг важен, так как он дает вам полный обзор всех захваченных пакетов, позволяя выбрать те, которые вы хотите экспортировать.
Затем выберите пакеты, которые вы хотите экспортировать. Вы можете сделать это, кликнув на первый пакет. Затем, удерживая клавишу Shift, кликните на другой пакет. Это выделит все пакеты между ними. Если вы хотите выбрать все пакеты, просто нажмите Ctrl+A.
После выбора пакетов нажмите на File в меню. Затем выберите Export Specified Packets.... Этот вариант позволяет сохранить выбранные пакеты в определенном формате.
В появившемся диалоговом окне экспорта:
Перейдите в каталог /home/labex/project. Именно здесь вы сохраните экспортированный файл.
Проверьте раскрывающийся список "Save as type". Если Wireshark/tcpdump/... - pcap не выбран, выберите его. Формат PCAP является широко используемым форматом для пакетных данных.
Введите exported.pcap в качестве имени файла. Это будет именем вашего экспортированного файла.
Если вы не выбрали все пакеты, убедитесь, что выбран вариант "Selected packets only". Это гарантирует, что будут экспортированы только те пакеты, которые вы выбрали.
Наконец, нажмите Save.
Теперь вы успешно экспортировали выбранные пакеты в файл в формате PCAP. Этот файл можно открыть в любом инструменте, поддерживающем формат PCAP, а не только в Wireshark. Это дает вам гибкость в использовании различных инструментов для дальнейшего анализа.
Экспорт в формате CSV
Теперь давайте экспортируем те же данные в формате CSV. Формат CSV очень полезен для анализа в электронных таблицах.
Убедитесь, что пакеты по-прежнему выбраны. Если нет, нажмите Ctrl+A, чтобы снова выбрать все пакеты. Затем нажмите на File в меню и выберите Export Packet Dissections.... Этот вариант позволяет экспортировать пакетные данные в различных форматах.
Нажмите на кнопку As CSV.... Это установит формат экспорта в CSV.
В диалоговом окне экспорта:
Перейдите в каталог /home/labex/project для сохранения файла.
Введите exported.csv в качестве имени файла.
Нажмите Save.
Теперь вы экспортировали пакетные данные в файл в формате CSV. Чтобы просмотреть содержимое этого файла, вы можете использовать следующую команду в терминале:
head -n 10 /home/labex/project/exported.csv
Эта команда отобразит первые 10 строк файла CSV. Она показывает заголовки столбцов и некоторые пакетные данные, давая вам быстрый обзор того, что находится в файле.
Экспорт байтов пакета
Иногда вам может понадобиться экспортировать фактические сырые байты пакета. Вот как вы можете это сделать:
Выберите один пакет в списке пакетов. Это пакет, сырые байты которого вы хотите экспортировать.
Щелкните правой кнопкой мыши по пакету и выберите Export Packet Bytes.... Этот вариант позволяет сохранить сырые данные пакета.
В диалоговом окне экспорта:
Перейдите в каталог /home/labex/project.
Введите packet_bytes.bin в качестве имени файла.
Нажмите Save.
Теперь вы экспортировали сырые байты выбранного пакета. Это может быть очень полезно для детального анализа или для извлечения файлов, встроенных в пакеты.
Эти варианты экспорта дают вам большую гибкость в анализе и обмене данными о захваченных пакетах. Выбор формата зависит от ваших конкретных потребностей и инструментов, которые вы планируете использовать для дальнейшего анализа.
Резюме
В этом практическом занятии вы научились использовать Wireshark, мощный анализатор сетевых протоколов, для захвата, фильтрации и экспорта сетевых пакетов. Сначала вы ознакомились с интерфейсом Wireshark и захватили текущий сетевой трафик. Затем вы научились применять фильтры для целенаправленного поиска определенных типов трафика, таких как HTTP - запросы или TCP - коммуникации. Наконец, вы изучили различные способы экспорта пакетов в форматах, таких как PCAP и CSV, для дальнейшего анализа или обмена данными.
Эти навыки являются обязательными для сетевых администраторов, аналитиков безопасности и ИТ - профессионалов. Они позволяют эффективно решать проблемы в сети, расследовать инциденты безопасности и понимать поведение сети. Освоение возможностей экспорта пакетов в Wireshark представляет собой ценный инструмент для кибербезопасности и сетевого анализа, заложив основу для более продвинутых методов, применимыых в реальных ИТ - и безопасности - ролях.