Wireshark — это де-факто стандарт для анализа сетевого трафика. К сожалению, по мере роста захвата пакетов он становится все более запаздывающим. Брим решает эту проблему настолько хорошо, что изменит ваш рабочий процесс Wireshark.
Оглавление
Wireshark отличный, но. . .
Wireshark — замечательная программа с открытым исходным кодом. Он используется любителями и профессионалами во всем мире для исследования сетевых проблем. Он захватывает пакеты данных, которые проходят по проводам или через эфир вашей сети. После захвата трафика Wireshark позволяет фильтровать и искать данные, отслеживать разговоры между сетевыми устройствами и многое другое.
Однако, как бы ни был хорош Wireshark, у него есть одна проблема. Файлы захвата сетевых данных (называемые сетевыми трассировками или захватами пакетов) могут очень быстро стать очень большими. Это особенно верно, если проблема, которую вы пытаетесь исследовать, сложная или спорадическая, или если сеть большая и загружена.
Чем больше захват пакетов (или PCAP), тем более медленным становится Wireshark. Простое открытие и загрузка очень большой (более 1 ГБ) трассировки может занять так много времени, что можно подумать, что Wireshark отказался от призрака.
Работа с файлами такого размера — настоящая боль. Каждый раз, когда вы выполняете поиск или меняете фильтр, вы должны ждать, пока эффекты будут применены к данным и обновлены на экране. Каждая задержка нарушает вашу концентрацию, что может помешать вашему прогрессу.
Брим лекарство от этих бед. Он действует как интерактивный препроцессор и интерфейс для Wireshark. Если вы хотите увидеть подробный уровень, который может предоставить Wireshark, Brim мгновенно открывает его для вас именно на этих пакетах.
Если вы много занимаетесь захватом сети и анализом пакетов, Brim произведет революцию в вашем рабочем процессе.
Установка Brim
Brim очень новый, поэтому он еще не попал в репозитории программного обеспечения дистрибутивов Linux. Однако на Страница загрузки Brim, вы найдете файлы пакетов DEB и RPM, поэтому установить его в Ubuntu или Fedora достаточно просто.
Если вы используете другой дистрибутив, вы можете скачать исходный код из GitHub и создайте приложение самостоятельно.
Brim использует zq, инструмент командной строки для Зик logs, поэтому вам также необходимо загрузить ZIP-файл, содержащий двоичные файлы zq.
Установка Brim в Ubuntu
Если вы используете Ubuntu, вам необходимо загрузить файл пакета DEB и ZIP-файл zq Linux. Дважды щелкните загруженный файл пакета DEB, и откроется приложение Ubuntu Software. Лицензия Brim ошибочно указана как «Собственная» — она использует Лицензия BSD с тремя пунктами.
Нажмите «Установить».
После завершения установки дважды щелкните файл zq ZIP, чтобы запустить приложение Archive Manager. ZIP-файл будет содержать единственный каталог; перетащите его из «Менеджера архивов» в место на вашем компьютере, например, в каталог «Загрузки».
Мы вводим следующее, чтобы создать местоположение для двоичных файлов zq:
sudo mkdir /opt/zeek
Нам нужно скопировать двоичные файлы из извлеченного каталога в только что созданное место. Замените путь и имя извлеченного каталога на вашем компьютере в следующей команде:
sudo cp Downloads/zq-v0.20.0.linux-amd64/* /opt/Zeek
Нам нужно добавить это местоположение к пути, поэтому мы отредактируем файл BASHRC:
sudo gedit .bashrc
Откроется редактор gedit. Прокрутите файл до конца и введите следующую строку:
export PATH=$PATH:/opt/zeek
Сохраните изменения и закройте редактор.
Установка Brim на Fedora
Чтобы установить Brim в Fedora, загрузите файл пакета RPM (вместо DEB), а затем выполните те же действия, которые мы описали выше для установки Ubuntu.
Интересно, что когда файл RPM открывается в Fedora, он правильно определяется как имеющий лицензию с открытым исходным кодом, а не проприетарную.
Запуск Brim
Нажмите «Показать приложения» в доке или нажмите Super + A. Введите «край» в поле поиска, а затем нажмите «Поля», когда оно появится.
Brim запускает и отображает свое главное окно. Вы можете щелкнуть «Выбрать файлы», чтобы открыть браузер файлов, или перетащите файл PCAP в область, окруженную красным прямоугольником.
Brim использует отображение с вкладками, и вы можете одновременно открывать несколько вкладок. Чтобы открыть новую вкладку, щелкните значок «плюс» (+) вверху, а затем выберите другой PCAP.
Основы Brim
Brim загружает и индексирует выбранный файл. Индекс — одна из причин, по которой Brim работает так быстро. Главное окно содержит гистограмму объемов пакетов с течением времени и список сетевых «потоков».
Файл PCAP содержит упорядоченный по времени поток сетевых пакетов для большого количества сетевых подключений. Пакеты данных для различных соединений перемешаны, потому что некоторые из них будут открываться одновременно. Пакеты для каждого сетевого «разговора» перемежаются с пакетами других разговоров.
Wireshark отображает сетевой поток пакет за пакетом, тогда как Brim использует концепцию, называемую «потоками». Поток — это полный сетевой обмен (или диалог) между двумя устройствами. Каждый тип потока разделен на категории, имеет цветовую маркировку и маркируется по типу потока. Вы увидите потоки с пометками «dns», «ssh», «https», «ssl» и многие другие.
Если вы прокрутите отображение сводной информации о потоке влево или вправо, отобразится гораздо больше столбцов. Вы также можете настроить период времени для отображения той части информации, которую вы хотите видеть. Ниже приведены несколько способов просмотра данных:
Щелкните полосу на гистограмме, чтобы увеличить сетевую активность в ней.
Щелкните и перетащите, чтобы выделить диапазон отображения гистограммы и увеличить масштаб. Затем Brim отобразит данные из выделенного раздела.
Вы также можете указать точные периоды в полях «Дата» и «Время».
Brim может отображать две боковые панели: одну слева и одну справа. Они могут быть скрыты или оставаться видимыми. Панель слева показывает историю поиска и список открытых PCAP, называемых пробелами. Нажмите Ctrl +[ to toggle the left pane on or off.
The pane on the right contains detailed information about the highlighted flow. Press Ctrl+] для включения или выключения правой панели.
Щелкните «Conn» в списке «UID Correlation», чтобы открыть схему соединений для выделенного потока.
В главном окне вы также можете выделить поток, а затем щелкнуть значок Wireshark. Это запускает Wireshark с отображаемыми пакетами для выделенного потока.
Wireshark открывается, отображая интересующие пакеты.
Фильтрация по краям
Поиск и фильтрация в Brim являются гибкими и всеобъемлющими, но вам не нужно изучать новый язык фильтрации, если вы этого не хотите. Вы можете создать синтаксически правильный фильтр в Brim, щелкнув поля в итоговом окне, а затем выбрав параметры в меню.
Например, на изображении ниже мы щелкнули правой кнопкой мыши поле «DNS». Затем мы выберем «Фильтр = Значение» из контекстного меню.
Затем происходит следующее:
Текст _path = «dns» добавляется в строку поиска.
Этот фильтр применяется к файлу PCAP, поэтому он будет отображать только потоки, которые являются потоками службы доменных имен (DNS).
Текст фильтра также добавляется в историю поиска на левой панели.
Мы можем добавить дополнительные предложения к поисковому запросу, используя ту же технику. Щелкните правой кнопкой мыши поле IP-адреса (содержащее «192.168.1.26») в столбце «Id.orig_h», а затем выберите «Filter = Value» из контекстного меню.
Это добавляет дополнительное предложение как предложение AND. Теперь экран отфильтрован для отображения потоков DNS, исходящих от этого IP-адреса (192.168.1.26).
Новый термин фильтра добавляется в историю поиска на левой панели. Вы можете переключаться между поисками, щелкая элементы в списке истории поиска.
IP-адрес назначения для большей части наших отфильтрованных данных — 81.139.56.100. Чтобы увидеть, какие потоки DNS были отправлены на разные IP-адреса, мы щелкаем правой кнопкой мыши «81.139.56.100» в столбце «Id_resp_h», а затем выбираем «Фильтр! = Значение» в контекстном меню.
Только один поток DNS, исходящий из 192.168.1.26, не был отправлен на 81.139.56.100, и мы нашли его, не вводя ничего для создания нашего фильтра.
Закрепление предложений фильтра
Когда мы щелкаем правой кнопкой мыши поток «HTTP» и выбираем «Фильтр = Значение» из контекстного меню, в сводной панели будут отображаться только потоки HTTP. Затем мы можем щелкнуть значок Pin рядом с предложением HTTP-фильтра.
Предложение HTTP теперь закреплено на месте, и любые другие фильтры или условия поиска, которые мы используем, будут выполняться с добавленным к ним предложением HTTP.
Если мы введем «GET» в строке поиска, поиск будет ограничен потоками, которые уже были отфильтрованы с помощью закрепленного предложения. Вы можете закрепить столько предложений фильтра, сколько необходимо.
Чтобы найти пакеты POST в потоках HTTP, мы просто очищаем строку поиска, набираем «POST» и нажимаем Enter.
Прокрутка в сторону показывает идентификатор удаленного хоста.
Все условия поиска и фильтрации добавляются в список «История». Чтобы повторно применить любой фильтр, просто щелкните его.
Вы также можете искать удаленный хост по имени.
Редактирование условий поиска
Если вы хотите что-то найти, но не видите поток этого типа, вы можете щелкнуть любой поток и отредактировать запись в строке поиска.
Например, мы знаем, что в файле PCAP должен быть хотя бы один поток SSH, потому что мы использовали rsync чтобы отправить файлы на другой компьютер, но мы его не видим.
Итак, мы щелкнем правой кнопкой мыши по другому потоку, выберем «Filter = Value» из контекстного меню, а затем отредактируем строку поиска, указав «ssh» вместо «dns».
Нажимаем Enter для поиска потоков SSH и обнаруживаем, что он только один.
Нажатие Ctrl +]открывает правую панель, на которой отображаются подробности этого потока. Если файл был передан во время потока, MD5, SHA1, и SHA256 появляются хеши.
Щелкните правой кнопкой мыши любой из них, а затем выберите «VirusTotal Lookup» из контекстного меню, чтобы открыть браузер в VirusTotal веб-сайт и передать хеш для проверки.
VirusTotal хранит хэши известных вредоносных программ и других вредоносных файлов. Если вы не уверены, безопасен ли файл, это простой способ проверить, даже если у вас больше нет доступа к файлу.
Если файл неопасный, вы увидите экран, показанный на изображении ниже.
Идеальное дополнение к Wireshark
Brim делает работу с Wireshark еще быстрее и проще, позволяя работать с очень большими файлами захвата пакетов. Протестируйте его сегодня же!