Wireshark

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 18:07, 23 марта 2018.
Wireshark
Wicon..png
Wireshark GUI
Основное окно Wireshark
Разработчики: The Wireshark team
Постоянный выпуск: 2.2.5 / 3 марта 2017
Написана на: C
Операционная система: GNU/Linux, Solaris, FreeBSD, NetBSD, OpenBSD, Mac OS X, другие UNIX-подобные системы, Microsoft Windows
Тип ПО: Сниффер
Лицензия: GNU General Public License
Веб-сайт http://www.wireshark.org/

Wireshark (ранее — Ethereal) — программа-анализатор трафика для компьютерных сетей Ethernet и некоторых других. Имеет графический пользовательский интерфейс. В июне 2006 года проект был переименован в Wireshark из-за проблем с торговой маркой.[1]

Функциональность, которую предоставляет Wireshark, очень схожа с возможностями программы tcpdump, однако Wireshark имеет графический пользовательский интерфейс и гораздо больше возможностей по сортировке и фильтрации информации. Программа позволяет пользователю просматривать весь проходящий по сети трафик в режиме реального времени, переводя сетевую карту в неразборчивый режим (promiscuous mode).

Программа распространяется под свободной лицензией GNU GPL и использует для формирования графического интерфейса кроссплатформенную библиотеку GTK+ (планируется переход на Qt[2]). Существуют версии для большинства UNIX-подобных систем, в том числе GNU/Linux, Solaris, FreeBSD, NetBSD, OpenBSD, Mac OS X, а также для Microsoft Windows.

Wireshark — это приложение, которое «знает» структуру самых различных сетевых протоколов, и поэтому позволяет разобрать сетевой пакет, отображая значение каждого поля протокола любого уровня. Поскольку для захвата пакетов используется pcap, существует возможность захвата данных только из тех сетей, которые поддерживаются этой библиотекой. Тем не менее, Wireshark умеет работать с множеством форматов входных данных, соответственно, можно открывать файлы данных, захваченных другими программами, что расширяет возможности захвата. Для расширения возможностей программы возможно использование скриптового языка Lua.

Функционал

Wireshark позволяет пользователю поместить контроллер сетевого интерфейса, которые поддерживают promiscuous mode в этом режиме, чтобы они могли видеть весь трафик, видимый на этом интерфейсе, а не только трафик, адресованный одному из настроенных адресов интерфейса, Многоадресный трафик. Однако при захвате с помощью анализатора пакетов в беспорядочном режиме на порту на сетевом коммутаторе не весь трафик через коммутатор обязательно отправляется в порт, где выполняется захват, поэтому захват в беспорядочном режиме Не обязательно достаточно для просмотра всего сетевого трафика. зеркалирование портов или различные сетевое подключение продляют захват в любую точку сети. Простые пассивные краны чрезвычайно устойчивы к подделке

В GNU / Linux, BSD и macOS с libpcap 1.0.0 или новее Wireshark 1.4 и более поздние версии также могут поместить контроллер беспроводного сетевого интерфейса в режим монитора. Если удаленный компьютер захватывает пакеты и отправляет захваченные пакеты на компьютер, работающий с Wireshark, используя протокол TZSP или протокол, используемый OmniPeek, Wireshark анализирует эти пакеты, поэтому он может анализировать пакеты, записанные на удаленной машине В то время, когда они захватываются.

История

В конце 1990-х годов Джеральд Комбс, выпускник компьютерных наук Университет Миссури-Канзас-Сити, работал в небольшом интернет-провайдере. В то время коммерческие аналитические продукты были оценены примерно в $ 1500 ,и не работал на основных платформах компании (Solaris и Linux), поэтому Джеральд начал писать Ethereal и выпустил первую версию около 1998 года В мае 2006 года Комбс принял работу в CACE Technologies. Комбс по-прежнему сохранял авторские права на большинство исходных текстов Ethereal (а остальное было повторно распространено под GNU GPL), поэтому он использовал содержимое репозитория Ethereal в качестве основы для репозитория Wireshark , Однако он не владел торговой маркой Ethereal, поэтому он сменил имя на Wireshark.[3].В 2010 году Riverbed Technology приобрела CACE[4],и взял на себя роль основного спонсора Wireshark. Эфирное развитие прекратилось, и рекомендация по безопасности Ethereal рекомендовала перейти на Wireshark.[5]

Особенности

Wireshark - это программа захвата данных, которая «понимает» структуру (инкапсуляция) различных сетевых протоколов. Он может анализировать и отображать поля вместе с их значениями, указанными в разных сетевых протоколах. Wireshark использует pcap для захвата пакетов, поэтому он может захватывать пакеты только для типов сетей, поддерживаемых pcap. Данные могут быть записаны «из провода» из живого сетевого соединения или считаны из файла уже захваченных пакетов.

  • Живые данные могут считываться из разных типов сетей, включая Ethernet, IEEE 802.11, Протокол точка-точка PPP и loopback.
  • Захваченные сетевые данные можно просматривать через [[Графический интерфейс пользователя] GUI] или через терминал командной строки версия утилиты TShark.
  • Захваченные файлы могут быть программно отредактированы или преобразованы с помощью командной строки в программу «editcap».
  • Отображение данных может быть уточнено с помощью фильтра отображения.
  • Plug-ins может быть создан для обработки новых протоколов.[6]
  • VoIP могут быть обнаружены вызовы в захваченном трафике. Если кодируется в совместимой кодировке, поток мультимедиа можно даже воспроизводить. Raw USB может быть захвачен.[7]
  • Беспроводные соединения также могут быть отфильтрованы, пока они проходят через контролируемый Ethernet.
  • Можно установить различные настройки, таймеры и фильтры, которые гарантируют, что будет отображаться только инициированный трафик.

Безопасность

Захват необработанного сетевого трафика с интерфейса требует повышенных привилегий на некоторых платформах. По этой причине более старые версии Ethereal / Wireshark и tethereal / TShark часто запускались с привилегиями superuser. Принимая во внимание огромное количество дисконтов протокола, которые вызывают при захвате трафика, это может представлять серьезную угрозу безопасности, учитывая возможность появления ошибки в диссекторе. Из-за довольно большого количества уязвимостей в прошлом (из которых многие разрешили удаленное выполнение кода) и сомнения разработчиков для лучшей будущей разработки, OpenBSD удалил Ethereal из дерева своих портов до OpenBSD 3.6.[8]

Повышенные привилегии не нужны для всех операций. Например, альтернативой является запуск tcpdump или утилиты dumpcap , которая поставляется с Wireshark с привилегиями суперпользователя для захвата пакетов в файл и последующего анализа пакетов путем запуска Wireshark с ограниченными привилегиями. Чтобы подражать анализу в реальном времени, каждый захваченный файл может быть объединен с помощью mergecap в растущий файл, обработанный Wireshark. В беспроводных сетях можно использовать средства беспроводной безопасности Aircrack для захвата кадров IEEE 802.11 и чтения результирующих файлов дампа с помощью Wireshark.

Начиная с Wireshark 0.99.7, Wireshark и TShark запускают dumpcap для выполнения захвата трафика. Платформам, требующим специальных привилегий для захвата трафика, требуется только dumpcap для запуска с этими привилегиями. Ни Wireshark, ни TShark не должны или должны выполняться со специальными привилегиями.

Цветовое кодирование

Обычно пользователь видит пакеты, выделенные зеленым, синим и черным. Wireshark использует цвета, чтобы помочь пользователю определить типы трафика с первого взгляда. По умолчанию зеленый трафик TCP, темно-синий - трафик DNS, светло-голубой - трафик UDP, а черный идентифицирует TCP-пакеты с проблемами - например, они могли быть доставлены не по порядку. Пользователи могут изменять существующие правила для раскраски пакетов, добавлять новые правила или удалять правила.

Имитационный захват пакетов

Wireshark также может использоваться для захвата пакетов из большинства инструментов моделирования сети, таких как ns, OPNET Modeler и NetSim.

Примечания

  1. Wireshark. Frequently Asked Questions: What’s up with the name change? Is Wireshark a fork?
  2. We’re switching to Qt
  3. "What's up with the name change? Is Wireshark a fork?". Wireshark: Frequently Asked Questions. Retrieved 2007-11-09. 
  4. "Riverbed Expands Further Into The Application-Aware Network Performance Management Market with the Acquisition of CACE Technologies". Riverbed Technology. 2010-10-21. Retrieved 2010-10-21. 
  5. "enpa-sa-00024". Ethereal. 2006-11-10. Archived from the original on October 23, 2012. Retrieved 2010-06-08. 
  6. "Dissector compilation example". OmniIDL. Retrieved 18 April 2013. 
  7. "USB capture setup". Wireshark Wiki. Retrieved 31 December 2011. 
  8. "CVS log for ports/net/ethereal/Attic/Makefile". Openbsd.org. Retrieved 2010-06-08. 

Рекомендации

Ссылки