Встроенный анализатор (сниффер) сетевого трафика Packet Monitor (PktMon.exe) появился еще в Windows 10 1809 и Windows Server 2019. В последнем билде Windows 10 2004 (May 2020 Update), функционал анализатора пакета был существенно расширен (появилась поддержка захвата пакетов в реальном времени, и поддержка формата PCAPNG для простого импорта в анализатор сетевого трафика Wireshark). Таким образом в Windows появился функционал захвата сетевого трафика, аналогичный tcpdump, и его можно смело использовать системными и сетевыми администраторам для диагностики работы сети.
Packet Monitor позволяет получить всю сетевую активность, проходящую через сетевой интерфейс компьютера на уровне каждого пакета.
Ранее для захвата сетевого трафика и инспектирования пакетов в Windows использовалась команда netsh trace.
Справку по использованию параметров
pktmon.exe
можно получить, набрав команду в командной строке.
Основные команды утилиты Packet Monitor:
- filter — управление фильтрами пакетов
- comp – управление зарегистрированными компонентами;
- reset — сброс счетчиков;
- start – запустить мониторинг пакетов;
- stop— остановить сбор пакетов;
- format – конвертировать лог файл трафика в текстовый формат;
- pcapng – конвертация в формат pcapng;
- unload – выгрузить драйвер PktMon.
Чтобы получить справку по субкоманде, укажите ее имя:
pktmon filter
Попробуем собрать дамп трафика, который приходит на некоторые запущенные службы компьютера. Допустим, нам нужно проанализировать трафик FTP (TCP порты 20, 21) и HTTP (порты 80 и 443).
Создадим фильтр пакетов для 4 TCP портов (также можно мониторить UDP и ICMP трафик):
pktmon filter add -p 20 21
pktmon filter add HTTPFilt –p 80 443
Выведем список имеющихся фильтров:
pktmon filter list
Чтобы запустить фоновый сбор трафика, выполните команду:
pktmon start –etw
Log file name: C:WindowsSystem32PktMon.etl Logging mode: Circular Maximum file size: 512 MB Active measurement started.
В таком режиме pktmon собирает данные со всех сетевых интерфейсов, но в журнал попадают только первые 128 байтов пакета. Чтобы захватить пакеты целиком и только на определенном интерфейсе компьютера, используется команда:
pktmon start --etw -p 0 -c 9
где значение аргумента c – номер (ID) нужного сетевого интерфейса, полученного с помощью:
pktmon comp list
Фильтр пакетов начнет запись всего трафика, соответствующего заданным фильтрам в файл C:WindowsSystem32PktMon.etl (максимальный размер 512 Мб). Чтобы остановить запись дампа, выполните команду:
pktmon stop
Также сбор сетевых пакетов прекращается после перезегрузки Windows.
Теперь вы можете сконвертировать файл с дампом трафика из формата ETL в обычный текст:
pktmon format PktMon.etl -o c:pspacketsniffer.txt
или
pktmon PCAPNG PktMon.etl -o c:pspacketsniffer.pcapng
Полученный дамп трафика можно анализировать в текстовом виде, загрузить ETL файл в установленный на компьютере администратора Microsoft Network Monitor или WireShark (в форматер PCAPNG).
Чтобы удалить все созданные фильтры Packet Monitor, выполните:
pktmon filter remove
Вы можете использовать PktMon для мониторинга сетевого трафика в реальном времени. Для этого используется параметр
-l real-time
. В этом режиме захваченные сетевые пакеты отображаются в консоли, и не пишутся в фоновом режиме в лог файл.
pktmon start --etw -p 0 -l real-time
Чтобы остановить сбор трафика, используйте комбинацию клавиш Ctrl+C.
Если у вас наблюдается drop пакетов на сетевом интерфейсе, PacketMon может показать причину дропов (например, некорректный MTU или VLAN).
Также вы можете использовать PktMon в Windows Admin Center через расширения. Собранные данные с компьютеров и серверов при диагностике сетевых проблем можно использовать для анализа в более мощных программах анализа сетевого трафика, таких как Microsoft Network Monitor или Wireshark.
Утилита tcpdump — отличный инструмент командной, который способен перехватывать и анализировать сетевой трафик. Может оказаться большим подспорьем при решении сетевых проблем. Пакеты можно сохранить в файл и анализировать позже. Рекомендуется время от времени запускать эту утилиту, чтобы следить за своей сетью.
Содержание:
- Вывод tcpdump
- Установка tcpdump
- Опции tcpdump
- Фильтры tcpdump:
- Фильтр выражений
- Фильтр портов
- Фильтр хостов
- Комбинирование фильтров
- Сохранение заголовков в файл
- Просмотр сведений о пакете
- Вывод
Вывод tcpdump
Утилита tcpdump позволяет проверять заголовки пакетов TCP/IP и выводить одну строку для каждого из пакетов. Она будет делать это до тех пор, пока не нажать Ctrl + C.
Давайте рассмотрим одну строку из примера вывода:
20:58:26.765637 IP 10.0.0.50.80 > 10.0.0.1.53181: Flags [F.], seq 1, ack 2, win 453, options [nop,nop,TS val 3822939 ecr 249100129], length 0
Каждая строка включает:
- Метка времени Unix (20: 58: 26.765637)
- протокол (IP)
- имя или IP-адрес исходного хоста и номер порта (10.0.0.50.80)
- имя хоста или IP-адрес назначения и номер порта (10.0.0.1.53181)
- Флаги TCP (Flags [F.]). Указывают на состояние соединения и могут содержать более одного значения:
- o S — SYN. Первый шаг в установлении соединения
- F — FIN. Прекращение соединения
- — ACK. Пакет подтверждения принят успешно
- P — PUSH. Указывает получателю обрабатывать пакеты вместо их буферизации
- R — RST. Связь прервалась
- Порядковый номер данных в пакете. (seq 1)
- Номер подтверждения. (ack 2)
- Размер окна (win 453). Количество байтов, доступных в приемном буфере. Далее следуют параметры TCP
- Длина полезной нагрузки данных. (length 0)
Установка tcpdump
В дистрибутивах на основе Debian tcpdump можно установить с помощью команды APT:
# apt install tcpdump -y
В дистрибутивах на основе RPM tcpdump можно установить с помощью YUM:
# yum install tcpdump -y
В RHEL 8 с использование DNF:
# dnf install tcpdump -y
Опции tcpdump
Запускать tcpdump нужно с правами root. Tcpdump включает в себя множество опций и фильтров. При запуске tcpdump без каких-либо параметров произойдет перехват всех пакетов, проходящих через интерфейс по умолчанию.
Вывести список доступных системе сетевых интерфейсов, в которых tcpdump может захватывать пакеты:
# tcpdump -D
или
# tcpdump --list-interfaces
1.eth0
2.nflog (Linux netfilter log (NFLOG) interface)
3.nfqueue (Linux netfilter queue (NFQUEUE) interface)
4.eth1
5.any (Pseudo-device that captures on all interfaces)
6.lo [Loopback]
Очень полезно для систем, в которых нет команды для вывода списка интерфейсов.
Для захвата пакетов, проходящих через определенный интерфейс, используйте -i с именем интерфейса. Если не указать имя, тогда tcpdump подберет первый обнаруженный сетевой интерфейс.
# tcpdump -i eth1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes
01:06:09.278817 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 4761, seq 1, length 64
01:06:09.279374 IP 10.0.0.51 > vagrant-ubuntu-trusty-64: ICMP echo reply, id 4761, seq 1, length 64
01:06:10.281142 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 4761, seq 2, length 64
- -v увеличивает количество отображаемой информации о пакетах
- -vv дает еще более подробную информацию
По умолчанию tcpdump преобразует IP-адреса в имена хостов, а также использует имена служб вместо номеров портов.
- -n Если DNS не работает или вы не хотите, чтобы tcpdump выполнял поиск имени.
# tcpdump –n
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
04:19:07.675216 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 2186733178:2186733278, ack 204106815, win 37232, length 100
04:19:07.675497 IP 10.0.2.2.50422 > 10.0.2.15.22: Flags [.], ack 100, win 65535, length 0
04:19:07.675747 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 100:136, ack 1, win 37232, length 36
04:19:07.675902 IP 10.0.2.2.50422 > 10.0.2.15.22: Flags [.], ack 136, win 65535, length 0
04:19:07.676142 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 136:236, ack 1, win 37232, length 100
- -c захватывает только набор строк, например, 5:
#tcpdump -c 5
04:19:07.675216 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 2186733178:2186733278, ack 204106815, win 37232, length 100
04:19:07.675497 IP 10.0.2.2.50422 > 10.0.2.15.22: Flags [.], ack 100, win 65535, length 0
04:19:07.675747 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 100:136, ack 1, win 37232, length 36
04:19:07.675902 IP 10.0.2.2.50422 > 10.0.2.15.22: Flags [.], ack 136, win 65535, length 0
04:19:07.676142 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 136:236, ack 1, win 37232, length 100
5 packets captured
- -tttt для использования более удобных временных меток (по умолчанию используются временные метки Unix)
# tcpdump –tttt
2020-07-06 04:30:12.203638 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 2186734102:2186734138, ack 204107103, win 37232, length 36
2020-07-06 04:30:12.203910 IP 10.0.2.2.50422 > 10.0.2.15.22: Flags [.], ack 36, win 65535, length 0
2020-07-06 04:30:12.204292 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 36:72, ack 1, win 37232, length 36
2020-07-06 04:30:12.204524 IP 10.0.2.2.50422 > 10.0.2.15.22: Flags [.], ack 72, win 65535, length 0
2020-07-06 04:30:12.204658 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 72:108, ack 1, win 37232, length 36
Фильтры tcpdump
Фильтр выражений
Фильтр выражений выбирает, какие заголовки пакетов будут отображаться. Если фильтры не применяются, отображаются все заголовки пакетов.
Самые распространенные фильтры :
- port
- host
- src
- dst
- tcp
- udp
- icmp
Фильтр портов
Фильт портов используется для просмотра пакетов, поступающих на определенный порт:
# tcpdump -i eth1 -c 5 port 80
23:54:24.978612 IP 10.0.0.1.53971 > 10.0.0.50.80: Flags [SEW], seq 53967733, win 65535, options [mss 1460,nop,wscale 5,nop,nop,TS val 256360128 ecr 0,sackOK,eol], length 0
23:54:24.978650 IP 10.0.0.50.80 > 10.0.0.1.53971: Flags [S.E], seq 996967790, ack 53967734, win 28960, options [mss 1460,sackOK,TS val 5625522 ecr 256360128,nop,wscale 6], length 0
23:54:24.978699 IP 10.0.0.1.53972 > 10.0.0.50.80: Flags [SEW], seq 226341105, win 65535, options [mss 1460,nop,wscale 5,nop,nop,TS val 256360128 ecr 0,sackOK,eol], length 0
23:54:24.978711 IP 10.0.0.50.80 > 10.0.0.1.53972: Flags [S.E], seq 1363851389, ack 226341106, win 28960, options [mss 1460,sackOK,TS val 5625522 ecr 256360128,nop,wscale 6], length 0
Фильтр хостов
Для перехвата пакетов, приходящих или исходящих от определенного хоста. Например, IP-адрес 10.0.2.15:
# tcpdump host 10.0.2.15
03:48:06.087509 IP 10.0.2.15.22 > 10.0.2.2.50225: Flags [P.], seq 3862934963:3862934999, ack 65355639, win 37232, length 36
03:48:06.087806 IP 10.0.2.2.50225 > 10.0.2.15.22: Flags [.], ack 36, win 65535, length 0
03:48:06.088087 IP 10.0.2.15.22 > 10.0.2.2.50225: Flags [P.], seq 36:72, ack 1, win 37232, length 36
03:48:06.088274 IP 10.0.2.2.50225 > 10.0.2.15.22: Flags [.], ack 72, win 65535, length 0
03:48:06.088440 IP 10.0.2.15.22 > 10.0.2.2.50225: Flags [P.], seq 72:108, ack 1, win 37232, length 36
Для перехвата пакетов определенных типов протоколов. Например, icmp, на интерфейсе eth1:
# tcpdump -i eth1 icmp
04:03:47.408545 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 2812, seq 75, length 64
04:03:47.408999 IP 10.0.0.51 > vagrant-ubuntu-trusty-64: ICMP echo reply, id 2812, seq 75, length 64
04:03:48.408697 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 2812, seq 76, length 64
04:03:48.409208 IP 10.0.0.51 > vagrant-ubuntu-trusty-64: ICMP echo reply, id 2812, seq 76, length 64
04:03:49.411287 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 2812, seq 77, length 64
Комбинирование фильтров
Фильтры можно комбинировать с помощью операторов:
- AND
- OR
- NOT
Это позволит писать команды, которые могут более точно изолировать пакеты. Например, пакеты с определенного IP-адреса и для определенного порта:
# tcpdump -n -i eth1 src 10.0.0.1 and dst port 80
00:18:17.155066 IP 10.0.0.1.54222 > 10.0.0.50.80: Flags [F.], seq 500773341, ack 2116767648, win 4117, options [nop,nop,TS val 257786173 ecr 5979014], length 0
00:18:17.155104 IP 10.0.0.1.54225 > 10.0.0.50.80: Flags [S], seq 904045691, win 65535, options [mss 1460,nop,wscale 5,nop,nop,TS val 257786173 ecr 0,sackOK,eol], length 0
00:18:17.157337 IP 10.0.0.1.54221 > 10.0.0.50.80: Flags [P.], seq 4282813257:4282813756, ack 1348066220, win 4111, options [nop,nop,TS val 257786174 ecr 5979015], length 499: HTTP: GET / HTTP/1.1
00:18:17.157366 IP 10.0.0.1.54225 > 10.0.0.50.80: Flags [.], ack 1306947508, win 4117, options [nop,nop,TS val 257786174 ecr 5983566], length 0
Если нужно перехватить все пакеты кроме ICMP, используем оператор NOT:
# tcpdump -i eth1 not icmp
Сохранение заголовков в файл
Вывод tcpdump может довольно быстро перемещаться по экрану. В таких случаях можно сохранить заголовки пакетов в файле с опцией -w. Вывод сохраняется в файлы с расширением .pcap.
Следующая команда сохраняет 10 строк вывода интерфейса eth1 в icmp.pcap.
# tcpdump -i eth1 -c 10 -w icmp.pcap
tcpdump: listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes
10 packets captured
10 packets received by filter
0 packets dropped by kernel
Прочитать этот файл можно с помощью опции -r
# tcpdump -i eth1 -c 10 -w icmp.pcap
reading from file icmp.pcap, link-type EN10MB (Ethernet)
05:33:20.852732 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 3261, seq 33, length 64
05:33:20.853245 IP 10.0.0.51 > vagrant-ubuntu-trusty-64: ICMP echo reply, id 3261, seq 33, length 64
05:33:21.852586 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 3261, seq 34, length 64
05:33:21.853104 IP 10.0.0.51 > vagrant-ubuntu-trusty-64: ICMP echo reply, id 3261, seq 34, length 64
05:33:22.852615 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 3261, seq 35, length 64
Просмотр сведений о пакете
Пока мы видели только заголовки пакетов, а для просмотра содержимого нужно использовать параметр -A. Вывод содержимого будет в формате ASCII.
С помощью опции -X можно отобразить вывод в шестнадцатеричном формате, правда, это не сильно помогает в тех случаях, когда соединение зашифровано.
# tcpdump -c10 -i eth1 -n -A port 80
23:35:53.109306 IP 10.0.0.1.53916 > 10.0.0.50.80: Flags [P.], seq 2366590408:2366590907, ack 175457677, win 4111, options [nop,nop,TS val 255253117 ecr 5344866], length 499: HTTP: GET / HTTP/1.1
E..'..@.@.%.
...
..2...P..M.
uE............
.6.}.Q.bGET / HTTP/1.1
Host: 10.0.0.50
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.9
If-Modified-Since: Tue, 04 Mar 2014 11:46:45 GMT
Вывод
Утилита tcpdump проста в настройке и освоении. Необходимо лишь немного разобраться с:
- выводом
- фильтрами
- опциями
После чего tcpdump станет отличным помощником в вопросах обеспечения безопасности вашей сети.
В Linux есть утилита tcpdump, позволяющая перехватывать и анализировать сетевой трафик. Работает в командной строке не хуже Wireshark. В Windows 10 есть утилита PktMon, которая поддерживает формат WireShark (PCAPNG) и Netmon (ETL), может работать с дампами TcpDump.
Очень удобно. Снимаешь дамп, тянешь его себе, а потом спокойно за привычным рабочим окружением ковыряешь его в Wireshark.
А что делать в более старых версиях Windows, где нет PktMon? На помощь приходит парочка других утилит.
netsh trace
Начиная с Windows 7 / Windows Server 2008 R2 появилась возможность выполнять захват трафика встроенными в систему средствами с помощью netsh trace. Команда позволяет перехватить и сохранить сетевой трафик в формате Netmon (ETL). Дополнительно создаётся CAB архив, содержащий дополнительные данные, которые могут потребоваться для анализа сетевого трафика.
Для начала запускаем командную строку под администратором. Выполняем:
netsh trace help
И узнаём список атрибутов, которые можно применять в команде. Список, к слову, не полный. Больше данных получим запросом:
netsh trace start /?
start Запускает трассировку. Использование: trace start [sessionname=<sessionname>] [[scenario=]<сценарий1,сценарий2>] [[globalKeywords=]keywords] [[globalLevel=]level] [[capture=]yes|no] [[capturetype=]physical|vmswitch|both] [[report=]yes|no|disabled] [[persistent=]yes|no] [[traceFile=]pathfilename] [[maxSize=]filemaxsize] [[fileMode=]single|circular|append] [[overwrite=]yes|no] [[correlation=]yes|no|disabled] [capturefilters] [[provider=]providerIdOrName] [[keywords=]keywordMaskOrSet] [[level=]level] [bufferSize=<bufferSize>] [[[provider=]provider2IdOrName] [[providerFilter=]yes|no]] [[keywords=]keyword2MaskOrSet] [[perfMerge=]yes|no] [[level=]level2] ... Значения по умолчанию: capture=no (указывает, включен ли захват пакетов в дополнение к трассировке событий) capturetype=physical (указывает, будет ли включен захват пакетов только для физических сетевых адаптеров, только для виртуальных коммутаторов или как для физических сетевых адаптеров, так и для виртуальных коммутаторов) report=no (указывает, будет ли вместе с файлом трассировки создан отчет) persistent=no (указывает, будет ли сеанс трассировки продолжаться при перезагрузках до тех пор, пока не будет получена команда "netsh trace stop") maxSize=250 MB (указывает максимальный размер файла трассировки; "0" - без ограничений) bufferSize=512 (указывает размер буфера трассировки в КБ, мин. 4, макс. 16384) fileMode=circular overwrite=yes (указывает, будет ли перезаписан существующий файл вывода трассировки) correlation=disabled (указывает, будут ли связанные события соотноситься и объединяться в группу) perfMerge=yes (указывает, будут ли метаданные производительности объединяться с данными трассировки) traceFile=%LOCALAPPDATA%TempNetTraces[sessionname]NetTrace.etl (указывает расположение файла вывода) providerFilter=no (указывает, включен ли фильтр поставщика) sessionname='' (указывает имя для сеанса трассировки, чтобы можно было собрать одновременные трассировки. Если для параметров поставщика keywords и level значения не заданы, по умолчанию используются значения all и 255 соответственно. Пример: netsh trace start scenario=InternetClient capture=yes Запускает трассировку сценария InternetClient и зависящих от него поставщиков и включает захват пакетов только для физических сетевых адаптеров. Трассировка остановится после получения команды "netsh trace stop" или после перезагрузки системы. Для файла вывода будут использованы имя и расположение по умолчанию. При наличии там старого файла он будет перезаписан. netsh trace start provider=microsoft-windows-wlan-autoconfig keywords=state,ut:authentication Запускает трассировку для поставщика microsoft-windows-wlan-autoconfig Трассировка завершится после получения команды "netsh trace stop" или после перезагрузки системы. Для файла вывода будут использованы имя и расположение по умолчанию. При наличии там старого файла он будет перезаписан. В журнал будут записываться только события с ключевыми словами "state" или "ut:authentication". Команду "netsh trace show provider" можно использовать для просмотра поддерживаемых ключевых слов и уровней. Фильтры захвата: Фильтры захвата поддерживаются, только если захват явно включен параметром capture=yes. Используйте команду "netsh trace show CaptureFilterHelp" для отображения списка поддерживаемых фильтров захвата и сведений об их использовании. Фильтры поставщиков: Фильтры поставщиков поддерживаются многими поставщиками и включаются параметром providerFilter=Yes после каждого поставщика. Используйте команду "netsh trace show ProviderFilterHelp" для отображения списка поддерживаемых фильтров поставщиков для каждого поставщика и их использования.
Создаём директорию для сохранения дампа. Формируем запрос, в котором указываем параметры захвата и имя файла для дампа, выполняем.
netsh trace start capture=yes ipv4.address=10.12.54.14 fileMod=single maxsize=0 traceFile=C:dumpNetTrace2.etl
Для остановки захвата трафика выполняем:
netsh trace stop
Процесс остановки может быть долгим, если данных много. В итоге получаем два файла:
- CAB
- ETL
Мы получили дамп трафика в формате Netmon (ETL), его можно анализировать в Network Monitor. А как быть, если нам нужно анализировать трафик в виде WireShark (PCAPNG)?
Конвертация ETL в PCAPNG
На такой случай есть утилита etl2pcapng.
https://github.com/microsoft/etl2pcapng
На всякий случай сохранил себе в Сборку для системного администратора.
Качаем, распаковываем.
Туда де скидываю ETL файл.
Запускаем командную строку под администратором. Использовать утилиту просто:
etl2pcapng <infile> <outfile>
Выполняю:
etl2pcapng.exe NetTrace2.etl NetTrace2.pcapng
Получаем файл PCAPNG.
Ссылки
Wireshark — анализатор сетевого трафика
tcpdump — анализатор сетевого трафика
PktMon — анализатор сетевого трафика
ETW, Wireshark, tcpdump — сетевые анализаторы трафика, которые могут использоваться для анализа трафика, проходящего через сетевой интерфейс хоста. Они могут понадобиться для обнаружения и решения проблем с сетью, отладки веб-приложений, сетевых программ или сайтов.
Дамп трафика на серверах Windows стандартными средствами
Запускаем командную строку от имени администратора и запускаем сбор трафика:
C:Windowssystem32>netsh trace start scenario=netconnection capture=yes maxsize=2048 tracefile=c:dump01.etl
Останавливаем сбор трафика:
C:Windowssystem32>netsh trace stop
Преобразование etl в формат pcapng с помощью etl2pcapng
Windows поставляется с компонентом захвата трафика под названием «ndiscap», который реализован как поставщик трассировки событий Windows (ETW).
Файл, созданный ndiscap, представляет собой файл etl, который можно открыть с помощью инструментов, ориентированных на ETW, таких как Microsoft Message Analyzer, но не может быть открыт с помощью Wireshark.
etl2pcapng.exe может преобразовать файл etl в файл pcapng для открытия с помощью Wireshark.
Бинарники доступны в разделе Releases: https://github.com/microsoft/etl2pcapng/releases
Выполняем преобразование дампа:
c:etl2pcapng>etl2pcapng.exe in.etl out.pcapng
Дамп трафика на серверах Linux с помощью утилиты tcpdump
Сначала установите утилиту tcpdump:
RHEL
yum install tcpdump -y
dnf установить tcpdump -y
Ubuntu / Debian
apt install tcpdump -y
Запускаем сбор трафика без преобразования имен DNS и с сохранением дампа в файл.
tcpdump -i ens192 -n -w /tmp/dump01.pcap
Статья обновлена: 29 июня 2022
ID: 12401
В некоторых случаях для анализа и устранения неполадок в работе программы «Лаборатории Касперского» специалист технической поддержки может запросить дамп определенного процесса.
Чтобы получить дамп процесса:
- Нажмите Ctrl+Alt+Delete на клавиатуре.
- Выберите Диспетчер задач.
- Если у вас:
- Windows 7, перейдите на вкладку Процессы.
- Windows 11, вкладка Процессы будет открыта автоматически, перейдите к следующему шагу.
-
Windows 8, 8.1, 10 или серверная система нажмите Подробнее.
-
- Нажмите правой кнопкой на процесс, дамп которого необходимо получить, и в контекстном меню выберите Создать файл дампа.
- Дождитесь сообщения об успешном создании файла.
- Скопируйте путь к файлу дампа.
- Нажмите OK.
- Нажмите +E на клавиатуре.
- Вставьте скопированный адрес папки в адресную строку.
- Нажмите Enter на клавиатуре.
Папка с созданным файлом дампа будет открыта.
Вам помогла эта страница?