Рассказываем, что такое Wireshark и как правильно с ним работать.
Wireshark — инструмент для анализа входящего и исходящего трафика. В частности, это анализатор трафика в сетях Ethernet (ранее он назывался Ethereal). Программа умеет просматривать проходящий через определенное устройство трафик в текстовом виде или в графической среде (на выбор пользователя). При этом в нем есть целый набор механизмов по фильтрации и поиску конкретных пакетов, переданных по сети.
За всем трафиком можно наблюдать в реальном времени. Wireshark хорошо «ознакомлен» с тем, как работают сети. Из-за этого для него не составляет труда перехватывать информацию любого уровня.
На этом его возможности не заканчиваются. Их можно расширить, используя скрипты на базе языка Lua. Существует большое количество дополнений, значительно повышающих эффективность программы.
Из ограничений Wireshark можно отметить только то, что захват пакетов реализован через программную библиотеку pcap , что немного ограничивает его в возможностях отображения некоторых данных.
Для начала загрузим Wireshark на компьютер. Не будем лезть на официальный сайт и скачивать установочные файлы оттуда. Wireshark входит в состав репозиториев популярных дистрибутивов Linux, и обычно для его установки достаточно одной команды.
Обычно терминал закреплен на панели с избранными программами, но его также можно включить, одновременно нажав клавиши Ctrl + Alt + T
Для Debian и ей подобных (Ubuntu, Mint) — sudo apt-get install wireshark
В Red Hat Enterprise Linux и CentOS — sudo yum install wireshark
Для openSUSE — sudo zypper install wireshark
Для новых редакций Fedora — sudo dnf install wireshark
В моем примере будет Debian-подобная система с менеджером пакетов apt-get
При вводе пароля набираемые символы не отображаются. Придется вводить вслепую
Если ввести строчную букву, то система может воспринять это как отказ
Заключительный этап установки
Чем, собственно, хорош Wireshark, и что он умеет?
Приступим непосредственно к анализу трафика и к изучению функций программы Wireshark.
Я запускаю утилиту через терминал, но вы можете найти значок в списке всех установленных программ
По графику напротив названия сети можно понять, насколько она активна
Это первое, с чего стоит начинать работу с Wireshark
Перед нашими глазами предстанет интерфейс, поделенный на три части. В нем отображаются:
Тут все довольно просто. Главное запомнить, за что отвечают все три категории
Все довольно наглядно и просто. Обычно пользователям даже этого хватает, чтобы получить нужную информацию, но так использовать Wireshark сложно. Зачастую требуется более расширенный анализ данных либо возможность сохранить все данные в отдельный файл, чтобы подробнее изучить откуда и куда идет трафик. Для этого можно проделать следующее:
У меня тут скриншот из macOS, но в Linux есть такое же меню, просто оно обычно закреплено на самом окне
Нам нужен выделенный пункт
У меня тут пустовато, а у вас данных наверняка будет побольше
Теперь у вас есть файл с полной информацией о том, какой трафик, откуда и как попал на ваш компьютер. Причем он будет отображаться в виде реальных понятных ссылок, глядя на которые можно без проблем сделать вывод, что из себя представляет тот или иной пакет данных, попавший в систему.
Также Wireshark часто используют, чтобы обнаружить проблемы, связанные с подключением. Речь идет об ошибках соединения и передачи сетевых пакетов. Wireshark способен их обнаружить и собирает в отдельное меню.
Чтобы посмотреть ошибки, кликнем по иконке в виде кружка, которая находится в левом нижнем углу окна Wireshark.
Как только появятся какие-то ошибки, связанные с сетевыми пакетами, эта иконка поменяет цвет на желтый
У меня все в порядке и нет никаких проблем. Опять же, у вас в этом списке может быть куча ошибок
Очень важная функция Wireshark — использование фильтров. С помощью них можно легко сортировать данные и получать необходимые результаты без муторного листания гигантских списков с сетевыми пакетами.
Существует бесчисленное множество фильтров, но некоторые используются чаще других. Например, вот эти:
Более того, при фильтрации данных можно использовать операторы. Например:
ip.dst == IP-адрес — оператор == в этом случае обозначает, что целевой IP-адрес должен равняться указанному. Вместо равенства используются и другие операторы.
ip.src != *IP-адрес — это значит, что IP-адрес отправителя не должен соответствовать указанному.
Также есть:
< — меньше указанного значения. > — больше указанного значения. contains — содержит в себе указанное значение.
Чтобы работать с фильтрами нужно:
Фильтры хранятся и вводятся здесь, но если вы знаете, как их правильно прописывать, то можно воспользоваться текстовой строкой левее
Опять же можно все прописать вручную в строке под поиском
Пропускаем все сетевые пакеты через наш новый фильтр
Теперь в списке пакетов будут отображаться только те, что соответствуют критериям фильтрации.
Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…
Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…
Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…
Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…
YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…
Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…