Wireshark - это мощный сетевой анализатор, который может использоваться для анализа трафика, проходящего через сетевой интерфейс вашего компьютера. Это может понадобиться для обнаружения и решения проблем с сетью, отладки ваших веб-приложений, сетевых программ или сайтов. Wireshark позволяет полностью просматривать содержимое пакета на всех уровнях, так вы сможете лучше понять как работает сеть на низком уровне.
Все пакеты перехватываются в реальном времени и предоставляются в удобном для чтения формате. Программа поддерживает очень мощную систему фильтрации, подсветку цветом, и другие особенности, которые помогут найти нужные пакеты. В этой инструкции мы рассмотрим как пользоваться Wireshark для анализа трафика. Недавно разработчики перешли к работе над второй веткой программы Wireshark 2.0, в ней было внесено множество изменений и улучшений, особенно для интерфейса. Именно ее мы будем использовать в этой статье.
Перед тем как переходить к рассмотрению способов анализа трафика нужно рассмотреть какие возможности поддерживает программа более подробно, с какими протоколами она может работать и что делать. Вот основные возможности программы:
Программа имеет множество других функций, но это были те основные, которые могут вас заинтересовать.
Я предполагаю, что программа у вас уже установлена, но если нет, то вы можете ее установить из официальных репозиториев. Для этого наберите команду в Ubuntu:
$ sudo apt install wireshark
После установки вы сможете найти программу в главном меню дистрибутива. Запускать Wireshark нужно с правами суперпользователя, потому что иначе программа не сможет анализировать сетевые пакеты. Это можно сделать из главного меню или через терминал, с помощью команды, для KDE:
$ kdesu wireshark
А для Gnome / Unity:
$ gksu wireshark
Главное окно программы разделено на три части, первая колонка содержит список доступных для анализа сетевых интерфейсов, вторая - опции для открытия файлов, а третья - помощь.
Для начала анализа выберите сетевой интерфейс, например, eth0 и нажмите кнопку Start.
После этого откроется следующее окно, уже с потоком пакетов, которые проходят через интерфейс. Это окно тоже разделено на несколько частей:
Вы можете кликнуть по любому пакету, чтобы проанализировать его содержимое:
Здесь мы видим пакет запроса к DNS чтобы получить ip адрес сайта, в самом запросе отправляется домен, а в пакете ответа мы получаем наш вопрос, а также ответ.
Для более удобного просмотра можно открыть пакет в новом окне выполнив двойной клик по записи:
Перебирать пакеты вручную чтобы найти нужные очень неудобно, особенно при активном потоке. Поэтому для такой задачи лучше использовать фильтры. Для ввода фильтров под меню есть специальная строка. Вы можете нажать Expression, чтобы открыть конструктор фильтров, но там их очень много поэтому мы рассмотрим самые основные:
Для указания отношения между полем и значением в фильтре можно использовать такие операторы:
Для объединения нескольких выражений можно применять:
Теперь рассмотрим подробнее на примерах несколько фильтров и попытаемся рассмотреть все знаки отношений.
Сначала отфильтруем все пакеты, отправленные на 194.67.215.125 (losst.ru). Наберите строку в поле фильтра и нажмите Apply . Для удобства фильтры wireshark можно сохранять, с помощью кнопки Save :
ip.dst == 194.67.215.125
А чтобы получить не только отправленные пакеты, но и полученные в ответ от этого узла можно объединить два условия:
ip.dst == 194.67.215.125 || ip.src == 194.67.215.125
Также мы можем отобрать переданные большие файлы:
http.content_length > 5000
Отфильтровав Content-Type, мы можем выбрать все картинки, которые были загружены, выполним анализ трафика wireshark, пакеты, которого содержат слово image:
http.content_type contains image
Чтобы очистить фильтр вы можете нажать кнопку Clear . Бывает не всегда вы знаете всю необходимую для фильтрации информацию, а просто хотите изучить сеть. Вы можете добавить любое поле пакета в качестве колонки и посмотреть его содержимое в общем окне для каждого пакета.
Например, я хочу вывести в виде колонки ttl (время жизни) пакета. Для этого откройте информацию о пакете, найдите это поле в разделе IP. Затем вызовите контекстное меню и выберите опцию Apply As Column :
Также само можно создать фильтр на основе любого нужного поля. Выберите нужное поле и вызовите контекстное меню, затем нажмите Apply as filter или Prepare as filter , затем выбрать Selected чтобы вывести только выбранные значения или Not selected , чтобы их убрать:
Указанное поле и его значение будет применено или во втором случае подставлено в поле фильтра:
Таким способом вы можете добавить в фильтр поле любого пакета или колонку. Там тоже есть эта опция в контекстном меню. Для фильтрации протоколов вы можете использовать и более простые условия. Например, выполним анализ трафика Wireshark для протоколов HTTP и DNS:
Еще одна интересная возможность программы - использование Wireshark для отслеживания определенного сеанса между компьютером пользователя и сервером. Для этого откройте контекстное меню для пакета и выберите Follow TCP stream .
Затем откроется окно, в котором вы найдете все данные переданные между сервером и клиентом:
Возможно, вам интересно, как пользоваться Wireshark 2 для обнаружения проблем в сети. Для этого в левом нижнем углу окна есть круглая кнопка, при нажатии на нее открывается окно Expet Tools . В нем Wireshark собирает все сообщения об ошибках и неполадках в сети:
Окно разделено на такие вкладки, как Errors, Warnings, Notices, Chats. Программа умеет фильтровать и находить множество проблем с сетью и тут вы можете их очень быстро увидеть. Здесь тоже поддерживаются фильтры wireshark.
Вы можете очень просто понять что именно скачивали пользователи и какие файлы они смотрели, если соединение не было зашифровано. Программа очень хорошо справляется с извлечением контента.
Для этого сначала нужно остановить захват трафика с помощью красного квадрата на панели. Затем откройте меню File -> Export Objects -> HTTP :
Это очень мощная утилита, которая имеет очень много функций. Всю ее функциональность невозможно поместить в одной статье, но приведенной здесь базовой информации будет вполне достаточно, чтобы вы могли сами освоить все необходимое.
Wireshark — очень популярный анализатор сетевых протоколов, через который сетевой администратор может тщательно исследовать поток трафика данных в / из компьютерной системы в сети.
Этот инструмент существует уже довольно давно и предоставляет множество полезных функций.
Одной из этих особенностей является фильтр отображения, через который вы можете отфильтровать захваченный трафик данных на основе различных факторов, таких как протоколы, сетевые порты, IP-адреса и т. д.
В этой статье мы обсудим основы Wireshark и 5 основных фильтров отображения Wireshark, которые каждый новичок должен знать.
Если вы совершенно новичок в Wireshark, сначала загрузите его и установите его в свою систему.
После установки запустите графический интерфейс Wireshark.
Вот пример главного экрана Wireshark:
Первым шагом является выбор интерфейса (на котором должны быть записаны данные), а затем нажмите кнопку «start».
Как только вы нажмете кнопку «start», информация о всех входящих и исходящих пакетах данных (на выбранном интерфейсе) отображается на выходе.
Вы можете щелкнуть любую запись пакета в окне, показанном выше, и посмотреть более подробную информацию, связанную с этим пакетом, отображается в разделе чуть ниже того же окна.
Теперь вернемся к нашей теме. фильтры отображения могут быть введены через текстовое поле «Filter», которое находится чуть выше секции вывода трафика.
В этом разделе мы обсудим 5 полезных синтаксисов фильтра выводов
Вы можете легко фильтровать результаты на основе определенного протокола. Например, чтобы отображать только те пакеты, которые содержат протокол TCP, просто напишите имя протокола в текстовом поле фильтра.
Вот пример:
Таким образом, вы можете увидеть, что все пакеты, содержащие протоколы TCP, были отображены на выводе.
Вы также можете фильтровать результаты на основе сетевых портов. Например, чтобы отображать только те пакеты, которые содержат протокол TCP, и имеют порт источника или назначения 80, просто напишите tcp.port eq 80 в окне фильтра.
Вот пример скриншота:
Если есть сценарий, в котором вы хотите отображать результаты, основанные на условиях, которые не связаны друг с другом, используйте фильтр or . Например, чтобы отобразить все пакеты, содержащие протокол TCP или DNS, просто напишите t cp or dns в окне фильтра.
Вот пример скриншота:
Таким образом, вы можете увидеть, что на выходе будут отображены пакеты, содержащие протокол TCP или DNS.
Аналогичным образом вы можете использовать фильтр and . Этот фильтр используется там, где вы хотите отображать результаты на основе условий, не связанных друг с другом. Например, чтобы отобразить все пакеты, содержащие TCP, а также HTTP-протокол, просто напишите tcp and http в поле фильтра.
Вот пример скриншота:
Вы можете увидеть, что на выходе будут отображены пакеты, содержащие протокол TCP и HTTP.
Для фильтрации результатов на основе IP-адресов используйте фильтры src или dst .
Например, чтобы отображать только те пакеты, которые содержат исходящий IP-адрес 192.168.0.103, просто напишите ip.src == 192.168.0.103 в окне фильтра.
Вот пример:
Аналогичным образом, вы можете использовать фильтр dst (ip.dst) для фильтрации пакетов на основе IP-адресов назначения.
Иногда требуется проверять пакеты на основе определенной последовательности байтов.
Для этого просто используйте фильтр contains с именем протокола и последовательностью байтов.
На выходе будут отображены пакеты TCP, содержащие байтовую последовательность 00:01:02.
Какой наиболее мощный инструмент для захвата и анализа интернет трафика на сегодняшний день? Ответ прост - программа Wireshark. Она способна перехватывать не только исходящие TCP пакеты, но и входящие. Такой инструмент состоит на вооружении многих профессионалов. Да и хакеры не гнушаются его использовать. Возможности программы безграничны. С ее помощью можно вытащить любой файл из пакета, просмотреть его и проверить. Главный вопрос состоит в том, как это сделать. В этом мы и попробуем разобраться.
Сия утилита предназначена для контроля интернет трафика. Она перехватывает TCP пакеты, которые были приняты компьютером или посланы с него. Функционал программы настолько богат, что простым перехватом дело не ограничивается. Можно просматривать содержимое пакетов, искать ошибки и так далее. Кроме того, с помощью WS можно вытащить из пакетов практически любой файл и просмотреть его. Чтобы лучше понять, что это за программа, нужно выделить ее основные преимущества. Итак, плюсы:
Преимуществ у данной утилиты действительно много. А вот недостатков как таковых нет вообще. Недаром Wireshark считается лучшей в своем роде для захвата и анализа TCP пакетов. Теперь нужно немного разобраться в самой программе.
Скачать Wireshark можно с официального сайта разработчика. Программа совершенно бесплатна. Стоит обратить внимание на то, что последняя версия (2.0.5) не работает с Wi-Fi адаптерами. Поэтому, если вам нужно анализировать трафик беспроводного соединения, следует скачать более старую версию.
Установка утилиты стандартна и не вызовет никаких проблем даже у новичков. В инсталляторе все понятно, хоть он и на английском. Кстати, Wireshark на русском языке в природе не существует, поэтому для того, чтобы успешно справляться с этим софтом придется напрячь память и вспомнить английский. В принципе, для простого захвата и просмотра TCP пакетов ничего сверхъестественного не понадобится. Хватит и школьного уровня английского.
Итак, первое, что мы видим после запуска установленной программы - главное окно. Для неподготовленного пользователя оно может показаться непонятным и страшным.
Ничего страшного в нем нет. В этом вы сейчас убедитесь. Для начала работы нужно сначала выбрать источник, из которого будет производиться захват TCP пакетов. Перехват может осуществляться как с Ethernet подключения, так и с WLAN адаптера. В качестве примера рассмотрим вариант с WLAN. Для настройки нужно зайти в пункт «Capture», подпункт «Options». В открывшемся окне следует выбрать ваш беспроводной адаптер и отметить его галочкой. Для начала захвата трафика достаточно нажать кнопку «Start».
После нажатия «Start» начнется анализ и захват пакетов. В окне появится много непонятных букв и цифр. Некоторые из пакетов имеют собственную цветовую маркировку. Для того, чтобы хоть что-то понять, нужно определить какой цвет к чему относится. Зеленый - TCP трафик, темно-синий - DNS, светло-синий - UDP и черный - пакеты TCP с ошибками. Теперь разобраться в этой горе данных проще.
Для остановки процесса перехвата достаточно нажать кнопку «Stop», которая помечена красным прямоугольником. Теперь можно выбрать интересующий вас пакет и просмотреть его. Для этого нужно щелкнуть по пакету правой клавишей мыши и в появившемся меню выбрать пункт «Show packet in new window». Тут же появится куча непонятных букв и цифр.
Но при углубленном изучении представленной информации можно понять, откуда и куда шел пакет и из чего он состоял. Для того чтобы просмотреть данные о TCP пакетах позднее, нужно использовать функцию сохранения захваченной информации. Она находится в пункте меню «File», подпункт «Save as». Потом можно будет загрузить информацию из файла и спокойно просмотреть ее.
Для отображения только той информации, которая вас интересует можно заставить Wireshark использовать фильтры и отсекать ненужный трафик. Инструкция по тонкой настройке фильтров находится в Сети, а мы пока рассмотрим только один пример. Допустим, вас интересуют только TCP пакеты. Для того, чтобы программа отображала только их, следует зайти в пункт меню «Capture», подпункт «Capture filters», выбрать пункт «TCP Only» и нажать кнопку «OK».
Таким образом можно заставить утилиту отображать только тот трафик, который вас интересует. Подробнее о том, как пользоваться фильтрами, написано на просторах интернета. Можно даже создать свой собственный шаблон для фильтра. Но это уже совсем другая история.
Среди программ для захвата и анализа трафика Wireshark зарекомендовала себя как наиболее достойная утилита для решения подобных задач. Многие профессионалы с успехом используют ее. Конечно, для того, чтобы работать в ней на профессиональном уровне придется подтянуть свои знания в английском и изучить некоторые принципы передачи данных. Но это того стоит. Теперь ни одна программа на вашем компьютере не сможет отсылать тонны ненужной информации незнамо куда без вашего ведома. Wireshark как перехватчик и анализатор не имеет себе равных.
Wireshark — это анализатор сетевых пакетов. Анализатор сетевых пакетов, который захватывает сетевые пакеты и пытается как можно подробнее отобразить данные пакета.
Вы можете подумать о сетевом анализаторе пакетов как измерительном устройстве, используемом для изучения того, что происходит внутри сетевого кабеля, точно так же, как вольтметр используется электриком для изучения того, что происходит внутри электрического кабеля (но на более высоком уровне, конечно).
Вот несколько примеров, по которым люди используют Wireshark для:
Ниже перечислены некоторые из многих функций Wireshark:
Однако, чтобы действительно оценить его силу, вы должны начать использовать его. Что мы и разберем в следующих статьях.
Wireshark предлагает простой, но мощный экранный фильтр, позволяющий создавать довольно сложные выражения фильтра. Вы можете сравнивать значения в пакетах, а также комбинировать выражения в более конкретные выражения. Ниже разобраны конкретные примеры и […]
В SYN пакетах, которые используются в настройке сеанса рукопожатия TCP есть дополнительные параметры TCP, такие как: SACK_PERM, TSval, TSecr. Все это так называемые высокопроизводительные параметры, которые сейчас широко распространены, поскольку все […]
Каждая строка в списке пакетов соответствует одному пакету в файле захвата. Если вы выберете строку на этой панели, более подробная информация будет отображаться в панелях «Пакетная информация» и «Пакеты пакетов». […]