В этом практическом занятии вы отправитесь в увлекательное путешествие в мир сетевого анализа с использованием Wireshark, мощного инструмента в области кибербезопасности. Представьте, что вы цифровой детектив, которому поручено понять сложные взаимодействия, происходящие в компьютерной сети. Как же увидеть, что на самом деле происходит за кулисами? Именно здесь на помощь приходит Wireshark.
Wireshark можно сравнить с микроскопом для сетевого трафика. Он позволяет вам захватывать и анализировать данные, передающиеся по сети в режиме реального времени. Эта возможность является важной для устранения неполадок в сети, обнаружения необычной активности и понимания того, как приложения обмениваются данными.
По окончанию этого практического занятия у вас будет практический опыт в следующих аспектах:
Установке и настройке Wireshark
Захвате сетевого трафика
Анализе данных пакетов
Фильтрации сетевых захватов
Идентификации распространенных протоколов
Погрузимся в увлекательный мир сетевого анализа!
Установка Wireshark
На этом этапе мы установим Wireshark на нашей системе Ubuntu. Wireshark доступен в стандартных репозиториях Ubuntu, что делает процесс установки простым.
Сначала откроем терминал. На рабочем столе найдите и откройте терминал Xfce.
Примечание: Пользователи бесплатной версии не могут подключиться к интернету, поэтому Wireshark уже предустановлен в лабораторной среде. Вы можете перейти к пункту 5 списка (проверить, установлен ли Wireshark). Перейдите к профессиональной версии, чтобы самостоятельно попрактиковаться в установке Wireshark.
Только для профессиональных пользователей
Обновим список пакетов, чтобы убедиться, что у нас есть актуальная информация о доступном программном обеспечении. Выполните следующую команду:
sudo apt update
Теперь, когда наш список пакетов обновлен, установим Wireshark. Введите следующую команду:
sudo apt install wireshark -y
Во время установки вас спросят, хотите ли вы разрешить обычным пользователям захватывать пакеты. Выберите "Да" с помощью стрелок на клавиатуре и нажмите Enter. Это позволит вам использовать Wireshark без необходимости запускать его от имени суперпользователя, что более безопасно.
После завершения установки убедитесь, что Wireshark был установлен правильно, проверив его версию:
wireshark --version
Вы должны увидеть вывод, показывающий номер версии Wireshark.
Чтобы убедиться, что у вас есть необходимые разрешения для захвата пакетов, добавьте своего пользователя в группу wireshark:
Сначала проверим, существует ли группа wireshark:
getent group wireshark
Если группа wireshark не существует, создайте ее с помощью следующей команды:
sudo groupadd wireshark
По умолчанию Wireshark запускается с правами обычного пользователя, что может ограничить его возможность захватывать пакеты с определенных интерфейсов или протоколов. Чтобы дать Wireshark необходимые разрешения с помощью Dumpcap, инструмента, который устанавливается вместе с Wireshark, используйте следующие команды:
Поздравляем! Вы только что установили один из самых мощных инструментов в арсенале сетевого аналитика.
Захват сетевого трафика
Теперь, когда мы установили Wireshark, давайте захватим некоторый сетевой трафик. Это похоже на то, чтобы установить сеть для ловли всех пакетов данных, проходящих через наш сетевой интерфейс.
Откройте Wireshark, введя wireshark в терминале и нажав Enter.
Когда Wireshark откроется, вы увидите список сетевых интерфейсов. Найдите интерфейс с именем "eth0" или "eth1" - обычно это основные сетевые интерфейсы.
Дважды щелкните по интерфейсу, чтобы начать захват пакетов. Вы увидите, как в главном окне начнут появляться пакеты.
Сгенерируем некоторый трафик для захвата. Откройте новое окно терминала и введите следующую команду:
curl http://example.com
Эта команда загрузит веб - страницу example.com, создав некоторый HTTP - трафик.
После нескольких секунд захвата нажмите красную квадратную кнопку "Стоп" в верхней части окна Wireshark, чтобы остановить захват.
Вы только что захватили свою первую партию сетевого трафика! Каждая строка в захваченных данных представляет собой пакет - небольшую единицу данных, отправляемую по сети.
Чтобы сохранить этот захват для дальнейшего анализа, перейдите в меню Файл > Сохранить и сохраните файл как myfirstcapture.pcapng в вашем домашнем каталоге (/home/labex).
Этот процесс захвата сетевого трафика является фундаментальным для сетевого анализа. В следующих шагах мы научимся понимать эти данные.
Анализ данных пакетов
Теперь, когда мы захватили некоторый сетевой трафик, давайте углубимся в данные и посмотрим, что мы можем узнать.
Откройте сохраненный файл с захваченными данными в Wireshark, выбрав в меню Файл > Открыть и выбрав myfirstcapture.pcapng из вашего домашнего каталога. Или дважды щелкните по файлу, чтобы открыть его.
В верхней панели вы увидите список всех захваченных пакетов. Каждая строка представляет собой отдельный пакет и содержит информацию, такую как IP - адреса источника и назначения, используемый протокол и краткое описание.
Щелкните по пакету, чтобы выбрать его. В средней панели вы увидите детали пакета, разбитые на разные протоколовые слои. Это похоже на очистку луковицы – каждый слой раскрывает больше информации о пакете.
Найдем HTTP - трафик (веб - просмотр). В строке фильтра в верхней части окна введите http и нажмите Enter. Это покажет только HTTP - пакеты.
Найдите пакет с "GET" в поле описания. Это представляет запрос на веб - страницу. Щелкните по нему, чтобы рассмотреть детали.
В панели с деталями пакета (средняя) разверните раздел "Hypertext Transfer Protocol" (Протокол передачи гипертекста). Здесь вы можете увидеть детали HTTP - запроса, включая запрошенную страницу.
Теперь найдем ответ сервера. Найдите пакет с "HTTP/1.1 200 OK" в поле описания. Это представляет успешный ответ от веб - сервера.
Рассмотрите детали этого пакета. Возможно, вы сможете увидеть содержимое веб - страницы в разделе "Line-based text data" (Текстовые данные, основанные на строках).
Этот процесс анализа важен для понимания поведения сети. Это похоже на чтение журнала разговора – вы можете увидеть, кто с кем общается, что они говорят и как они это делают.
Использование фильтров
Реальная мощь Wireshark заключается в его способности быстро фильтровать и анализировать большие объемы сетевых данных. На этом этапе мы научимся использовать фильтры для фокусировки на определенных типах трафика.
С открытым в Wireshark файлом с захваченными данными начнем с использования простых фильтров отображения:
Чтобы показать только TCP - трафик, введите tcp в строке фильтра и нажмите Enter.
Чтобы показать трафик, направленный к определенному IP - адресу или исходящий от него, введите ip.addr == 93.184.215.14 (это IP - адрес example.com, но вы можете заменить его на любой IP - адрес, который вы видите в своих захваченных данных).
Чтобы показать все HTTP - запросы GET, введите http.request.method == "GET".
Создадим более сложный фильтр. Найдем все HTTP - запросы GET к example.com:
Этот фильтр показывает все запросы GET к любому домену, содержащему "example.com".
Wireshark также позволяет сохранять фильтры для дальнейшего использования. Сохраним наш фильтр для HTTP - запросов GET:
Щелкните на плюсе ("+") рядом со строкой фильтра.
Назовите фильтр "HTTP GETs" и нажмите Сохранить.
Теперь вы можете быстро применить этот фильтр в любое время, выбрав его из списка сохраненных фильтров.
Наконец, экспортируем некоторые наши результаты. Перейдите в Статистика > HTTP > Запросы, затем нажмите "Сохранить как", чтобы экспортировать список HTTP - запросов в файл.
Выберите /home/labex и сохраните файл как http_requests.txt.
Использование фильтров таким образом позволяет быстро просматривать большие объемы сетевых данных и фокусироваться на важном. Это похоже на то, чтобы иметь сверхмощную линзу, которая мгновенно показывает определенные типы сетевого трафика.
Резюме
В этой лабораторной работе вы сделали первые шаги в мир сетевого анализа с использованием Wireshark. Вы научились:
Устанавливать и настраивать Wireshark на системе Linux
Захватывать сетевой трафик и сохранять его для анализа
Изучать данные пакетов, чтобы понять сетевые взаимодействия
Использовать фильтры для фокусировки на определенных типах трафика
Эти навыки являются основой сетевого анализа и важны для всех, кто интересуется кибербезопасностью или сетевым администрированием. По мере продолжения вашего пути вы обнаружите, что Wireshark является неоценимым инструментом для понимания поведения сети, устранения неполадок и даже обнаружения угроз безопасности. Продолжайте практиковаться и исследовать – в увлекательном мире сетевого анализа всегда есть что-то новое для изучения!
Для углубленного изучения Wireshark и сетевого анализа ознакомьтесь с курсом "Быстрый старт с Wireshark" на платформе LabEx. Этот курс охватывает продвинутые темы и включает практические упражнения, которые помогут вам овладеть этим мощным инструментом: https://labex.io/courses/quick-start-with-wireshark.