ngrep

Анализатор пакетов
ngrep
Разработчик(и)Джордан Риттер
Стабильный релиз
1.47 [1] / 7 сентября 2017 г. ; 7 лет назад ( 7 сентября 2017 )
Репозиторий
  • github.com/jpr5/ngrep
Написано вС
Операционная системаLinux , Solaris , illumos FreeBSD , NetBSD , OpenBSD , Mac OS X , дополнительные системы *NIX , Windows
ТипАнализатор пакетов
ЛицензияBSD-стиль [2]
Веб-сайтhttps://github.com/jpr5/ngrep [3]

ngrep ( network grep ) — сетевой анализатор пакетов, написанный Джорданом Риттером . Он имеет интерфейс командной строки и использует библиотеку pcap и библиотеку GNU regex .

ngrep поддерживает логику Berkeley Packet Filter ( BPF ) для выбора сетевых источников, пунктов назначения или протоколов, а также позволяет сопоставлять шаблоны или регулярные выражения в полезной нагрузке пакетов с использованием синтаксиса GNU grep , отображая данные пакетов в удобном для человека виде.

ngrep — это приложение с открытым исходным кодом, и исходный код доступен для загрузки с сайта ngrep на GitHub . Его можно скомпилировать и перенести на несколько платформ, он работает во многих UNIX-подобных операционных системах : Linux , Solaris , illumos , BSD , AIX , а также работает в Microsoft Windows . [4]

Функциональность

ngrep похож на tcpdump , но он может искать регулярное выражение в полезной нагрузке пакета и показывать соответствующие пакеты на экране или консоли. Он позволяет пользователям видеть весь незашифрованный трафик, проходящий по сети, переводя сетевой интерфейс в режим promiscuous mode .

ngrep с соответствующим синтаксисом фильтра BPF может использоваться для отладки взаимодействий с простыми текстовыми протоколами, такими как HTTP , SMTP , FTP , DNS и т. д., или для поиска определенной строки или шаблона с использованием синтаксиса регулярных выражений grep . [5] [6]

ngrep также можно использовать для захвата трафика в сети и сохранения файлов дампа pcap или для чтения файлов, созданных другими приложениями-анализаторами, такими как tcpdump или wireshark .

ngrep имеет различные параметры или аргументы командной строки. Страница man ngrep в UNIX-подобных операционных системах показывает список доступных параметров.

Использование ngrep

В этих примерах предполагается, что eth0 является используемым сетевым интерфейсом.

  • Захватывает сетевой трафик, входящий/исходящий на/с интерфейса eth0, и отображает параметры, следующие за методами HTTP (TCP/80) GET или POST
ngrep -l -q -d eth0 -i "^GET |^POST " tcp и порт 80
  • Захватывает сетевой трафик, входящий/исходящий на/с интерфейса eth0, и отображает строку HTTP (TCP/80) User-Agent
ngrep -l -q -d eth0 -i "User-Agent: " tcp и порт 80
  • Захватывать сетевой трафик, входящий/исходящий на/с интерфейса eth0 и показывать запросы и ответы DNS (UDP/53)
ngrep -l -q -d eth0 -i "" udp и порт 53

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

Для захвата необработанного сетевого трафика с интерфейса требуются специальные привилегии или привилегии суперпользователя на некоторых платформах, особенно в Unix-подобных системах. Поведение ngrep по умолчанию заключается в сбросе привилегий на этих платформах и запуске под определенным непривилегированным пользователем.

Как и tcpdump, ngrep можно использовать для конкретной цели — перехвата и отображения сообщений другого пользователя или компьютера, или целой сети.

Привилегированный пользователь, запускающий ngrep на сервере или рабочей станции, подключенной к устройству, настроенному на зеркалирование портов на коммутаторе , маршрутизаторе или шлюзе , или подключенному к любому другому устройству, используемому для захвата сетевого трафика в локальной , городской или глобальной сети , может просматривать всю незашифрованную информацию, связанную с идентификаторами входа, паролями или URL-адресами , а также содержимое веб-сайтов, просматриваемых в этой сети.

Поддерживаемые протоколы

  • IPv4 и IPv6 , интернет-протокол версии 4 и версии 6
  • TCP , протокол управления передачей
  • UDP , протокол пользовательских датаграмм
  • ICMPv4 и ICMPv6 , протокол управляющих сообщений Интернета версии 4 и версии 6
  • IGMP , протокол управления группами Интернета
  • Ethernet , IEEE 802.3
  • PPP , протокол точка-точка
  • SLIP , последовательный интернет-протокол
  • FDDI , протокол распределения данных по оптоволокну
  • Маркерное кольцо , IEEE 802.5

Смотрите также

Ссылки

  1. ^ "Release V1_47" . Получено 18 февраля 2018 г. .
  2. ^ Файл LICENSE.txt в тарболе
  3. ^ https://api.github.com/repos/jpr5/ngrep . Получено 29 июля 2018 г. . {{cite web}}: Отсутствует или пусто |title=( помощь )
  4. ^ Поддерживаемые платформы ngrep
  5. ^ ngrep и регулярные выражения
  6. ^ использование ngrep
  • Официальный сайт ngrep
  • Ngrep - страница руководства Linux
Взято с "https://en.wikipedia.org/w/index.php?title=Ngrep&oldid=1155986123"