Перетворіть свій робочий процес Wireshark за допомогою Brim у Linux

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, інструмент командного рядка для Зік журналів, тому вам також потрібно буде завантажити ZIP-файл, що містить двійкові файли zq.

Встановлення Brim на Ubuntu

Якщо ви використовуєте Ubuntu, вам потрібно завантажити файл пакета DEB і ZIP-файл zq Linux. Двічі клацніть завантажений файл пакету DEB, і відкриється програма Ubuntu Software. Ліцензію Brim помилково вказано як «Запатентовану» — вона використовує Ліцензія BSD 3-Cause.

  Як використовувати команду fold в Linux

Натисніть «Встановити».

Натисніть

Після завершення інсталяції двічі клацніть ZIP-файл zq, щоб запустити програму 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» у полі пошуку, а потім натисніть «Brim», коли воно з’явиться.

Тип

Brim запускає та відображає головне вікно. Ви можете натиснути «Вибрати файли», щоб відкрити браузер файлів, або перетягнути файл PCAP в область, оточену червоним прямокутником.

Brim використовує дисплей із вкладками, і ви можете відкривати кілька вкладок одночасно. Щоб відкрити нову вкладку, клацніть знак плюс (+) угорі, а потім виберіть інший PCAP.

Основи Брим

Brim завантажує та індексує вибраний файл. Індекс є однією з причин, чому Brim настільки швидкий. Головне вікно містить гістограму обсягів пакетів у часі та список мережевих «потоків».

Файл PCAP містить упорядкований за часом потік мережевих пакетів для великої кількості мережевих з’єднань. Пакети даних для різних підключень перемішуються, оскільки деякі з них будуть відкриті одночасно. Пакети для кожної «розмови» мережі перемежовуються з пакетами інших розмов.

Wireshark показує мережевий потік пакет за пакетом, тоді як Brim використовує концепцію під назвою «потоки». Потік — це повний мережевий обмін (або розмова) між двома пристроями. Кожен тип потоку класифікується, позначений кольором і позначений типом потоку. Ви побачите потоки з позначками «dns», «ssh», «https», «ssl» та багато інших.

  Як використовувати генератор статичних сайтів Hugo в Linux

Якщо ви прокручуєте екран підсумку потоку вліво або вправо, відобразиться багато інших стовпців. Ви також можете налаштувати період часу для відображення підмножини інформації, яку ви хочете побачити. Нижче наведено кілька способів перегляду даних:

Клацніть панель на гістограмі, щоб збільшити мережеву активність у ній.
Клацніть і перетягніть, щоб виділити діапазон відображення гістограми та збільшити масштаб. Потім Brim відобразить дані з виділеного розділу.
Ви також можете вказати точні періоди в полях «Дата» та «Час».

Brim може відображати дві бічні панелі: одну ліворуч і одну праворуч. Вони можуть бути приховані або залишатися видимими. На панелі зліва відображається історія пошуку та список відкритих PCAP, які називаються пробілами. Натисніть Ctrl+[ to toggle the left pane on or off.

The

The pane on the right contains detailed information about the highlighted flow. Press Ctrl+] щоб увімкнути або вимкнути праву панель.

Виділено

Натисніть «Conn» у списку «UID Correlation», щоб відкрити діаграму підключення для виділеного потоку.

Натисніть

У головному вікні ви також можете виділити потік, а потім клацнути піктограму Wireshark. Це запускає Wireshark з відображеними пакетами для виділеного потоку.

Відкривається Wireshark, показуючи пакети, що цікавлять.

Фільтрування в Brim

Пошук і фільтрація в Brim є гнучкими та вичерпними, але вам не потрібно вивчати нову мову фільтрації, якщо ви цього не хочете. Ви можете створити синтаксично правильний фільтр у Brim, натиснувши поля у вікні підсумку, а потім вибравши параметри з меню.

Наприклад, на зображенні нижче ми клацнули правою кнопкою миші поле «dns». Потім ми збираємося вибрати «Фільтр = значення» з контекстного меню.

Тоді відбуваються такі речі:

Текст _path = “dns” додається до рядка пошуку.
Цей фільтр застосовується до файлу PCAP, тому він відображатиме лише потоки, які є потоками служби доменних імен (DNS).
Текст фільтра також додається до історії пошуку на лівій панелі.

Ми можемо додати додаткові речення до пошукового терміну, використовуючи ту саму техніку. Ми клацнемо правою кнопкою миші поле IP-адреси (містить «192.168.1.26») у стовпці «Id.orig_h», а потім виберемо «Фільтр = значення» з контекстного меню.

Це додає додаткове речення як речення AND. Відображення тепер відфільтровано, щоб показувати потоки DNS, які походять із цієї IP-адреси (192.168.1.26).

Новий термін фільтра додається до історії пошуку на лівій панелі. Ви можете переходити між пошуками, натискаючи елементи в списку історії пошуку.

IP-адреса призначення для більшості наших відфільтрованих даних – 81.139.56.100. Щоб побачити, які потоки DNS були надіслані на різні IP-адреси, ми клацаємо правою кнопкою миші «81.139.56.100» у стовпці «Id_resp_h», а потім вибираємо «Filter != Value» з контекстного меню.

  Як налаштувати Firejail на Linux

Екран підсумків із пошуковим фільтром, що містить файл

Лише один потік DNS, який походить із 192.168.1.26, не був надісланий на 81.139.56.100, і ми знайшли його, не вводячи нічого, щоб створити наш фільтр.

Закріплення застережень фільтра

Коли ми клацаємо правою кнопкою миші потік «HTTP» і вибираємо «Фільтр = значення» з контекстного меню, на панелі підсумків відображатимуться лише потоки HTTP. Потім ми можемо клацнути піктограму Pin біля пункту фільтра HTTP.

Речення HTTP тепер закріплено на місці, і будь-які інші фільтри або пошукові терміни, які ми використовуємо, виконуватимуться з положенням HTTP перед ними.

Якщо ми введемо «GET» у рядку пошуку, пошук буде обмежено потоками, які вже були відфільтровані закріпленим реченням. Ви можете закріпити необхідну кількість фільтрів.

Щоб шукати пакети POST у потоках HTTP, ми просто очищаємо рядок пошуку, вводимо «POST», а потім натискаємо Enter.

Прокрутка вбік показує ідентифікатор віддаленого хоста.

Пульт дистанційного керування

Усі терміни пошуку та фільтрації додаються до списку «Історія». Щоб повторно застосувати будь-який фільтр, просто клацніть його.

Автозаселені

Ви також можете шукати віддалений хост за назвою.

Шукаючи

Редагування пошукових термінів

Якщо ви хочете щось шукати, але не бачите потоку такого типу, ви можете клацнути будь-який потік і відредагувати запис у рядку пошуку.

Наприклад, ми знаємо, що у файлі PCAP має бути принаймні один потік SSH, тому що ми використовували rsync щоб надіслати деякі файли на інший комп’ютер, але ми не можемо його побачити.

Отже, ми клацнемо правою кнопкою миші інший потік, виберемо «Фільтр = значення» з контекстного меню, а потім відредагуємо рядок пошуку так, щоб він сказав «ssh» замість «dns».

Ми натискаємо Enter, щоб шукати потоки SSH і знаходимо лише один.

Натискання Ctrl+]відкриває праву панель, де відображаються деталі цього потоку. Якщо файл був переданий під час потоку, файл MD5, SHA1, і SHA256 з’являються хеші.

Клацніть правою кнопкою миші будь-яке з них, а потім виберіть «VirusTotal Lookup» у контекстному меню, щоб відкрити свій браузер на VirusTotal веб-сайт і передайте хеш для перевірки.

VirusTotal зберігає хеші відомих шкідливих програм та інших шкідливих файлів. Якщо ви не впевнені, чи безпечний файл, це простий спосіб перевірити, навіть якщо у вас більше немає доступу до файлу.

Якщо файл доброякісний, ви побачите екран, показаний на зображенні нижче.

А

Ідеальне доповнення до Wireshark

Brim робить роботу з Wireshark ще швидшою та простішою, дозволяючи працювати з дуже великими файлами захоплення пакетів. Проведіть тестовий запуск сьогодні!