Вход сниффер: sniffer — Личный кабинет
Содержание
Сниффер — что за зверь — «Хакер»
Содержание статьи
Снифферы — это проги, которые перехватывают
весь сетевой трафик. Снифферы полезны для диагностики сети (для админов) и
для перехвата паролей (понятно для кого:)). Например если ты получил доступ к
одной сетевой машине и установил там сниффер,
то скоро все пароли от
их подсети будут твои. Снифферы ставят
сетевую карту в прослушивающий
режим (PROMISC).То есть они получают все пакеты. В локалке можно перехватывать
все отправляемые пакеты со всех машин (если вы не разделены всякими хабами),
так
как там практикуется широковещание.
Снифферы могут перехватывать все
пакеты (что очень неудобно, ужасно быстро переполняется лог файл,
зато для более детального анализа сети самое оно)
или только первые байты от всяких
ftp,telnet,pop3 и т.д. (это самое веселое, обычно примерно в первых 100 байтах
содержится имя и пароль:)). Снифферов сейчас
развелось. .. Множество снифферов есть
как под Unix, так и под Windows (даже под DOS есть:)).
Снифферы могут
поддерживать только определенную ось (например linux_sniffer.c,который
поддерживает Linux:)), либо несколько (например Sniffit,
работает с BSD, Linux, Solaris). Снифферы так разжились из-за того,
что пароли передаются по сети открытым текстом.
Таких служб
уйма. Это telnet, ftp, pop3, www и т.д. Этими службами
пользуется уйма
народу:). После бума снифферов начали появляться различные
алгоритмы
шифрования этих протоколов. Появился SSH (альтернатива
telnet, поддерживающий
шифрование), SSL(Secure Socket Layer — разработка Netscape, способная зашифровать
www сеанс). Появились всякие Kerberous, VPN(Virtual Private
Network). Заюзались некие AntiSniff’ы, ifstatus’ы и т.д. Но это в корне не
изменило положения. Службы, которые используют
передачу пароля plain text’ом
юзаются во всю:). Поэтому сниффать еще долго будут:).
Windows реализации снифферов
CommView — www. tamos.com
Довольно продвинутый сниффер
производства TamoSoft. Можно установить свои правила на сниффинг
(например
игнорировать ICMP, а TCP сниффать, также кроме Internet протоколов
имеется поддержка Ethernet протоколов, таких как ARP,SNMP,NOVELL и
т.д.). Можно например сниффать только входящие пакеты,
а остальные
игнорить. Можно указать лог-файл для всех пакетов с лимитов размера в
мегах. Имеет две tools’ы — Packet Generator и NIC Vendor
Indentifier. Можно посмотреть все подробности
посланных
/полученных пакетов (например в TCP пакете можно просмотреть Source
Port, Destination Port, Data length, Checksum, Sequence, Window, Ack, Flags,
Urgent). Радует еще
то, что она автоматически устанавливает CAPTURE
драйвер. В общем тулза
очень полезная для снифа, рекомендую всем.
SpyNet —
packetstorm.securify.com
Довольно известный сниффер производства Laurentiu
Nicula 2000:). Обычные функции — перехват/декодинг пакетов.
Хотя декодинг
развит прикольно (можно например по пакетам воссоздавать
странички,
на которых
побывал юзер!). В общем на любителя:).
Analyzer — neworder.box.sk
Analyzer
требует установку специального драйвера, вложенного в
пакет (packet.inf, packet.sys). Можно посмотреть всю инфу о вашей сетевой
карте. Также Analyzer поддерживает работу с командной строкой.
Он
прекрасно работает с локальной сетью. Имеет несколько
утилит: ConvDump,GnuPlot,FlowsDet,Analisys Engine. Ничего
выдающегося.
IRIS
— www.eeye.com
IRIS продукт известной фирмы
eEye. Представляет обширные возможности по фильтрации.
Меня в нем сильно
порадовало три фишки:
1.Protocol Distribution
2.Top hosts
3.Size
Distribution
Также имеется Packet Decoder. Он поддерживает развитую систему
логов. А доступные возможности фильтрации превосходят
все снифферы
обзора. Это Hardware Filter, который может ловить либо все
пакеты (Promiscious), либо с различными ограничениями
(например захватывать
только multicast пакеты или broadcast пакеты, либо только Mac фреймы).
Можно
фильтровать по определенным MAC/IP адресам, по портам,
по пакетам, содержащим
определенные символы. В общем неплохой
сниффак. Требует
50comupd.dll.
WinDUMP
Аналог TCPdump for Unix. Этот сниффак действует через
командную строку и представляет минимальные возможности по конфигурации и еще
требует библиотеку WinPcap. Мне не очень…
SniffitNT
Тоже требует WinPcap. Работа только как командной строкой,
так и в интерактивном режиме. Со
сложными опциями. Мне не очень.
ButtSniff
Обычный пакетный
сниффер созданный
известнейшей группой CDC(Cult of the Dead Cow). Фишка его в том,
что его можно использовать, как плагин к BO:)(Очень полезно:)).Работа из командной
строки.
Существуют еще множество снифферов,
таких как NatasX, NetXRay, CooperSniffer, LanExplorer, Net Analyzer и т.д.
Пойдем
дальне…
Unix’овые снифферы
Все снифферы данного обзора можно найти на
packetstorm. securify.com.
linsniffer
Это простой сниффер для перехвата
логинов/паролей. Стандартная компиляция (gcc -o linsniffer
linsniffer.c).
Логи пишет в tcp.log.
linux_sniffer
Linux_sniffer
требуется тогда, когда вы хотите
детально изучить сеть. Стандартная
компиляция. Выдает всякую шнягу дополнительно,
типа isn, ack, syn, echo_request (ping) и т.д.
Sniffit
Sniffit — продвинутая модель
сниффера написанная Brecht Claerhout. Install(нужна
libcap):
#./configure
#make
Теперь запускаем
сниффер:
#./sniffit
usage: ./sniffit [-xdabvnN] [-P proto] [-A char] [-p
port] [(-r|-R) recordfile]
[-l sniflen] [-L logparam] [-F snifdevice]
[-M plugin]
[-D tty] (-t<Target IP> | -s<Source IP>) |
(-i|-I) | -c<config file>]
Plugins Available:
0 — Dummy
Plugin
1 — DNS Plugin
Как видите, сниффит поддерживает множество
опций. Можно использовать сниффак в интерактивном режиме.
Сниффит хоть и
довольно полезная прога, но я ей не пользуюсь.
Почему? Потому что у Sniffit
большие проблемы с защитой. Для Sniffit’a уже вышли ремоутный рут и дос для
линукса и дебиана! Не каждый сниффер себе такое позволяет:).
HUNT
Это
мой любимый сниффак. Он очень прост в обращении,
поддерживает много прикольных
фишек и на данный момент не имеет проблем с безопасностью.
Плюс не особо
требователен к библиотекам (как например linsniffer и
Linux_sniffer). Он
может в реальном времени перехватывать текущие соединения и под
чистую дампить с удаленного терминала. В
общем, Hijack
rulezzz:). Рекомендую
всем для усиленного юзания:).
Install:
#make
Run:
#hunt -i [interface]
READSMB
Сниффер READSMB вырезан из LophtCrack и портирован под
Unix (как ни странно:)). Readsmb перехватывает SMB
пакеты.
TCPDUMP
tcpdump — довольно известный анализатор пакетов.
Написанный
еще более известным челом — Вэн Якобсоном, который придумал VJ-сжатие для
PPP и написал прогу traceroute (и кто знает что еще?).
Требует библиотеку
Libpcap.
Install:
#./configure
#make
Теперь запускаем
ее:
#tcpdump
tcpdump: listening on ppp0
Все твои коннекты выводит на
терминал. Вот пример вывода на пинг
ftp.technotronic.com:
02:03:08.918959
195.170.212.151.1039 > 195.170.212.77.domain: 60946+ A?
ftp.technotronic.com.
(38)
02:03:09.456780 195.170.212.77.domain > 195.170.212.151.1039: 60946*
1/3/3 (165)
02:03:09.459421 195.170.212.151 > 209.100.46.7: icmp: echo
request
02:03:09.996780 209.100.46.7 > 195.170.212.151: icmp: echo
reply
02:03:10.456864 195.170.212.151 > 209.100.46.7: icmp: echo
request
02:03:10.906779 209.100.46.7 > 195.170.212.151: icmp: echo
reply
02:03:11.456846 195.170.212.151 > 209.100.46.7: icmp: echo
request
02:03:11.966786 209.100.46.7 > 195.170.212.151: icmp: echo
reply
В общем, снифф полезен для отладки сетей,
нахождения неисправностей и
т. д.
Dsniff
Dsniff требует libpcap, ibnet,
libnids и OpenSSH. Записывает только введенные команды, что очень удобно.
Вот пример лога коннекта
на unix-shells.com:
02/18/01
03:58:04 tcp my.ip.1501 ->
handi4-145-253-158-170.arcor-ip.net.23
(telnet)
stalsen
asdqwe123
ls
pwd
who
last
exit
Вот
dsniff перехватил логин с паролем (stalsen/asdqwe123).
Install:
#./configure
#make
#make
install
Защита от снифферов
Самый верный способ защиты от
снифферов —
использовать ШИФРОВАНИЕ (SSH, Kerberous, VPN, S/Key, S/MIME,
SHTTP, SSL и т.д.). Ну
а если не охота отказываться от plain text служб и установления дополнительных
пакетов:)? Тогда пора юзать антиснифферские пекеты…
AntiSniff for Windows
Этот продукт выпустила известная группа
Lopht. Это был первый продукт в своем роде.
AntiSniff, как сказано в
описании:
«AntiSniff is a Graphical User Interface (GUI) driven tool for
detecting promiscuous Network Interface Cards (NICs) on your local network
segment». В общем, ловит карты в promisc режиме.
Поддерживает огромное
количество тестов (DNS test, ARP test, Ping Test, ICMP Time Delta
Test, Echo Test, PingDrop test). Можно сканить как одну машину,
так и сетку. Здесь имеется
поддержка логов. AntiSniff работает на win95/98/NT/2000,
хотя рекомендуемая
платформа NT. Но царствование его было недолгим и уже в скором
времени появился сниффер под названием AntiAntiSniffer:),
написанный Майком
Перри (Mike Perry) (найти его можно по адресу www.void.ru/news/9908/snoof.txt).Он
основан на LinSniffer (рассмотренный далее).
Unix sniffer detect:
Сниффер
можно обнаружить командой:
#ifconfig -a
lo Link encap:Local
Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP
LOOPBACK RUNNING MTU:3924 Metric:1
RX packets:2373 errors:0
dropped:0 overruns:0 frame:0
TX packets:2373 errors:0 dropped:0
overruns:0 carrier:0
collisions:0 txqueuelen:0
ppp0 Link
encap:Point-to-Point Protocol
inet addr:195. 170.y.x
P-t-P:195.170.y.x Mask:255.255.255.255
UP POINTOPOINT PROMISC
RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:3281
errors:74 dropped:0 overruns:0 frame:74
TX packets:3398 errors:0
dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:10
Как
видите интерфейс ppp0 стоит в PROMISC mode. Либо оператор
загрузил снифф для
проверки сети, либо вас уже имеют… Но помните,
что ifconfig можно спокойно
подменить, поэтому юзайте tripwire для обнаружения
изменений и всяческие проги
для проверки на сниффы.
AntiSniff for Unix.
Работает на
BSD, Solaris и
Linux. Поддерживает ping/icmp time test, arp test, echo test, dns
test, etherping test, в общем аналог AntiSniff’а для Win, только для
Unix:).
Install:
#make linux-all
Sentinel
Тоже полезная прога для
отлова снифферов. Поддерживает множество тестов.
Проста в
использовании.
Install : #make
#./sentinel
. /sentinel [method] [-t
<target ip>] [options]
Methods:
[ -a ARP test ]
[ -d DNS test
]
[ -i ICMP Ping Latency test ]
[ -e ICMP Etherping test
]
Options:
[ -f <non-existant host> ]
[ -v Show version and
exit ]
[ -n <number of packets/seconds> ]
[ -I <device>
]
Опции настолько просты, что no
comments.
MORE
Вот еще несколько
утилит для проверки вашей сети(for
Unix):
packetstorm.securify.com/UNIX/IDS/scanpromisc.c -ремоутный
детектор PROMISC mode для ethernet карт (for red hat 5.x).
http://packetstorm.securify.com/UNIX/IDS/neped.c
— Network Promiscuous Ethernet Detector (нужно libcap & Glibc).
http://packetstorm.securify.com/Exploit_Code_Archive/promisc.c
-сканирует девайсы системы на детект сниффов.
http://packetstorm.securify.com/UNIX/IDS/ifstatus2.2.tar.gz
— ifstatus тестит сетевые интерфейсы в PROMISC mode.
10) Сетевой сниффер — CoderLessons.
com
Компьютеры общаются с использованием сетей. Эти сети могут находиться в локальной сети локальной сети или быть доступными для Интернета. Сетевые анализаторы — это программы, которые собирают низкоуровневые данные пакета, которые передаются по сети. Злоумышленник может проанализировать эту информацию, чтобы обнаружить ценную информацию, такую как идентификаторы пользователей и пароли.
В этой статье мы познакомим вас с общими приемами и инструментами анализа сети, используемыми для обнаружения сетей. Мы также рассмотрим контрмеры, которые вы можете использовать для защиты конфиденциальной информации, передаваемой по сети.
Темы, рассматриваемые в этом уроке
Что такое сетевой анализ?
Компьютеры обмениваются сообщениями по сети, используя IP-адреса. Как только сообщение отправлено по сети, компьютер-получатель с соответствующим IP-адресом отвечает своим MAC-адресом.
Обнаружение сетевого трафика — это процесс перехвата пакетов данных, передаваемых по сети. Это может быть сделано с помощью специализированного программного обеспечения или оборудования. Нюхать можно привыкнуть;
- Захват конфиденциальных данных, таких как учетные данные для входа
- Подслушивать сообщения чата
- Файлы захвата были переданы по сети
Ниже приведены протоколы, которые уязвимы для сниффинга.
- Telnet
- Rlogin
- HTTP
- SMTP
- NNTP
- POP
- FTP
- IMAP
Вышеуказанные протоколы уязвимы, если данные для входа отправляются в виде простого текста
Пассивный и активный нюхающий
Прежде чем мы рассмотрим пассивный и активный сниффинг, давайте рассмотрим два основных устройства, используемых для сетевых компьютеров; концентраторы и коммутаторы.
Концентратор работает, отправляя широковещательные сообщения на все выходные порты, кроме того, который отправил широковещание . Компьютер получателя отвечает на широковещательное сообщение, если IP-адрес совпадает. Это означает, что при использовании концентратора все компьютеры в сети могут видеть широковещательное сообщение. Он работает на физическом уровне (уровень 1) модели OSI.
Диаграмма ниже иллюстрирует работу концентратора.
Переключатель работает по-другому; он сопоставляет IP / MAC-адреса с физическими портами на нем . Широковещательные сообщения отправляются на физические порты, которые соответствуют конфигурации IP / MAC-адреса компьютера получателя. Это означает, что широковещательные сообщения видны только на компьютере получателя. Коммутаторы работают на канальном уровне (уровень 2) и сетевом уровне (уровень 3).
На приведенной ниже схеме показано, как работает коммутатор.
Пассивный анализатор перехватывает пакеты, передаваемые по сети, которая использует концентратор . Это называется пассивным анализом, потому что его трудно обнаружить. Это также легко выполнить, так как концентратор отправляет широковещательные сообщения на все компьютеры в сети.
Активный сниффинг перехватывает пакеты, передаваемые по сети, использующей коммутатор . Существует два основных метода, используемых для обнаружения связанных сетей: отравление ARP и затопление MAC.
Взлом деятельности: нюхать сетевой трафик
В этом практическом сценарии мы будем использовать Wireshark для перехвата пакетов данных, когда они передаются по протоколу HTTP . В этом примере мы будем анализировать сеть с помощью Wireshark, а затем войдем в веб-приложение, которое не использует безопасную связь. Мы войдем в веб-приложение на http://www.techpanda.org/
Адрес для входа — [email protected] , а пароль — Password2010 .
Примечание. Мы войдем в веб-приложение только для демонстрации. Техника также может прослушивать пакеты данных с других компьютеров, которые находятся в той же сети, что и тот, который вы используете для прослушивания. Анализатор не только ограничен techpanda. org, но также анализирует все пакеты данных HTTP и других протоколов.
Обнюхивать сеть с помощью Wireshark
На рисунке ниже показаны шаги, которые вы будете выполнять, чтобы выполнить это упражнение без путаницы
Загрузите Wireshark по этой ссылке http://www.wireshark.org/download.html
- Открыть Wireshark
- Вы получите следующий экран
- Выберите сетевой интерфейс, который вы хотите прослушать. Обратите внимание, что для этой демонстрации мы используем беспроводное сетевое соединение. Если вы находитесь в локальной сети, вам следует выбрать интерфейс локальной сети.
- Нажмите на кнопку запуска, как показано выше
- Адрес электронной почты для входа — [email protected], а пароль — Password2010.
- Нажмите на кнопку отправить
- Успешный вход в систему должен дать вам следующую панель
- Вернитесь в Wireshark и остановите живой захват
- Фильтрация результатов протокола HTTP только с использованием текстового поля фильтра
- Найдите столбец Info и найдите записи с HTTP-глаголом POST и щелкните по нему.
- Непосредственно под записями журнала находится панель со сводкой полученных данных. Посмотрите на резюме, в котором говорится о текстовых данных на основе строки: application / x-www-form-urlencoded
- Вы должны иметь возможность просматривать значения в виде открытого текста всех переменных POST, отправленных на сервер по протоколу HTTP.
Что такое MAC-флудинг?
MAC-флудинг — это метод анализа сетевого трафика, который заполняет таблицу MAC-адресов коммутатора поддельными MAC-адресами . Это приводит к перегрузке памяти коммутатора и превращает его в концентратор. Как только коммутатор скомпрометирован, он отправляет широковещательные сообщения всем компьютерам в сети. Это позволяет прослушивать пакеты данных при их отправке в сеть.
Контрмеры против MAC-наводнения
- Некоторые коммутаторы имеют функцию безопасности порта . Эта функция может использоваться для ограничения количества MAC-адресов в портах. Он также может использоваться для поддержки таблицы защищенных MAC-адресов в дополнение к таблице, предоставляемой коммутатором.
- Серверы аутентификации, авторизации и учета могут использоваться для фильтрации обнаруженных MAC-адресов.
Счетчик мер
- Ограничение доступа к физическим сетевым носителям значительно снижает вероятность установки сетевого анализатора.
- Шифрование сообщений при их передаче по сети значительно снижает их ценность, поскольку их трудно расшифровать.
- Изменение сети к Secure Shell (SSH) сетям также снижает шансы сети были понюхали.
Резюме
- Сетевой сниффинг перехватывает пакеты, когда они передаются по сети
- Пассивный сниффинг выполняется в сети, которая использует концентратор. Это трудно обнаружить.
- Активный сниффинг выполняется в сети, в которой используется коммутатор. Это легко обнаружить.
- Переполнение MAC-адресов работает путем заполнения списка адресов таблицы MAC-адресов поддельными MAC-адресами. Это делает переключатель работать как концентратор
- Меры безопасности, изложенные выше, могут помочь защитить сеть от перехвата.
Перехват паролей пользователей с помощью Wireshark
Многие пользователи и не догадываются, что заполняя логин и пароль при регистрации или авторизации на закрытом Интернет-ресурсе и нажимая ENTER, эти данные легко могут перехватить. Очень часто они передаются по сети не в защищенном виде. Поэтому если сайт, на котором вы пытаетесь авторизоваться, использует HTTP протокол, то очень просто выполнить захват этого трафика, проанализировать его с помощью Wireshark и далее с помощью специальных фильтров и программ найти и расшифровать пароль.
Лучшее место для перехвата паролей – ядро сети, где ходит трафик всех пользователей к закрытым ресурсам (например, почта) или перед маршрутизатором для выхода в Интернет, при регистрациях на внешних ресурсах. Настраиваем зеркало и мы готовы почувствовать себя хакером.
Шаг 1. Устанавливаем и запускаем Wireshark для захвата трафика
Иногда для этого достаточно выбрать только интерфейс, через который мы планируем захват трафика, и нажать кнопку Start. В нашем случае делаем захват по беспроводной сети.
Захват трафика начался.
Шаг 2. Фильтрация захваченного POST трафика
Открываем браузер и пытаемся авторизоваться на каком-либо ресурсе с помощью логина и пароля. По завершению процесса авторизации и открытия сайта мы останавливаем захват трафика в Wireshark. Далее открываем анализатор протоколов и видим большое количество пакетов. Именно на этом этапе большинство ИТ-специалистов сдаются, так как не знают, что делать дальше. Но мы знаем и нас интересуют конкретные пакеты, которые содержат POST данные, которые формируются на нашей локальной машине при заполнении формы на экране и отправляются на удаленные сервер при нажатии кнопки «Вход» или «Авторизация» в браузере.
Вводим в окне специальный фильтр для отображения захваченных пакетов: http.request.method == “POST”
И видим вместо тысячи пакетов, всего один с искомыми нами данными.
Шаг 3. Находим логин и пароль пользователя
Быстрый клик правой кнопки мыши и выбираем из меню пункт Follow TCP Steam
После этого в новом окне появится текст, который в коде восстанавливает содержимое страницы. Найдем поля «password» и «user», которые соответствуют паролю и имени пользователя. В некоторых случаях оба поля будут легко читаемы и даже не зашифрованы, но если мы пытаемся захватить трафик при обращении к очень известным ресурсам типа: Mail.ru, Facebook, Вконтакте и т.д., то пароль будет закодирован:
HTTP/1.1 302 Found
Date: Mon, 10 Nov 2014 23:52:21 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5. 3.3
P3P: CP=»NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM»
Set-Cookie: non=non; expires=Thu, 07-Nov-2024 23:52:21 GMT; path=/
Set-Cookie: password=e4b7c855be6e3d4307b8d6ba4cd4ab91; expires=Thu, 07-Nov-2024 23:52:21 GMT; path=/
Set-Cookie: scifuser=networkguru; expires=Thu, 07-Nov-2024 23:52:21 GMT; path=/
Location: loggedin.php
Content-Length: 0
Connection: close
Content-Type: text/html; charset=UTF-8
Таким образом, в нашем случае:
Имя пользователя: networkguru
Пароль: e4b7c855be6e3d4307b8d6ba4cd4ab91
Шаг 4. Определение типа кодирования для расшифровки пароля
Заходим, например, на сайт http://www.onlinehashcrack.com/hash-identification.php#res и вводим наш пароль в окно для идентификации. Мне выдан был список протоколов кодирования в порядке приоритета:
Шаг 5. Расшифровка пароля пользователя
На данном этапе можем воспользоваться утилитой hashcat:
~# hashcat -m 0 -a 0 /root/wireshark-hash. lf /root/rockyou.txt
На выходе мы получили расшифрованным пароль: simplepassword
Таким образом, с помощью Wireshark мы можем не только решать проблемы в работе приложений и сервисов, но и также попробовать себя в роли хакера, осуществляя перехват паролей, которые пользователи вводят в веб-формах. Также можно узнавать и пароли к почтовым ящикам пользователей, используя незатейливые фильтры для отображения:
- Протокол POP и фильтр выглядит следующим образом: pop.request.command == «USER» || pop.request.command == «PASS»
- Протокол IMAP и фильтр будет: imap.request contains «login»
- Протокол SMTP и потребуется ввод следующего фильтра: smtp.req.command == «AUTH»
и более серьезные утилиты для расшифровки протокола кодирования.
Шаг 6. Что делать, если трафик зашифрован и используется HTTPS?
Для ответа на этот вопрос есть несколько вариантов.
Вариант 1. Подключиться в разрыв соединения между пользователем и сервером и захватить трафик в момент установления соединения (SSL Handshake). В момент установки соединения можно перехватить сеансовый ключ.
Вариант 2. Вы можете расшифровать трафик HTTPS, используя файл журнала сеансовых ключей, записываемый Firefox или Chrome. Для этого браузер должен быть настроен на запись этих ключей шифрования в файл журнала (пример на базе FireFox), и вы должны получить этот файл журнала. По сути, необходимо похитить файл с ключом сессии с жесткого диска другого пользователя (что является незаконным). Ну а далее захватить трафик и применить полученный ключ для его расшифровки.
Уточнение. Мы говорим о веб-браузере человека, у которого пытаются украсть пароль. Если же мы подразумеваем расшифровку нашего собственного HTTPS трафика и хотим потренироваться, то эта стратегия будет работать. Если вы пытаетесь расшифровать HTTPS трафик других пользователей без доступа к их компьютерам, это не сработает – на то оно и шифрование, и личное пространство.
После получения ключей по варианту 1 или 2 необходимо прописать их в WireShark:
- Идем в меню Edit – Preferences – Protocols – SSL.
- Ставим флаг «Reassemble SSL records spanning multiple TCP segments».
- «RSA keys list» и нажимаем Edit.
- Вводим данные во все поля и прописываем путь в файлу с ключом
WireShark может расшифровывать пакеты, которые зашифрованы с использованием алгоритма RSA. В случае если используются алгоритмы DHE/ECDHE, FS, ECC, сниффер нам не помощник.
Вариант 3. Получить доступ к web-серверу, которым пользуется пользователь, и получить ключ. Но это является еще более сложной задачей. В корпоративных сетях с целью отладки приложений или контент фильтрации этот вариант реализуется на легальной основе, но не с целью перехвата паролей пользователей.
БОНУС
ВИДЕО: Wireshark Packet Sniffing Usernames, Passwords, and Web Pages
См. также:
в чём бесплатный сниффер проигрывает коммерческим аналогам?
Анализ протоколов всегда ИТ-специалистами рассматривается как последняя линия обороны при решении проблем в работе приложений или сетевых устройств. Практически у каждого ИТ-специалиста на ноутбуке установлен анализатор протоколов типа Wireshark и каждый бесспорно может подключить его к сети и выполнить захват трафика. Но что делать дальше? Просто просмотреть пакеты для решения проблемы недостаточно. Для быстрого устранения проблем необходимо понимать основы сетевых протоколов, уметь настраивать фильтры для анализа полученных данных.
Лет 25 назад скорости в сети были низкие, сети плоские и анализатор протоколов использовался для решения многих проблем. В работе WAN каналов захватывали биты и байты и вручную формировали из них блоки данных. В локальной сети, по причине использования концентраторов и репиторов, трафик был виден практически весь в любой точке подключения. Позже с развитием корпоративных приложений и транспортного протокола TCP начали появляться встроенные экспертные системы, которые помогали определить наличие таких ошибок как TCP Retransmitions, Zero Window Size, Frozen Window и т.д.
В современных облачных, виртуальных сетях и приложениях технологии шагнули в область фокуса не на протоколах сетевого или транспортного уровня, а на уровень приложений, так как сами приложения стали все более распределенными, многоуровневыми и сложными. Все это предъявляет дополнительные требования к анализаторам протоколам (или снифферам, как их называют в народе) и встроенные экспертные системы должны помогать искать проблемы на уровне приложений.
В связи с концентрацией на самых высоких уровнях модели OSI меняется и сам подход к определению проблемы и поиска ее причины. Если классические анализаторы протоколов и их экспертные системы (типа Wireshark) работают по схеме снизу верх, то большинство коммерческих решений уже работает в направлении от приложения к декодированию трафика. И, как показывает жизнь, важнее автоматический расчет дельт по времени между нужными пакетами при общении между сервером и приложением, а также способность восстановить данные, которые были запрошены, нежели просто декодированный протокол на канальном, сетевом или транспортном уровнях.
В современном мире от ИТ-инфраструктуры требуется высокая производительность, а от специалистов, которые их обслуживают высокая эффективность. Анализаторы протоколов можно и нужно продолжать использовать, только необходимо переходить к более современным решениям в мире, где время решает все.
В этой статье мы рассмотрим пять параметров, по которым популярный бесплатный сниффер Wireshark проигрывает своим коммерческие аналогам.
Визуализация проблем: пакетный уровень vs уровень приложений
Wireshark имеет бесспорное преимущество при решении проблем в работе сети на канальном и сетевом уровнях. Это бесплатное решение и все затраты сводятся к времени: установить, освоить и решить или попытаться решить проблему. Количество копий не ограничено, и можно вооружить всех ИТ-специалистов, включая системных администраторов. Идеальное и удобное решение для просмотра пакетов, передаваемых по сети. После окончания захвата трафика мы видим вот такой экран:
На экране отображаются пакеты и их декодировка в лучших традициях данного жанра. Ни для кого не секрет, что декодирование протоколов Wireshark делает просто великолепно и многие коммерческие решения используют их наработки. Но далее все зависит от оператора и его познаний в области протоколов и их структуры, так как Wireshark дает пищу, но ее надо правильно приготовить и переварить. Именно поэтому наиболее популярный запрос в Яндекс после слова анализатор протоколов и сниффер — это фильтры и как их настраивать. Об этом поговорим позже.
При открытии того же самого файла в коммерческом продукте. Мы видим краткий обзор по сути ИТ-инфраструктуры и используемых в момент захвата корпоративных приложений. Для любого приложения мы видим количество серверов, потоков данных, количество проблем и других событий. В дополнении мы можем оценить полосу пропускания, которую занимает тот или иной протокол в рамках данного файла с захваченным трафиком. Мы можем выбрать любой протокол и, кликнув на него, сконцентрироваться на решении проблемы, не перебирая тысячи пакетов. Для настройки соответствующего фильтра просмотра или захвата достаточно кликнуть одну кнопку.
Экспертный анализ на уровне приложений
Цель в борьбе с проблемами в ИТ-инфраструктуре – сократить время простоя или время на решение этой проблемы. Когда речь заходит о решении проблем на транспортном уровне или уровне приложений встроенная экспертная система основной ключ к быстрому успеху. Wireshark имеет встроенную экспертную систему, но с фокусом от транспортного уровня вниз по стеку, что не облегчит жизнь при анализе проблем на уровне «7» (уровень приложения) сетевой модели OSI.
Коммерческие решения в данном случае принесут большую пользу, так как на обзорном экране мы видим красные точки, информирующие нас о проблемах, и далее в один клик мы видим список всех негативных событий, которые происходят на уровне приложения.
Таким образом, в три клика мышью мы получили список событий с адресами получателя и отправителя в адресных пространствах IPv4 или IPv6, типом протокола и временем обнаружения.
Восстановление структуры запросов
В некоторых случаях при решении проблем в работе Web приложений или баз данных важно понимать, какой запрос или страницу пытался загрузить пользователь. Для этого в сниффере Wireshark есть функция Follow TCP Stream, которая на основании комбинации адреса сервера и номеру порта может собрать пакеты, которые относятся к одной TCP сессии.
В окне аккуратно будут отображены данных, которые содержались в пакетах. Тем не менее, подобный формат не очень полезен при разрешении проблем с SQL запросами. На экране как раз отображается подобный запрос к базе данных. При сильном желании можно найти небольшую часть информации, но невозможно понять, что являлось SQL запросом, а что являлось ответом на него.
При использовании коммерческих решений у нас не возникнет проблем. Все запросы разбиты на несколько потоков. И нам легко определить их последовательность и что являлось запросом, а что ответом на него. Кликая на каждый отдельный поток, анализатор протоколов отобразит данные, которые запрашивались в удобном для понимания виде. Оценивая разницу во времени между потоками, мы можем понять какой запрос или ответ вызвал замедление в работе приложения.
Временная диаграмма потоков
Наглядное представление намного выразительнее, чем множество строк в таблице и позволяет сэкономить много времени при анализе, если пакеты выстроены в структуру и наглядно видна их последовательность. Wireshark и коммерчески продукты имеют такую возможность, но есть отличия в деталях и формате вывода данных. На двух скриншотах открыт один и тот же файл.
Для диагностики важно знать время установления соединения с сервером, время прохождения пакета по сети SYN и SYN ACK, время получения запроса HTTP к серверу и время начала ответа на него. Wireshark показывает нам все это, но в диаграмме присутствуют и другие фреймы, которые ходят между устройствами. Это мешает сконцентрироваться на решении проблемы. Время слева показывает единое время с момента начала общения между устройствами и все дельты необходимо высчитывать вручную, чтобы понять, где происходят основные потери времени.
Коммерческие продукты удаляют все лишние пакеты. На скриншоте мы видим запрос от пользователя к серверу (фрейм 586) и ответ, отправленный сервером (фрейм 605). Дельта по времени между этими фреймами позволяет сделать вывод о том, сколько времени потребовалось серверу для ответа на запрос. Убирая фреймы, которые не относятся к данной транзакции очень удобно, и позволяет проанализировать всю транзакцию на одном экране. Автоматически высчитав все дельты по времени между пакетами.
Объединение трейсов
Основная проблема при анализе производительности инфраструктуры — это понять, где происходят основные тормоза в сети или сервере. Для точного ответа на этот вопрос приходится осуществлять захват трафика на стороне пользователя и на стороне сервера. Этот метод позволит быстро ответит на поставленный вопрос. При решении данной задачи и Wireshark и коммерческие решения могут работать совместно. С помощью Wireshark мы осуществляем захват трафика в двух местах и далее с помощью функции, реализованной в коммерческих продуктах объединить два или несколько файлов. Сторонники Wireshark скажут, мы это и с помощью Mergecap сделаем. Да это верно, но коммерческие решения также объединенный файл синхронизируют по времени, и после этого временная диаграмма потока данных будет выглядеть очень наглядно и удобно для восприятия и анализа.
Выводы
На основании вышесказанного можно сделать вывод о том, что быстрый поиск и локализация проблем в производительности сети или приложений позволяет сократить время простоя и его влияние на эффективность, и репутацию компании в целом. Основные преимущества Wireshark – это первоначальная стоимость решения (БЕСПЛАТНО), захват трафика в каналах на скорости до 1Гбит/сек (почему, покажем наглядно в следующих материалах) и его отличные возможности в декодировании трафика и решении проблем на транспортном, сетевом и канальном уровнях.
Но если задача более сложная и связана с устранением проблем в работе приложений и сервисов, то коммерческие продукты имеют очевидные преимущества, которые позволяют повысить эффективность специалистов и существенно сократить время устранения проблем с производительностью на всех уровнях модели OSI от уровня 2 до уровня 7 при несущественных первоначальных инвестициях. Из наиболее интересных коммерческих продуктов тут можно отметить решение ClearSight Analyzer от компании Fluke Networks и решение Observer Analyzer от Network Instruments.
См. также:
Видео “Ограничения бесплатного сниффера Wireshark“.
Всегда на связи, Игорь Панов
См. также:
Пример настройки встроенного перехвата пакетов для Cisco IOS и IOS-XE
Введение
В этом документе описывается встроенная в программное обеспечение Cisco IOS® функция перехвата пакетов Embedded Packet Capture (EPC).
Предварительные условия
Требования
Для этого документа отсутствуют особые требования.
Используемые компоненты
Сведения, содержащиеся в данном документе, касаются следующих версий программного обеспечения и оборудования:
- Cisco IOS версии 12. 4(20)T или более поздней версии
- Cisco IOS-XE версии 15.2(4)S-3.7.0 или более поздней версии
Информация, содержащаяся в этом документе, была получена от устройств в лабораторной среде. Все устройства, описанные в данном документе, были запущены с конфигурацией по умолчанию. Если используемая сеть является действующей, убедитесь в понимании возможного влияния любой из применяемых команд.
Общие сведения
Если эта функция включена, маршрутизатор перехватывает переданные и полученные пакеты. Пакеты сохраняются в буфере в DRAM и таким образом теряются после перезагрузки. После сбора данных их можно изучать в обзорном или подробном представлении на маршрутизаторе. Кроме того, данные можно экспортировать в виде файла перехвата пакетов (PCAP) для дальнейшего изучения. Это средство настраивается в режиме EXEC и считает временным вспомогательным инструментом. В результате конфигурация средства не сохраняется в конфигурации маршрутизатора и удаляется после перезагрузки системы.
Инструмент Packet Capture Config Generator and Analyzer (Анализатор и генератор конфигурации перехвата пакетов) доступен для клиентов Cisco и помогает в настройке, перехвате и извлечении данных перехвата пакетов.
Пример конфигурации Cisco IOS
Базовая конфигурация EPC
- Определите capture buffer, который представляет собой временный буфер для хранения перехваченных пакетов. При определении буфера существуют различные, доступные для выбора параметры; такие как размер, максимальный размер пакета, а также тип буфера (круговой/линейный):
monitor capture buffer BUF size 2048 max-size 1518 linear
- Также можно применить фильтр, чтобы перехватывать только нужный трафик. Определите список контроля доступа (ACL) в режиме настройки и примените фильтр к буферу:
ip access-list extended BUF-FILTER
permit ip host 192.168.1.1 host 172.16.1.1
permit ip host 172.16.1.1 host 192. 168.1.1monitor capture buffer BUF filter access-list BUF-FILTER
- Определите capture point (точку перехвата), которая определяет местоположение, где происходит перехват. Точка перехвата также определяет, происходит ли перехват пакетов IPv4 или IPv6 и на каком пути коммутации (процессорная коммутация или CEF):
monitor capture point ip cef POINT fastEthernet 0 both
- Подключите буфер к точке перехвата:
monitor capture point associate POINT BUF
- Запустите перехват:
monitor capture point start POINT
- Перехват теперь активен. Дождитесь сбора нужных данных.
- Остановите перехват:
monitor capture point stop POINT
- Изучите буфер устройства:
show monitor capture buffer BUF dump
Примечание. Эти выходные данные показывают только шестнадцатеричный дамп данных перехвата пакетов. Есть два способа, позволяющие просмотреть их в удобном виде.
- Экспортируйте буфер с маршрутизатора для дальнейшего анализа:
monitor capture buffer BUF export tftp://10.1.1.1/BUF.pcap
Совет: Был создан запрос на улучшение CSCuw77601 для добавления варианта отправки по электронной почте, который можно выбрать при выполнении экспорта, чтобы можно было отправлять буфер напрямую на адрес электронной почты.
- Однако предыдущий способ не всегда практичен, поскольку требует доступа к маршрутизатору по T/FTP. В таких ситуациях можно сделать копию шестнадцатеричного дампа и использовать для просмотра файлов любое онлайн-средство преобразования шестнадцатеричного формата в PCAP.
- Экспортируйте буфер с маршрутизатора для дальнейшего анализа:
- После сбора нужных данных удалите capture point и capture buffer:
no monitor capture point ip cef POINT fastEthernet 0 both
no monitor capture buffer BUF
Примечания:
- До версии 15. 0(1)M программного обеспечения Cisco IOS максимальный размер буфера составлял 512 Кбайт.
- До версии 15.0(1)M программного обеспечения Cisco IOS максимальный размер перехваченного пакета составлял 1024 байта.
- Буфер пакетов хранится в DRAM и удаляется при перезагрузке.
- Конфигурация перехвата не сохраняется в NVRAM и удаляется при перезагрузке.
- Точка перехвата может быть определена для перехвата пакетов по пути коммутации CEF или процессорной коммутации.
- Точка перехвата может быть определена для перехвата пакетов только на одном интерфейсе или глобально.
- Когда накопительный буфер экспортируется в формате PCAP, информация уровня 2 (такая как инкапсуляция Ethernet) не сохраняется.
- Дополнительные сведения о командах, используемых в этом разделе, см. в статье Практические рекомендации по командам поиска.
Пример конфигурации Cisco IOS XE
Встроенная функция перехвата пакетов Embedded Packet Capture была представлена в версии 3. 7-15.2(4)S программного обеспечения Cisco IOS XE. Конфигурация перехвата отличается от Cisco IOS, поскольку тут добавлено больше возможностей.
Базовая конфигурация EPC
- Определите местоположение, где будет происходить перехват:
monitor capture CAP interface GigabitEthernet0/0/1 both
- Привяжите фильтр. Можно задать встроенный фильтр, использовать список контроля доступа или указать ссылку на карту классов:
monitor capture CAP match ipv4 protocol tcp any any
- Запустите перехват:
monitor capture CAP start
- Перехват теперь активен. Дождитесь сбора нужных данных.
- Остановите перехват:
monitor capture CAP stop
- Изучите данные перехвата в обзорном представлении:
show monitor capture CAP buffer brief
- Изучите данные перехвата в подробном представлении:
show monitor capture CAP buffer detailed
- Кроме того, экспортируйте перехват в формате PCAP для дальнейшего анализа:
monitor capture CAP export ftp://10. 0.0.1/CAP.pcap
- После сбора нужных данных удалите перехват:
no monitor capture CAP
Примечания:
Проверка
В настоящее время для этой конфигурации нет процедуры проверки.
Устранение неполадок
В этом разделе описывается процесс устранения неполадок конфигурации.
Для функции EPC, которая выполняется в Cisco IOS XE, можно использовать следующую команду отладки, чтобы проверить правильность настройки EPC:
debug epc provision
debug epc capture-point
Дополнительные сведения
Сетевой монитор — Инструменты разработчика Firefox
Сетевой монитор (Network Monitor) показывает все сетевые запросы, которые выполняет Firefox (например, когда загружается страница или выполняются запросы типа XMLHttpRequests), а также как долго выполняется запрос и детали запроса.
Есть несколько различных способов:
Пожалуйста, обратите внимание, что сочетание клавиш было изменено в Firefox 55
- Нажмите Ctrl + Shift + E ( Command + Option + E на Mac).
- Выберите «Сеть» из меню «Web Developer» (это подменю меню «Tools» на OS X или Linux).
- Кликните значок (), который находится на панели инструментов в меню (), а после выберите «Сеть».
Сетевой монитор появится внизу окна браузера. Для просмотра запросов перезагрузите страницу:
Сетевой монитор записывает сетевые запросы постоянно, пока открыты Инструменты разработчика, даже когда вкладка Сеть не выбрана. Поэтому можно начать отладку страницы, например, в Веб-консоли, а потом переключиться и посмотреть сетевую активность в Сетевом мониторе без перезагрузки страницы.
Интерфейс разбит на четыре основные части:
Начиная с Firefox 47 и далее, панель инструментов находится сверху окна. В ранних версиях Firefox она располагалась снизу.
Она содержит:
Примечание: Начиная с Firefox 58, кнопка фильтра «Flash»более недоступна, поэтому запросы Flash включены в фильтр «Прочее» (баг 1413540).
По умолчанию Сетевой монитор показывает список всех сетевых запросов, сделанных по ходу загрузки страницы. Каждый запрос отображается в отдельной строке:
По умолчанию Сетевой монитор очищается каждый раз, когда вы переходите на новую страницу или перезагружаете текущую. Вы можете это изменить посредством включения галочки «Включить непрерывные логи» в настройках.
Поля таблицы запросов
Начиная с Firefox 55, вы можете выбирать разные колонки, кликая правой кнопкой мыши на заголовок таблицы, а затем выбирая нужные колонки в выпадающем меню. Опция «Восстановить колонки» доступна для сброса списка колонок к исходному варианту. Список колонок:
- Статус (Status): возвращённый HTTP-код статуса. Здесь есть цветной значок:
Точный код отображён сразу после значка.
- Метод (Method): HTTP-метод запроса.
- Файл (File): базовое имя запрошенного файла.
- Протокол (Protocol): Используемый сетевой протокол. (По умолчанию скрытая колонка. Новая в Firefox 55)
- Схема (Scheme): Схема (https/http/ftp/…), взятая из пути запроса. (По умолчанию скрытая колонка. Новая в Firefox 55)
- Домен (Domain): домен, к которому происходит запрос.
- Если запрос использовал SSL/TLS, и подключение имело низкий уровень безопасности, например, некриптостойкий шифр, то вы увидите предупреждающий треугольник у имени домена. Вы сможете увидеть более подробную информацию о проблеме на вкладке Защита в области деталей запроса.
- Наведите мышь на имя домена, чтобы увидеть IP-адрес.
- Значок рядом с доменом предоставит расширенную информацию о статусе безопасности этого запроса. Смотрите Значки безопасности.
- Удалённый IP (Remote IP): IP-адрес сервера, отвечающего на запрос. (По умолчанию скрытая колонка. Новая в Firefox 55)
- Причина (Cause): Причина, по который был вызван запрос, например, XHR-запрос,
<img>
, скрипт, скрипт, запрашивающий изображение и др. (Новая в Firefox 49) - Тип (Type):
Content-type
ответа. - Куки (Cookies): Количество куки, связанных с запросом. (По умолчанию скрытая колонка. Новая в Firefox 55)
- Set-Cookies: Количество куки, связанных с ответом. (По умолчанию скрытая колонка. Новая в Firefox 55)
- Передано (Transferred): число байт, которые фактически были переданы для загрузки ресурса. Это число будет меньше, чем Размер, если ресурс был упакован. Начиная с Firefox 47, если ресурс был получен из кеша service worker, то в этой ячейке будет отображено «service worker». Если значение получено из кеша браузера — то «кешировано».
- Размер (Size): размер переданного ресурса.
По клику на заголовок колонки произойдёт сортировка всех запросов по этой колонке. По умолчанию сортировка происходит по колонке «Временная шкала».
Миниатюры изображений
Если файл является изображением, то в строку будет включена его миниатюра, при наведении на которую появится просмотр изображения во всплывающей подсказке:
Значки безопасности
Сетевой монитор показывает значок в колонке Домен:
Это предоставляет дополнительную информацию о безопасности запроса:
По слабым и ошибочным HTTPS-запросам, вы можете посмотреть более детальную информацию о проблеме на вкладке «Защита».
Колонка «Причина» (Cause)
Колонка «Причина» указывает, что было причиной запроса. Обычно это очевидно, и можно увидеть корреляцию между этой колонкой и колонкой «Тип». Наиболее распространённые значения:
- document: Исходный HTML-документ.
- img: Элемент
<img>
. - imageset: Элемент
<img>
. - script: Файл JavaScript.
- stylesheet: Файл CSS.
Когда запрос срабатывает из JavaScript, то слева от надписи в колонке «Причина» появится маленький значок JS. При наведении на него курсором мыши появится всплывающее окно, содержащее трассировку стека для запроса; это даёт подсказку, откуда был вызван запрос.
Во всплывающей подсказке вы можете кликнуть в любой из появившихся элементов, чтобы открыть связанный скрипт в панели «Отладчик».
Временной график
Список запросов отображает время выполнения разных частей каждого запроса.
Каждый график дан в горизонтальном виде в своей строке запроса, сдвинутый относительно позиций других запросов, поэтому вы можете увидеть полное время использованное для загрузки страницы. Для понимания деталей цветового кодирования, используемого здесь, загляните в раздел «Тайминги».
Начиная с Firefox 45 график содержит две вертикальные линии:
- синяя линия маркирует точку, в которой произошло событие
DOMContentLoaded
страницы - красная линия маркирует точку, в которой произошло событие
load
страницы
Фильтр запросов
Вы можете отфильтровать запросы по типу контента, по URL, по XMLHttpRequests или WebSocket, или по свойствам запроса.
Фильтрация по типу контента
Для фильтрации по типу контента используйте кнопки на панели инструментов.
Фильтрация XHR
Для просмотра только XHR-запросов используйте кнопку «XHR» панели инструментов.
Фильтрация WebSockets
Для просмотра только подключений WebSocket, используйте кнопку «WS» панели инструментов.
Для контроля данных, передаваемых через WebSocket-соединения, попробуйте использовать дополнение WebSocket Sniffer.
Фильтрация по URL
Для фильтрации по URL используйте поле поиска, расположенное правее на Панели инструментов. Кликните на это поле или нажмите клавиши Ctrl + F или Cmd + F, и начните набирать текст. При этом список запросов будет отфильтрован по строкам, содержащим введённую подстроку; кроме того, фильтрация также будет происходить по колонкам «Домен» и «Файл».
Начиная с Firefox 45, вы можете фильтровать запросы, которые не содержат введённую вами строку, предварив вводимую строку символом «-«. Например, запрос «-google.com» покажет все запросы, которые не имеют подстроки «google.com» в своих URL.
Фильтрация по свойствам
Для фильтрации по конкретным свойствам запроса используйте поле поиска на Панели инструментов. Но это поле признаёт только определённые ключевые слова, которые используются для фильтрации по конкретным свойствам запроса. За ключевым словом следует двоеточие, а затем значение фильтра. Значение фильтра регистровнезависимое. Если написать знак «минус» (-
), то это применит к фильтру отрицание. Также можно комбинировать несколько фильтров через пробел.
Ключевое слово | Значение | Примеры |
---|---|---|
status-code | Показать ресурсы, имеющие указанный код HTTP-статуса. | status-code:304 |
method | Показать ресурсы, запрошенные через указанный HTTP-метод запроса. | method:post |
domain | Показать ресурсы, пришедшие с указанного домена. | domain:mozilla.org |
remote-ip | Показать ресурсы, пришедшие с сервера с указанным IP-адресом. | remote-ip:63.245.215.53 remote-ip:[2400:cb00:2048:1::6810:2802] |
cause | Показать ресурсы, соответствующие типу причины. Типы можно найти в описании колонки «причина». | cause:js cause:stylesheet |
transferred | Показать ресурсы, имеющие указанный размер переданных данных или размер близкий к нему. Буква k может быть использована как суффикс для килобайт, m — мегабайт. Например, значение 1k эквивалентно 1024 . | transferred:1k |
size | Показать ресурсы, имеющие указанный размер (после декомпрессии) или размер близкий к указанному. Буква k может быть использована как суффикс для килобайт, m — мегабайт. Например, значение 1k эквивалентно 1024 . | size:2m |
larger-than | Показать ресурсы, которые больше чем указанный размер в байтах. Буква k может быть использована как суффикс для килобайт, m — мегабайт. Например, значение 1k эквивалентно 1024 . | larger-than:2000 -larger-than:4k |
mime-type | Показать ресурсы, которые соответствуют указанному MIME-типу. | mime-type:text/html mime-type:image/png mime-type:application/javascript |
is | is:cached и is:from-cache показывают только ресурсы, пришедшие из кеша.is:running показывает только ресурсы, передаваемые в настоящее время. | is:cached -is:running |
scheme | Показать ресурсы, переданные через указанную схему. | scheme:http |
has-response-header | Показать ресурсы, содержащие указанный HTTP-заголовок в ответе. | has-response-header:cache-control has-response-header:X-Firefox-Spdy |
set-cookie-domain | Показать ресурсы, имеющие заголовок Set-Cookie с атрибутом Domain , который имеет указанное значение. | set-cookie-domain:.mozilla.org |
set-cookie-name | Показать ресурсы, имеющие заголовок Set-Cookie и в нём атрибут с указанным именем. | set-cookie-name:_ga |
set-cookie-value | Показать ресурсы, имеющие заголовок Set-Cookie и в нём атрибут с указанным значением. | set-cookie-value:true |
regexp | Показать ресурсы, имеющие URL, который соответствует данному регулярному выражению. | regexp:\d{5} |
Контекстное меню
При клике правой клавишей мыши по строке отобразится контекстное меню:
- Копировать URL
- Копировать параметры URL (новое в Firefox 40)
- Копировать POST-данные (новое в Firefox 40, только для запросов POST)
- Копировать как cURL
- Копировать заголовки запроса (новое в Firefox 40)
- Копировать заголовки ответа (новое в Firefox 40)
- Копировать ответ (новое в Firefox 40)
- Копировать изображение как URL данных (только для изображений)
- Копировать всё как HAR (новое в Firefox 41)
- Сохранить всё как HAR (новое в Firefox 41)
- Сохранить изображение как (новое в Firefox 55, только для изображений)
- Изменить и снова отправить
- Открыть в новой вкладке
- Запустить анализ производительности
Изменить и снова отправить
Эта опция открывает редактор, позволяющий вам отредактировать метод запроса, URL, параметры и заголовки и ещё раз отправить запрос.
Копировать как cURL
Эта опция копирует сетевой запрос в буфер как команду cURL, и вы сможете запустить его из командной строки. Команда может включать следующие опции:
-X [METHOD] | Если метод запроса не GET или POST |
--data | Для параметров запроса, закодированных в URL |
--data-binary | Для параметров запроса типа Multipart. Например, файлы. |
--http/VERSION | Если HTTP версия не 1.1 |
-I | Если метод запроса HEAD |
-H | Один для каждого заголовка запроса. Начиная с Firefox 34, если присутствует заголовок «Accept-Encoding», то команда cURL будет включать |
Копировать/Сохранить всё как HAR
Новое в Firefox 41.
Эти операции создают HTTP-архив (HAR) для всех запросов из списка. Формат HAR позволяет вам экспортировать детальную информацию о сетевых запросах. «Копировать всё как HAR» копирует данные в буфер, «Сохранить всё как HAR» открывает диалог сохранения архива на диск.
После щелчка по строке в правой части Сетевого монитора появится новая панель, которая предоставит более детальную информацию о запросе.
Вкладки сверху этой панели позволяют переключаться между следующими страницами:
- Заголовки (Headers)
- Куки (Cookies)
- Параметры (Params)
- Ответ (Response)
- Тайминги (Timings)
- Защита (Security) (только для защищённых запросов)
- Предпросмотр (Preview) (только для типа HTML) (Удалено в Firefox 55)
Щелчок по значку, расположенном справа на панели инструментов (справа от поиска), закроет эту панель и вернёт вас к просмотру списка.
Эта вкладка содержит основную информацию о запросе:
Она включает:
- URL-запроса
- Метод запроса
- Удалённый IP-адрес и порт (новое в Firefox 39)
- Код состояния со ссылкой на документацию на сайте MDN (если она есть)
- HTTP-заголовки запроса и ответа, которые были отправлены
- кнопка «Изменить и снова отправить»
Вы можете отфильтровать отображаемые заголовки:
Кроме того, каждый заголовок это ссылка для углублённого изучения документации заголовков HTTP.
Куки
(Cookies)
Эта вкладка показывает все детали кук, которые были отправлены с запросом или ответом:
Как и в случае с заголовками их список можно фильтровать.
Параметры
(Params)
Эта вкладка отображает параметры GET и данные POST запроса:
Ответ
(Response)
Полное содержание ответа. Если в ответе HTML, JS или CSS, то он отобразится как текст:
Если ответ — JSON, то он отобразится как просматриваемый объект.
Если ответ — изображение, то вкладка будет содержать предпросмотр:
Тайминги
(Timings)
Вкладка «Тайминги» разбивает сетевой запрос на следующие этапы, определённые в спецификации HTTP-архива (HAR):
Имя | Описание |
---|---|
Блокировка (Blocked) | Время, потраченное в очереди ожидания для создания сетевого соединения. Браузер накладывает ограничение на число одновременных соединений с одним сервером. В по умолчанию это 6, но это можно изменить, используя свойство |
Разрешение DNS (DNS resolution) | Время на разрешение имени хоста. |
Соединение (Connecting) | Время на создание TCP-соединения. |
Отправка (Sending) | Время на отправку HTTP-запроса на сервер. |
Ожидание (Waiting) | Ожидание ответа от сервера. |
Получение (Receiving) | Время на чтение полного ответа с сервера (или из кеша). |
Здесь представлена детальная информация, есть аннотации, а также «графики-полосы» времени запроса, которые показывают разбивку общего времени на этапы:
Защита
(Security)
Если работа с сайтом ведётся через HTTPS, то у вас появится дополнительная вкладка «Защита». Она содержит детали об используемой безопасной связи, включая: протокол, набор шифров, детали сертификата:
На вкладке «Защита» отображается предупреждение о слабой безопасности:
- Использование SSLv3 вместо TLS
- Использование шифра RC4
Предпросмотр
(Preview)
Удалено в Firefox 55.
Если тип файла это HTML, то появится вкладка «Предпросмотр». Она отображает вид, как выглядит HTML-страница в браузере:
В Firefox 58 и далее, Сетевой монитор имеет кнопку, которая приостанавливает и возобновляет запись трафика текущей страницы. Это полезно, когда, например, вы хотите получить установившийся вид страницы для отладки, но вид страницы пока ещё меняется, потому что она ещё грузится или выполняются запросы. Кнопка «Пауза» позволяет увидеть текущий снимок состояния (snapshot).
Эта кнопка находится с краю слева на главной панели Сетевого монитора, и выглядит как обычная кнопка «Пауза» — .
Вот её вид:
Когда она нажата, то меняет значок на иконку «Пуск» (треугольник), и вы можете возобновить запись трафика, нажав на эту кнопку ещё раз.
Сетевой монитор включает инструмент для анализа производительности, который покажет вам, как долго браузер загружает различные части сайта.
Для запуска инструмента анализа производительности кликните значок «Часы» на панели.
(Кроме того, если у вас только что открытый Сетевой монитор, и список запросов ещё пуст, то у вас будут «Часы» в главном окне.)
Сетевой монитор загрузит сайт дважды: первый раз с пустым кешем браузера, а второй — с заполненным. Это имитирует вход пользователя на сайт впервые и последующие посещения. Он показывает результаты обоих запусков бок о бок горизонтально, либо вертикально, если окно браузера сжатое:
Результаты каждого запуска представлены в таблице и круговой диаграмме. Таблицы группируют ресурсы по типам и показывают их общий размер и общее время, занятое их загрузкой. Сопровождающие круговые диаграммы показывают относительный объём ресурсов каждого типа.
Для возврата в Сетевой монитор нажмите кнопку «Назад», расположенную слева от результатов.
Нажав на конкретную часть в круговой диаграмме вы перейдёте в Сетевой монитор, в котором будут автоматически установлены фильтры для просмотра запросов этого типа ресурса.
Group-IB помогла задержать киберпреступников в Индонезии
Киберполиция Индонезии совместно с Интерполом и Group-IB объявили о задержании участников преступной группы, заразившей JavaScript-снифферами — популярным видом вредоносного кода — сотни онлайн-магазинов в Австралии, Бразилии, Великобритании, Германии, Индонезии, США и других странах.
Среди жертв есть российские и украинские пользователи. Ликвидация этой группы стала первой успешной операцией против операторов JS-снифферов в Азиатско-Тихоокеанском регионе, сообщили Sk.ru представители Group-IB, участника Фонда «Сколково».
Совместная операция «Night Fury» киберполиции Индонезии, INTERPOL’s ASEAN Cyber Capability Desk (ASEAN Desk) и отдела расследований Group-IB в регионе была проведена в декабре 2019. Арестованы трое жителей Индонезии в возрасте от 23 до 35 лет. Всем им предъявлены обвинения в краже электронных данных с помощью снифферов GetBilling. Операция еще в 5 других регионах Азиатско-Тихоокеанского региона продолжается.
На пресс-конференции в Джакарте: Веста Матвеева, руководитель отдела расследований Group-IB в Азиатско-Тихоокеанском регионе, и суперинтендант полиции Индонезии Идам Васиядин (с микрофоном). Фото: Group-IB.
Впервые семейство снифферов GetBilling было описано в отчете Group-IB «Преступление без наказания» в апреле 2019 года. JavaScript-снифферы — популярный вид вредоносного кода, который используется в атаках на онлайн-магазины для кражи личных и платежных данных покупателей: номеров банковских карт, имен, адресов, логинов, номеров телефона и пользовательских данных из платежных систем. Специалисты Threat Intelligence Group-IB отслеживают семейство GetBilling JS-sniffer с 2018 года. Анализ инфраструктуры, контролируемой арестованными в Индонезии операторами GetBilling, показал, что им удалось заразить почти 200 веб-сайтов в Индонезии, Австралии, Европе, Соединенных Штатах, Южной Америке и некоторых других странах.
Индонезийский след
В прошлом году команда отдела расследований Group-IB установила, что часть инфраструктуры GetBilling была развернута в Индонезии. INTERPOL’s ASEAN Desk оперативно проинформировал об этом киберполицию Индонезии. Несмотря на то, что операторы сниффера GetBilling старались скрыть свое местонахождение, например, для соединения с сервером для сбора похищенных данных и контролем над сниффером преступники всегда пользовались VPN, а для оплаты услуг хостинга и покупки новых доменов использовали только украденные карты, экспертам Group-IB вместе с полицейскими удалось собрать доказательства, что группа работает из Индонезии, а затем выйти на след самих подозреваемых.
«В современном цифровом мире киберпреступники очень быстро внедряют передовые технологии для того, чтобы скрыть свою незаконную деятельность, и для того, чтобы похитить большие массивы личных данных с целью финансового обогащения, — отмечает Крейг Джонс, директор по расследованию киберпреступлений INTERPOL. — Для того, чтобы обеспечить доступ правоохранительных органов к информации, необходимой для борьбы с киберпреступностью, требуется прочное и плодотворное партнерство между полицией и экспертами по информационной безопасности».
«Этот кейс явно демонстрирует международный размах киберпреступности: операторы JS-сниффера жили Индонезии, но атаковали e-commerсе-ресурсы по всему миру, что усложняет сбор доказательств, поиск жертв и судебное преследование, — замечает Веста Матвеева, руководитель группы кибер-расследований Group-IB в Азиатско-Тихоокеанском регионе. — Однако международное сотрудничество и обмен данными могут помочь эффективно противодействовать актуальным киберугрозам. Благодаря оперативным действиям индонезийской киберполиции и Интерпола, «Night Fury» стала первой успешной международной операцией против операторов JavaScript-снифферов в регионе APAC. Это отличный пример скоординированной трансграничной борьбы с киберпреступностью, и мы гордимся тем, что результат работы нашей Threat Intelligence, понимание преступных схем и их расследования, а также криминалистическое исследование данных специалистами Group-IB помогли установить подозреваемых. Мы надеемся, что этот кейс создаст прецедент для правоохранительных органов и в других юрисдикциях»
Пример вредоносного скрипта GetBilling. Фото: Group-IB.
В ходе обыска полицейские изъяли у задержанных ноутбуки, мобильные телефоны различных производителей, процессоры, идентификационные карты и банковские карты. По данным следствия, украденные платежные данные использовались подозреваемыми для покупки гаджетов и предметов роскоши, которые они затем перепродавали на индонезийских сайтах ниже рыночной стоимости. Подозреваемым уже предъявлены обвинения в краже электронных данных — согласно уголовному кодексу Индонезии это преступление карается лишением свободы сроком до десяти лет.
«Координация усилий между киберполицией Индонезии, Интерполом и Group-IB позволила атрибутировать преступления, идентифицировать преступников, использовавших снифферы, и арестовать их, — считает суперинтендант полиции Индонезии Идам Васиядин. — Но что еще важнее, она позволила защитить невинных людей и повысить осведомленность общественности о проблеме киберпреступности и ее последствиях».
Снифферы поднимают голову
Согласно ежегодному отчету High-Tech Crime Trends Group-IB за период h3 2018 — h2 2019, общее количество скомпрометированных банковских карт, загруженных на подпольные форумы, в мире выросло с 27,1 млн. до 43,8 млн. Дампы — копия информации магнитной полосы — по-прежнему составляют основную долю рынка кардинга, их количество выросло на 46%. Продажа текстовых данных (номер, CVV, срок действия) тоже на подъёме, их рост составил 19%. Самые массовые утечки данных банковских карт связаны с компрометацией ритейла в США. По количеству скомпрометированных карт США занимает первое место с большим отрывом — 93%.
Одной из причин роста объема украденных текстовых данных стали JS- снифферы. Весной 2019 года в отчете Group-IB «Преступление без наказания» его автор — Виктор Окороков, аналитик Group-IB, перечислил 38 семейств JS-снифферов. С тех пор число обнаруженных компанией семейств JS-снифферов почти удвоилось и продолжает расти. Их жертвами уже стали сайты авиакомпании British Airways, международного гиганта спортивных товаров FILA. Совсем недавно, в декабре 2019 года, JS-снифферы попали в регион APAC, заразив сайты сингапурский модного бренда «Love, Bonito».
FREE USB Sniffer и программное обеспечение USB Protocol Analyzer для Windows
Free USB Analyzer Overview
Free USB Analyzer — это ненавязчивый программный сниффер USB и анализатор протоколов для Windows .
Этот программный анализатор протокола USB позволяет отслеживать данные, передаваемые между приложениями USB и устройствами, подключенными к вашему компьютеру через интерфейсы USB. Поддерживаются все настольные / серверные 32-разрядные и 64-разрядные платформы Windows, начиная с Windows Vista.
Наша программа мониторинга USB может быть отличной альтернативой аппаратным анализаторам, поскольку она перехватывает все вызовы функций Windows API, которые передаются между USB-приложениями и драйверами устройств, анализирует передаваемые пакеты и показывает все захваченные данные в нескольких удобных формах, что практически невозможно для аппаратных решений из-за их низкоуровневого представления.
Эта бесплатная утилита отслеживания данных USB не требует для работы дополнительного оборудования или кабелей. Он работает без сбоев, обрабатывает отслеживаемые пакеты в реальном времени даже на высоких скоростях передачи данных (до 20 Гбит / с).Он позволяет эффективно анализировать протокол USB для связи High Speed USB 2.0, SuperSpeed USB 3.0 и SuperSpeed + USB 3.x.
Для удобства пользователей наш продукт поддерживает фильтрацию данных. Бесплатная версия поддерживает фильтрацию по конечным точкам USB и запросам. Платная версия также поддерживает фильтрацию по проанализированным полям протокола и предоставляет вам множество настраиваемых параметров фильтрации.
Бесплатная версия предоставляет все основные инструменты для удобного отслеживания и изучения захваченных данных USB.Он включает в себя просмотр, поиск определенных шаблонов данных и функции экспорта. Платная версия также поддерживает запись данных USB (функция USB-регистратора данных), отправку пакетов на устройства USB HID в ответ на инициированные события и позволяет автоматизировать рабочий процесс с помощью сценариев (написанных на JavaScript или TypeScript).
Этот сниффер USB помогает в разработке, отладке, тестировании и анализе устройств, их драйверов и других программных / аппаратных решений, которые обмениваются данными с использованием протоколов связи USB.
Загрузите этот бесплатный сниффер USB и отслеживайте обмен данными через USB за секунды.
Как работает бесплатный анализатор USB
Программа устанавливает драйвер фильтра между драйвером хост-контроллера USB и драйвером устройства, а затем перехватывает все блоки запросов USB (URB), отображая их пользователю в легко читаемом формате.
Эта бесплатная USB-утилита для мониторинга и анализа разработана для эффективного перехвата, сбора и декодирования данных связи, генерируемых любым USB-приложением и устройством, подключенным к локальному или удаленному ПК через интерфейсы USB.
Free USB Analyzer поддерживает расширенную фильтрацию данных по типу URB и конечным точкам USB.
Захват и интерактивное отображение данных, передаваемых через USB-соединение, теперь стало проще!
Функции бесплатного сниффера USB
С помощью нашего бесплатного монитора USB-портов вы можете:
- Просмотр структуры стека USB-устройства: объекты устройств для каждого драйвера устройства
- Просмотр дескриптора USB-устройства, дескриптора конфигурации, дескриптора интерфейса, дескриптора конечной точки, дескриптора HID
- Просмотр свойств устройства USB и информации, связанной с Plug & Play (PnP)
- Анализ активности хост-контроллеров USB, концентраторов USB и USB-устройств
- Отслеживание трафика шины, декодирование и отображение данных USB, фильтрация трафика шины
- Перехват и просмотр Передача управления через USB, передача прерываний, массовая передача и изохронная передача
- Синтаксический анализ и обратное проектирование протоколов USB, обратное проектирование USB-устройств, драйверов и USB-приложений
- Захват данных, передаваемых через высокоскоростной USB-порт и хост-контроллеры USB SuperSpeed Plus
- Захват данных отправлено на целевой полноскоростной USB 2.0 устройств
- Мониторинг данных, передаваемых между интерфейсом устройства и портом интерфейса USB
- Анализ протоколов передачи данных для локальных или даже удаленных USB-устройств
Если вы ищете полностью программное решение для мониторинга, которое облегчает разработку и отладку USB устройств, драйверов и приложений, то наш Free USB Snooper — именно то, что вам нужно. Он не требует дополнительного оборудования и позволяет отлаживать ошибки протокола связи, просматривать и тестировать сбои устройств.
Free USB Port Monitor Поддержка ОС:
Наше программное обеспечение Универсальный анализатор последовательной шины поддерживает все современные серверные и настольные платформы Windows, начиная с операционных систем Windows Vista x86 и x64. Также поддерживается мониторинг USB-устройств в Windows 10 и Windows Server 2019.
Использование бесплатного анализатора протоколов USB
Вы можете использовать эту программу просмотра и отладку USB-коммуникаций для:
- Отладка программных приложений и аппаратных устройств, связанных с USB
- Разработка аппаратных средств USB и драйверов устройств
- Тестирование и устранение неисправностей программного и аппаратного обеспечения USB
- Обратный инжиниринг USB-устройств, драйверов, приложений и протоколов
- Захват и анализ дескрипторов USB, изучение свойств USB-устройств
- Отслеживание данных USB-связи, запросов ввода-вывода и запросов управления
- Экспорт данных связи устройства на жесткий диск или съемный носитель
- Отслеживание и анализ удаленной USB-связи, удаленное отслеживание данных
- Понимание собственных протоколов шины данных
- Исследование функциональности любых сторонних программных приложений и аппаратных устройств
- Обнаружение ошибок при передаче данных USB
- Тестирование и устранение неисправностей Использование протоколов USB
Бесплатный анализатор протоколов USB Целевые группы
Бесплатный анализатор и декодер протоколов USB — чрезвычайно полезный инструмент для следующих целевых групп:
- Разработчики оборудования и программного обеспечения USB
- Системные интеграторы и консультанты ИТ, эксперты по лабораториям
- Инженеры, работающие в полевых условиях или в лаборатории
- Инженеры по программному обеспечению SCADA и инженеры по встроенным системам
- USB-программисты, тестировщики и специалисты по поддержке ИТ
- Персонал по поддержке промышленного оборудования управления
- Разработчики, производители и поставщики USB-устройств
- Научные техники и студенты университета
Просмотрите подробную информацию о наших сценариях использования USB-сниффера
Бесплатное программное обеспечение USB Analyzer Дополнительные сценарии использования
С помощью этого бесплатного USB-проводника вы также можете:
Вы найдете наш бесплатный USB-сниффер и анализатор протоколов полезными при работе с следующее USB-устройство c классы:
- Аудио (звуковая карта, динамик, микрофон, MIDI)
- Связь и управление CDC (адаптер Ethernet, адаптер Wi-Fi, модем)
- Устройство интерфейса человека (HID) (клавиатура, джойстик, мышь)
- Устройство физического интерфейса (PID) (джойстик обратной связи)
- Изображение (веб-камера, сканер)
- Принтер (струйный принтер, лазерный принтер, станок с ЧПУ)
- Запоминающее устройство большой емкости (MSC или UMS) (устройство чтения карт памяти, флэш-накопитель USB, цифровая камера, цифровой аудиоплеер, внешний диск)
- USB-концентратор (концентратор с полной пропускной способностью)
- Смарт-карта (USB-устройство чтения смарт-карт)
- Защита содержимого (считыватель отпечатков пальцев)
- Видео (веб-камеры)
- Личное здравоохранение (монитор пульса) )
- Аудио / видео (AV) (веб-камера, телевизор)
- Диагностическое устройство (устройство проверки соответствия USB)
- Контроллер беспроводной сети (адаптер Bluetooth)
- Разное (устройства ActiveSync)
- Для конкретного приложения (IrDA Мост, класс тестирования и измерений (USBTMC) для испытательного и измерительного оборудования, USB DFU (прямое обновление прошивки))
- Класс устройства, зависящий от производителя
Наш бесплатный USB-проводник — самый эффективный инструмент для разработчиков, работающих со следующими устройствами классы:
- Составные USB-устройства
- USB-накопители / USB-накопители
- USB-устройства с протоколом передачи мультимедиа (MTP)
- USB-устройства с человеческим интерфейсом (HID)
- USB-видео / аудио MIDI-устройства
Наше бесплатное программное обеспечение USB Logic Analyzer поможет вам захватить блоки запросов USB и декодировать данные, полученные от следующих USB-устройств:
- USB-последовательный адаптер, USB-адаптер Ethernet, USB-модем, последовательный порт USB (COM), USB KVM-переключатель, USB TV-тюнер , USB-последовательный преобразователь, USB-адаптер Bluetooth, USB-считыватель штрих-кода.
- USB-веб-камера, видеоустройство, USB-микрофон, аудиоустройство.
- USB CD, DVD, Blu-ray Disc, проигрыватели / рекордеры BD, звуковые панели и системы домашнего кинотеатра, жесткие диски USB, HDD, флэш-накопитель USB, карты памяти USB.
- USB-джойстики, клавиатуры, мыши.
- USB-камеры, приемники, цифровые видеокамеры, телевизоры, проекторы и экраны, USB-принтеры, MP3-плееры, радио, усилители и тюнеры.
- USB-гаджеты, iPod, iPad, USB-планшеты, электронные книги, мобильные телефоны, смартфоны, сотовые телефоны, GPS-навигаторы.
- Сетевые и беспроводные USB-адаптеры, компьютерная периферия, хост-контроллеры USB и многое другое.
Загрузите этот бесплатный USB-трассировщик и анализируйте биты и байты USB-связи за секунды!
Преимущества бесплатного USB-анализатора
- Fast. Он работает без сбоев при высоких скоростях передачи данных без ущерба для производительности ПК.
- Гибкий. Он поддерживает расширенную фильтрацию данных и настройку макета.
- Пульт. Он контролирует устройства, подключенные к удаленному компьютеру.
- Соц. Он позволяет задавать вопросы и получать ответы от экспертов.
- БЕСПЛАТНО. Ничего не стоит!
Агент SmartRF Sniffer — SmartRF Packet Sniffer 2 Руководство пользователя документация
Параметры командной строки
Агент сниффера может быть запущен из командной строки и поддерживает следующие параметры:
- автозапуск — эта опция нажимает кнопку «Начать все» и сворачивает приложение Sniffer Agent. Если ни одно устройство не запускается, появится предупреждающее сообщение, и приложение останется свернутым.
- resetcfg — этот параметр приводит к сбросу настроек программы до значений по умолчанию.
Время Wireshark
В следующих разделах описывается, как временные метки пакетов обрабатываются в различных режимах обслуживания.
Розетка
В режиме сокета агент сниффера не устанавливает время пакета, отображаемое Wireshark.
Труба и напильник
- Когда выбрано одно устройство, используемое время является временем сниффера. (Разрешение = микросекунды)
- Когда выбрано> 1 устройство, используется системное время UTC.(Разрешение = 100 наносекунд)
- Если одно или несколько устройств выбраны и запущены, когда они уже работают с одним устройством, время будет автоматически изменено на системное всемирное координированное время.
- После установки времени UTC все устройства должны быть остановлены, прежде чем можно будет использовать условие 1, указанное выше.
При использовании Wireshark по умолчанию первые полученные пакеты могут иметь отрицательное время, если используется «одно устройство-анализатор». При изменении формата времени Wireshark пакеты будут начинаться с 0.
- (меню Wireshark) Вид -> Формат отображения времени -> Секунды с 01.01.1970 или
- (меню Wireshark) Вид -> Формат отображения времени -> Время суток
Файлы захвата Wireshark (PCAP)
Sniffer Agent может отправлять данные OTA непосредственно в файлы захвата Wireshark (PCAP).
Захват данных и отправка непосредственно в файл требует большого количества операций ввода-вывода и требует, чтобы компьютер, используемый для этой операции, был выделен для Sniffer Agent, пока он работает во время процесса захвата.Любые другие программы, такие как дефрагментаторы дисков, компиляторы или резервные копии данных, могут вызвать автоматическую остановку одного или нескольких устройств захвата.
Если вы не используете разделение файлов, создается только один файл.
Вполне возможно, что результирующий файл (ы) PCAP может использовать все доступное дисковое пространство. Размер результирующего файла PCAP зависит от полученных данных и количества обработанных пакетов. Рекомендуется выполнить краткосрочный тест для определения размера файла и захваченных пакетов.Установка лимита файловых пакетов может автоматически остановить Sniffer Agent при достижении лимита.
Wireshark не используется во время обработки данных Sniffer Agent. Полученный файл можно открыть в Wireshark после остановки Sniffer Agent.
Файлы
PCAP могут быстро стать очень большими, и Wireshark не сможет открыть созданный файл. Wireshark предоставляет инструмент под названием editcap, который можно использовать для редактирования / разделения файлов PCAP. Пожалуйста, обратитесь к документации Wireshark для получения дополнительной информации о editcap.
Вот пример командной строки, показывающий, как разбить большой PCAP на несколько файлов, каждый из которых содержит миллион пакетов.
editcap big.pcap split.pcap -C 1000000
Полученные в результате разбитые файлы pcap можно открывать по отдельности для проверки захваченных данных.
Время пакетов в разделенных файлах будет относиться к каждому файлу. Чтобы увидеть время, записанное в большом файле pcap, используйте следующее:
- (меню Wireshark) Вид -> Формат отображения времени -> Секунды с 01.01.1970 или
- (меню Wireshark) Вид -> Формат отображения времени -> Время суток
Фильтр захвата
[Только для опытных пользователей]
Эта функция позволяет пользователю фильтровать сообщения и отбрасывать их перед отправкой в Wireshark через канал, сокет или файл.
В меню «Параметры» выберите «Фильтр захвата».
Флажок «Включить фильтрацию захвата» используется для включения и выключения этой функции. Из данных сообщения, предоставленных для фильтрации, удалены байты времени и длины данных.
Фильтр помещается в оператор «if (условие)». Фильтр — это «только» условная часть оператора внутри круглых скобок. Условие должно разрешаться в логическое значение. Если условие истинно, данные отбрасываются, а если ложно или возникает исключительная ошибка, данные отправляются в Wireshark.Вам разрешено делать все, что разрешено компилятором C # в этой области условий. Ваш фильтр должен строиться без ошибок и предупреждений. Одновременно активен только один фильтр, используемый фильтр отображается в форме «Фильтр захвата».
Важно отметить, что фильтр является критичной по времени функцией, особенно когда используется несколько снифферов. Все примеры фильтров были протестированы с несколькими ключами без проблем с производительностью. Исключения фильтра (ошибки) можно уменьшить, проверяя длину данных перед просмотром байта данных, которого нет.Если при запуске фильтра возникает исключение, сообщение отправляется с возможным снижением эффективности вашего фильтра. Все входящие в пользовательский фильтр данные будут иметь как минимум один байт данных.
Фильтр имеет доступ к массиву байтов и двум целочисленным локальным переменным. Указатели и операции с указателями не разрешены в пользовательском фильтре. Данные сообщения — это «byte [] data», то есть класс «System.Array», содержащий данные сообщения. Обратите внимание, что длина данных определяется путем доступа к свойству класса «Length» is «data.(Xor)
Примечание: формат оператора Bit-Wise
((data [0] & 0x02) == 0x02) // подавляем тип кадра подтверждения
Результат побитового оператора не является логическим значением, поэтому необходимость в двойном равенстве.
Вот функция фильтра
// ----------------------------------------------- --------------------------------- // @fn Применить () // @brief Применяем фильтр к данным // @param byte [] data - данные для проверки // @returns bool - true = отбрасывать и false = не отбрасывать или исключать // ------------------------------------------------ -------------------------------- public bool Применить (данные байта []) { bool returnCode = false; пытаться { #pragma warning disable 219 // пользовательский фильтр локальных переменных int x = 0; int y = 0; #pragma warning restore 219 // проверяем результат фильтрации если (здесь добавлен пользовательский фильтр) { returnCode = true; } } ловить { // происходит что-то неожиданное, данные не отбрасываются returnCode = false; } return returnCode; }
Ниже приведены несколько примеров фильтров, которые помогут вам начать работу.(Вы можете скопировать и вставить эти отдельные фильтры в новые фильтры.)
Фильтр помещается в оператор if (условие). Фильтр — это только часть условия оператора внутри круглых скобок.
- логическое состояние:
- true = отбросить данные
- false = отправка данных или ошибка условия
Данные сообщения -> данные байта [], класс System.Array, содержащий данные сообщения
Локальные переменные -> int x = 0 & int y = 0, примитивный тип данных
- Логические операторы:
- Побитовые логические операторы:
Arduino UNO Logic Sniffer: 8 шагов (с изображениями)
Я написал и скомпилировал скетч с помощью Arduino IDE.Сначала я начал с настройки Timer1 в «Нормальном» режиме работы , записав в его регистры TCCR1A и TCCR1B в setup (). Затем я создал несколько функций, чтобы немного упростить его использование в будущем, например, функцию для установки деления часов с именем «setTim1PSC ()». Я также написал функции для активации и деактивации модуля захвата ввода Timer1 и прерывания переполнения.
Я добавил массив «выборок» , в котором будут храниться полученные данные. Это глобальный массив, для которого я установил «volatile», чтобы компилятор не произвел оптимизацию и не поместил его во флэш-память, как это было во время моих первых компиляций.Я определил его как массив «uint16_t», так как Timer1 также 16-битный, с длиной 810. Мы прекращаем сбор при 800 значениях, но поскольку тест выполняется вне прерываний по очевидным причинам скорости, я решил оставить 10 больше значений для предотвращения переполнения. С несколькими дополнительными переменными для остальной части кода, скетч использует 1313 байт (88%) памяти, оставляя нам 235 байт свободной RAM . У нас уже много памяти, и я не хотел увеличивать емкость сэмплов, так как это могло вызвать странное поведение из-за слишком малого объема памяти.
В своем стремлении всегда увеличивать скорость выполнения я использовал указатели на функции вместо операторов if внутри прерываний, чтобы сократить время их выполнения до минимума. Выводом захвата всегда будет номер UNO Arduino 8 , поскольку он единственный, подключенный к блоку захвата ввода Timer1.
Процесс захвата показан на изображении выше. Он запускается, когда Arduino UNO получает действительный фрейм данных UART, содержащий желаемые настройки захвата. Затем мы обрабатываем эти настройки, настраивая правильные регистры для захвата на выбранном фронте и используя правильное деление тактовой частоты.Затем мы разрешаем прерывание PCINT0 (изменение вывода) для обнаружения фронта первого сигнала. Когда мы его получаем, мы сбрасываем значение Timer1, отключаем прерывание PCINT0 и включаем прерывание ICU (Input Capture Unit). С этого момента любой спадающий / нарастающий фронт сигнала (в зависимости от выбранной конфигурации) запускает блок захвата входа, таким образом сохраняя метку времени этого события в регистре ICR1 и выполняя прерывание. В этом прерывании мы помещаем значение регистра ICR1 в наш массив «выборок» и увеличиваем индекс для следующего захвата.Когда Timer1 или массив переполняются, мы отключаем прерывание захвата и отправляем данные обратно в веб-интерфейс через UART.
Я решил использовать прерывание смены вывода для запуска захвата, так как входной блок захвата позволяет захват только на одном или другом фронте, но не на обоих. Это также вызывает проблемы, когда вы хотите захватить оба края. Мое решение заключалось в том, чтобы инвертировать бит, который управляет выбором края в регистре управления захватом ввода при каждой полученной выборке. Таким образом, мы теряем скорость выполнения, но по-прежнему можем использовать функции блока ввода данных.
Итак, как вы могли заметить, на самом деле мы не захватываем каждую выборку через фиксированные интервалы времени, а фиксируем момент, когда происходит переход сигнала. Если бы мы захватили одну выборку в каждом тактовом цикле, даже с максимальным тактовым делением, мы бы заполнили буфер примерно на 0,1 с , предполагая, что мы использовали тип uint8_t, который является самым маленьким в памяти, без использования структур .
(PDF) Разработка и реализация модульного анализатора сети с беспроводными датчиками
Это позволяет легко инкапсулировать пакеты внутри другого пакета
.
Если PDU равен нулю, то этот пакет является самым верхним пакетом
, и вся информация о пакете сохраняется в
заголовке. На языке OSI полезная нагрузка верхнего уровня — это
, инкапсулированная внутри протокола нижнего уровня. Таким образом, самый верхний,
в этом случае, означает полезную нагрузку более высокого уровня. Текущая система обработки
должна заниматься только самым верхним пакетом
и полезной нагрузкой.
В этом случае есть две возможности.С одной стороны, список заголовков
может состоять только из одного поля, содержащего полезные данные
, ожидающие обработки. С другой стороны,
заголовок может быть нулевым, указывая, что больше нет данных
для обработки, то есть этот пакет был полностью разрешен.
Следовательно, обработка протокола пакетов работает следующим образом:
1. Используйте метод getUppermostPacket, чтобы получить
самого верхнего пакета.
2. Используйте метод getUppermostPayload, чтобы
получить самую верхнюю полезную нагрузку для обработки.
3. Обработайте полезную нагрузку соответствующим образом, чтобы получить
новый заголовок, трейлер и информацию PDU.
4. Замените заголовок самого верхнего пакета,
PDU и атрибуты концевика новой информацией
. Теперь новый PDU
станет новым самым верхним пакетом для следующего уровня протокола
.
2) Подсистема ввода
Сердцем подсистемы ввода является класс ByteServer. Объект
ByteServer создается PacketServer, а экземпляр
, в свою очередь, создается классом Sniffer.ByteServer — это поток выполнения
, отдельный от основного класса Sniffer.
Это позволяет получать входные данные от анализатора
наиболее быстрым способом, независимо от выполнения
остальной части программы.
ByteServer получает данные от сниффера
через объекты, подклассы класса Source.
В настоящее время реализован только класс SFSource (или Serial Forwarder Source)
.Однако вполне возможно реализовать
других источников, если это необходимо, например, класс
SerialSource, который связывается с mote
напрямую через последовательный порт, или источник файла для
чтения данных, ранее заархивированных в файл. Позже будет показано
, что дополнительные источники могут быть легко созданы и добавлены к
системе. По умолчанию предполагается, что Serial Forwarder имеет номер
, работающий на локальном хосте, порт 9001.Если это не так,
, тогда пользователь может указать хост и порт с помощью параметров «-h» и
«-p».
Данные, считанные из источника, сохраняются в буфере «первым пришел — первым
» (FIFO). В текущей реализации, когда буфер
заполнен, дальнейшие пакетные данные отбрасываются вместо
, заменяющего самые ранние полученные данные.
Класс Sniffer не взаимодействует с ByteServer
напрямую, вместо этого он создает экземпляры и запрашивает пакеты от
класса PacketServer.PacketServer предоставляет снифферу входную абстракцию уровня пакетов
. PacketServer выполняет
запросов на полученные данные от ByteServer, а затем
упаковывает байты данных в объект Packet в качестве полезной нагрузки.
В то же время PacketServer добавляет метку времени к этому заголовку
пакета. Эта информация о временной метке позволяет проводить
временного анализа пакетов. Строго говоря, временная метка
не представляет время, когда пакет
получен сниффером, но время, когда PacketServer
получает данные от ByteServer.
3) Подсистема обработки
Объекты пакетов, полученные от подсистемы ввода,
передаются в подсистему обработки для извлечения информации о протоколе и
прикладного уровня. Объекты пакетов последовательно передаются в класс протокола
,
и затем в класс AM.
Первое, что делает класс Protocol, — проверяет, нужно ли ему
определять формат сообщения. Сообщения TinyOS
могут иметь 4 разных формата, в зависимости от используемой частицы
[2]: 1.Исходный формат TOS_Msg, используемый в
mica, mica2 и mica2dot,
2. формат IEEE802.15.4, используемый в motes семейства telos
,
3. модифицированный формат TOS_Msg, используемый на
micaz motes и
4. Платформа eyesIFX от Infineon [5].
Класс Packet имеет статический атрибут msgFormat, который используется для идентификации формата
. Первый класс протокола
проверяет, установлен ли этот атрибут. Если он не был установлен, класс протокола
применяет некоторые эвристики, чтобы попытаться угадать формат сообщения
и установить для него соответствующее значение.Если эвристика
не работает, формат сообщения неизвестен, и дальнейшая обработка пакета
выполняться не будет. Предполагается, что
, что данная сенсорная сеть однородна, поэтому формат сообщения
должен быть согласованным. Таким образом, угадывание формата сообщения
выполняется только один раз. Однако эвристические правила
не являются надежными ни в коем случае, поэтому резервный вариант
позволяет пользователю указать формат сообщения в командной строке
с помощью опции «-m».Как только формат сообщения
известен, класс протокола выполняет соответствующую обработку протокола
пакета.
После завершения обработки протокола объект пакета
передается в класс AM для обработки приложения. Вспомните
, что тип AM сообщения TinyOS аналогичен номеру порта
в TCP / IP. Таким образом, возможно, что в данной сенсорной сети
может быть более одного типа AM. Класс
AM поддерживает список обработчиков AM.Класс AM
выполняет итерацию по списку, передавая объект пакета каждому обработчику AM
. Как только обработчик AM сигнализирует о том, что
обработал тип AM, обработка приложения завершается.
В настоящее время реализован единственный обработчик AM — это класс
AMCountMsgHandler для тестового приложения
CountRadio. Но создавать и добавлять обработчики AM несложно.
4) Подсистема вывода
Класс Writer отвечает за запись информации пакета
в различные выходные каналы.Одной из особенностей подсистемы вывода
является то, что информация о пакете
может быть записана в несколько каналов одновременно.
Man In The Middle Attack Part 2 — Packet Sniffer
Шаг 4. Написание функции process_packet (packet)
Перед тем, как перейти к функции, давайте посмотрим, как выглядит scapy-пакет.
### [Ethernet] ###
dst = 52: 54: 00: 12: 35: 00
src = 08: 00: 27: 35: 21: 2e
type = IPv4
### [IP] ###
version = 4
ihl = 5
tos = 0x0
len = 441
id = 22651
flags = DF
frag = 0
ttl = 64
proto = tcp
chksum = 0xf1f9
src = 10.0.2.9
dst = 176.28.50.165
\ options \
### [TCP] ###
sport = 48556
dport = http
seq = 7
956
ack = 327206
dataofs = 5
зарезервировано = 0
flags = PA
window = 64240
chksum = 0xf075
urgptr = 0
options = []
### [HTTP 1] ###
### [HTTP-запрос] ###
Method = ‘GET’
Path = ‘ /login.php ‘
Http_Version =’ HTTP / 1.1 ‘
A_IM = Нет
Accept =’ text / html, application / xhtml + xml, application / xml; q = 0.9, * / *; q = 0.8 ‘
Accept_Charset = None
Accept_Datetime = None
Accept_Encoding =’ gzip, deflate ‘
Accept_Language =’ en-US, en; q = 0.5 ‘
Access_Control_Request_Hequest = NControl_Request_Hequest_one = Нет
Cache_Control = ‘max-age = 0’
Connection = ‘keep-alive’
Content_Length = None
Content_MD5 = None
Content_Type = None
Cookie = None
DNT = None
Date = None
Expect = None
Forwarded = Нет
От = Нет
Front_End_Https = Нет
HTTP2_Settings = Нет
Host = ‘testphp.vulnweb.com ‘
If_Match = None
If_Modified_Since = None
If_None_Match = None
If_Range = None
If_Unmodified_Since = None
Keep_Alive = None
Max_Forwards None = None
Origin = None = Нет
Диапазон = Нет
Referer = ‘http://testphp.vulnweb.com/login.php
В приведенном выше блоке показано содержимое пакета. Строка, которая начинается с ### [текст] ###
, называется слоем
.Строки после этого — это поля, которые находятся под этим слоем
до тех пор, пока не встретится следующий слой
. Например, из приведенного выше блока ### [Ethernet] ###
— это уровень ,
, а следующие строки — это поля под Ethernet. Эти поля содержат информацию об Ethernet. Аналогично, ### [TCP] ###
, ### [HTTP Request] ###
и т. Д. — это уровень
. Теперь перейдем к функции process_packet .
Функция — process_packet (packet)
Этой функции нужен проанализированный пакет в качестве входных данных.В этой функции мы сначала проверяем, имеет ли пакет уровень HTTP-запроса
. Это делается с помощью метода, предоставляемого scapy, который называется haslayer ()
. Если в пакете нет слоя, он не обрабатывается.
Если у него есть уровень HTTP-запроса
, мы выполняем две операции:
- Вызов
get_url (packet)
, функция для извлечения URL-адреса из пакета. На входе он принимает пакетurl
, а затем печатаем значениеurl
. - Затем мы вызываем другую функцию с именем
get_credentials (packet)
. Он также принимаетпакет
как вход. Он проверяет пакет на предмет возможных учетных данных и, если они обнаруживаются, возвращает эти учетные данные. Мы сохраняем его в переменной с именемcred
, а затем печатаем его значение.
Я объясню функции
get_url (пакет),
иget_credentials (пакет)
на более поздних этапах.
Технические страницы Марка: Зонд RS232 «Sniffer»
Зонд RS232 ‘Sniffer’
Если вы занимаетесь управлением технологическим процессом, то во многих случаях вы просто хотите «видеть» связь между двумя частями комплекта.Когда дело доходит до более современного оборудования, основанного на LAN, тогда программы-снифферы становятся нормой. Их также не составляет труда подключить, поскольку локальная сеть обычно используется совместно различными частями комплекта и другими ПК.
Когда дело доходит до устройств, использующих соединение «точка-точка», таких как RS232, жизнь становится немного труднее. На одно устройство есть только одна передача и один прием.
Если одним из устройств является ПК, то да, есть программы, которые утверждают, что «обнюхивают» трафик com-порта, но они не обходятся без собственных проблем! И более сообразительный системный инженер определенно не захочет устанавливать такие инструменты на живую систему (и я его тоже не виню!).
Следовательно, необходимость «видеть», что «говорят» по линии связи RS232, должна выполняться с помощью небольшого количества оборудования и анализирующего компьютера. Если у ноутбука есть только один com-порт (и это, если вам все еще повезло иметь com-порт!) И, следовательно, только один прием.
Пошагово этот удобный маленький зонд-анализатор, позволяющий контролировать оба канала связи одним приемником. Он помещается в либо со стороны соединения между двумя частями комплекта (нет необходимости подключать его к определенной стороне), а затем его конец (нижний штекер) подключается к com-порту анализатора.
Способ работы довольно простой. Линии передачи на RS232 остаются отрицательными. Диоды 1, 2 и 3 снимают это отрицательное напряжение и заряжают конденсатор. Затем резистор смещает вход приемного анализатора в отрицательную сторону.
Когда одна из контролируемых линий передачи отправляет данные, на вход приемника-анализатора подается положительный сигнал через соответствующий диод (4 или 5). S1 и 2 выбирают, какая строка должна быть «проанализирована». S1 выбирает Pin2, S2 выбирает Pin3.
Эта конструкция позволяет либо отключать отслеживаемый порт, не вызывая отправку переданных данных все еще подключенного порта обратно на его собственный вход приемника (что может вызвать сбой в некоторых системах), либо для получения любых данных, отправленных портом сниффера. на любом из контролируемых портов.
У этого зонда есть ограничения, заключающиеся в том, что если оба переключателя 1 и 2 закрыты, то обоим портам не разрешено «разговаривать» вместе, поскольку это испортит то, что «видит» сниффер, но это не будет мешать обмену данными. между двумя устройствами повреждается только то, что «обнюхивают». Однако с большинством протоколов (например, MODBUS) команды и подтверждения четко разделены, и повреждения, как правило, не происходит.
Диоды либо 1N4148, либо 1N914 (или любой другой подходящий сигнальный диод), конденсатор 2.2 мкФ, тантал 25 В и резистор в диапазоне от 4,7 кОм до 10 кОм, ¼ Вт, металлическая пленка. Я использовал переключатели простого миниатюрного слайд-типа.
Все, что теперь требуется, — это приличная программа, которая может интерпретировать отправляемые команды, и все готово!
ПРОГРАММА SNIFFER
Одна из самых обширных программ терминала RS232, с которыми я столкнулся в последние месяцы, — это бесплатная программа, которую просто называют «Терминал» от ‘Br @ y ++’.
Программа представляет собой исполняемый файл Win32 размером 300 КБ (установка не требуется — поэтому может храниться на «флешке»), и несколько копий программы могут работать одновременно, что позволяет просматривать более одного порта (поэтому ноутбук с двойной картой RS232 PCMCIA может мониторить две отдельные ссылки).
Одной из включенных функций является возможность переключения на прием в HEX (отлично подходит для MODBUS и т. Д.) И возможность ведения журналов в выбранном режиме (что позволяет сэкономить на преобразовании файла журнала в HEX).
СТРОИТЕЛЬСТВО
Опыт показал, что существенные преимущества реализуются за счет разделения анализатора на две части; Первый — «Т-образное соединение», второй — сам сниффер (позволяющий подключать осциллографы и т. Д. К тестируемому каналу.
)
Затем анализатор помещается в простой корпус, позволяющий быстро удалить и / или переключиться на другое тестируемое соединение, не нарушая работу первого (при условии, что в ящике для инструментов имеется более одной тройника).
ВЕРСИЯ SUPER-DUPER
Для действительно храбрых из вас! Эта версия использует два транзистора в качестве переключателей, позволяющих программно контролировать направление данных, которое отслеживается.
RTS (контакт 7) управляет мониторингом данных на TX (контакт 3), а DTR (контакт 4) управляет мониторингом данных RX (контакт 2). Управление RTS и DTR просто осуществляется с помощью «кнопок» в программе Терминала (показанной выше).
|
| Задайте вопрос |
© 24.04.04 / 02.08.07
Ссылки по темеПоиск других утилит в NirSoftОписаниеSniffPass — это небольшое программное обеспечение для мониторинга паролей, которое прослушивает вашу сеть, захватывает Вы можете использовать эту утилиту для восстановления утерянных паролей к Интернету / FTP / электронной почте. История версий
Системные требованияSniffPass может захватывать пароли в любой 32-битной операционной системе Windows (Windows 98 / ME / NT / 2000 / XP / 2003 / Vista) В Windows 2000 / XP (или выше) SniffPass также позволяет захватывать пакеты TCP / IP.
Использование SniffPassЧтобы начать использовать SniffPass, следуйте инструкциям ниже:
Получить пароли другого компьютера в сети?Многие люди спрашивают меня, может ли SniffPass получать пароли от другого компьютера в той же сети.
Параметры командной строки
Перевод SniffPass на другие языкиSniffPass позволяет легко переводить все меню, диалоговые окна и другие строки.
ЛицензияЭта утилита выпущена как бесплатное ПО. Заявление об ограничении ответственностиПрограммное обеспечение предоставляется «КАК ЕСТЬ» без каких-либо явных или подразумеваемых гарантий, Обратная связьЕсли у вас есть какие-либо проблемы, предложения, комментарии или вы обнаружили ошибку в моей утилите, |