Showing posts with label wireshark. Show all posts
Showing posts with label wireshark. Show all posts

Tuesday, 15 October 2024

Network Monitor - Wireshark на минималках.

Всем привет.

Microsoft Network Monitor это классический инструмент сетевой диагностики для Windows, которой позволяет выполнить захват и анализ входящего и исходящего трафика на компьютере. Несмотря на то, что это продукт не развивается и не обновляется уже много лет, его часто используют администраторы, когда нужно выполнить диагностику сетевых подключений. NetMon предоставляет на порядок меньше возможностей и не так хорош в расширенном разборе пакетов, по сравнению с популярным инструментом захвата и анализа WireShark. Однако графический интерфейс Network Monitor гораздо проще и интуитивнее, да и сам продукт легче для старта. 

Сегодня мы рассмотрим, как использовать Network Monitor для захвата и анализа сетевого трафика в реальном времени и для снятия дампа трафика для последующего анализа.

На список поддерживаемых версий ОС не обращайте внимания, он чудесно работает и на Windows 10 и на  Windows 2019. Установить Microsoft Network Monitor 3.4 (последняя версия, другой уже не будет) можно, скачав установщик (NM34_x64.exe) с сайта Microsoft (https://www.microsoft.com/en-us/download/details.aspx?id=4865), или установить пакет с помощью пакетного менеджера winget: winget install Microsoft.NetMon

После установки, запустите Network Monitor с правами администратора.

В окне NetMon нажмите New Capture. По умолчанию Network Monitor, собирает весь трафик, проходящий через интерфейсы компьютеры. За длительный промежуток времени размер такого сетевого дампа может быть весьма значительным. Нажмите кнопку Capture Settings. В этом окне можно настроить фильтры, которые определяют какой трафик должен собирать NetMon. В разделе Load Filter -> Standard Filters есть несколько шаблонов фильтров для типовых задач. В нашем случае нам нужен фильтр по TCP портам. Выберите TCP-> TCP ports.

Thursday, 18 May 2023

Анализ трафика с помощью ZUI.

Всем привет.

Сегодня зарепостю вам описание нового инструмента для анализа сетевого трафика от Дмитрия Кожухова (от первого лица). Инструмент под именем ZUI.

Все мы знаем что для анализа сетевого трафика обычно используют Wireshark. У популярного сниффера  множество достоинств, среди которых: настраиваемые фильтры, отличный интерфейс, и подробная документация. Но у Wireshark есть один большой недостаток - медленная работа при анализе больших дампов. 

Поэтому далее рассмотрим легкую альтернативу для анализа трафика, которая называется ZUI и которая лишена этого недостатка.

Что такое ZUI ?

ZUI - Zed User Interface (бывший Brim), написан с помощью Electron и React. Работает на движке ZED, который написан на Go и состоит различных элементов:



Основные отличия ZUI от Wireshark - это скорость работы, поддержка сигнатур и анализ логов. Из недостатков: не умеет декодировать пакеты и экспортировать найденные в трафике файлы. Это на самом деле не большие минусы, потому что каждый найденный поток данных в ZUI можно открыть простым кликом по кнопке в Wireshark, где отображается вся недостающая информация.

Идея движка ZED, который позволяет ZUI работать с файлами PCAP в разы быстрее Wireshark, состоит в том, чтобы избавиться от концепции таблиц из базовой модели данных. Таблицы заменили современной системой типов, при которой все значения могут иметь свой тип независимо от составной схемы. Получается, Zed User Interface - и не полуструктурированный, и не табличный. Разработчики называют данную концепцию суперструктурированной. Кстати разработчик ZUI - это создатель форматов PCAP, BPF и автор tcpdump!

Для примера можно взять формат из Zed data model под названием ZSON. Это привычный для всех JSON с собственными типами значений. Этого будет достаточно, чтобы начать использовать ZUI в анализе трафика.

Установка ZUI на Windows - достаточно скачать с официального сайта файл установки и запустить его.

Интерфейс Zed User Interface

Сначала взглянем на минималистичный интерфейс и заценим его функциональность. Приложение всеядно, ему можно подсунуть файлы JSON, CSV, ZSON, ZNG и т.д., но нас интересует файл PCAP или какой-нибудь структурированный лог, например Zeek log.

После открытия файла PCAP в ZUI, он сразу же будет проверен с помощью движков Zeek и Suricata, а после этого буду отображены все хеши с VirusTotal. Прикольно да?


Friday, 1 July 2022

Про Xplico.

Всем привет.

Есть такой парень Xplico - это инструмент анализа сетевой криминалистики (NFAT). Цель Xplico в извлечении из захваченного интернет трафика данных приложения протокола, и он может распознавать протоколы с помощью метода под названием Port Independent Protocol Identification (PIPI).

Например, из файла pcap Xplico извлекает каждый email (протоколы POP, IMAP и SMTP), всё содержимое HTTP, каждый звонок VoIP (SIP), FTP, TFTP и т. д. Xplico не является анализатором сетевого протокола.  Повторюсь, что Xplico - это криминалистический инструмент анализа сети.

Домашняя страница: http://www.xplico.org/. Автор: Gianluca Costa, Andre de Franceschi. Лицензия: GPLv2

Его особенности:

  • Поддерживаемые протоколы: HTTP, SIP, IMAP, POP, SMTP, TCP, UDP, IPv6;
  • Независимая идентификация портов протоколов (PIPI) для каждого протокола приложений:
  • Многопоточность;
  • Выводимые данные и информация в базе данных SQLite или базе данных database и/или файлах:
  • Все перекомпонованные в Xplico данные ассоциируются с файлом XML, который однозначно идентифицирует содержимое пересобранных данных потоков и pcap;
  • Проработка в реальном времени (зависит от количества потоков, типов протоколов и производительности компьютера — оперативной памяти, процессора, времени доступа к жёсткому диску и т. д.);
  • Сборка TCP с верификацией ACK для всех пакетов или программная ACK верификация
  • Обратный поиск DNS из содержащих DNS пакетов во входящих файлах (pcap), а не с внешнего DNS сервера;
  • Нет ограничения на размер входящих данных или на количество входящих файлов (ограничение только по размеру жёсткого диска);
  • Поддержка IPv4 и IPv6;
  • Модульность. Каждый компонент Xplico является модулем. Протокол ввода, протокол декодирования (Dissector) и интерфейс вывода (dispatcher) — это всё модули;
  • Возможность легко создавать любые типы dispatcher с помощью которых организовывать извлечение данных наиболее подходящим и полезным для вас путём.

Xplico использование:

xplico [-v] [-c <файл_конфигурации>] [-h] [-s] [-g] [-l] [-i <prot>] -m <модуль_захвата></prot>

-v версия

-c файл конфигурации

-h эта помощь

-i информация по протоколу 'prot' 

-g показать дерево-график протоколов

-l напечатать на экране всё содержимое логов

-s печатать каждую секунду статус декодирования

-m тип модуля захвата

Параметры должны следовать в этом порядке!

Wednesday, 22 June 2022

Анализ сетевых пакетов c TCPDump.

Всем привет.

Сегодня у нас четвертая часть серии "Анализ сетевых пакетов", переходим к TCPDump. Инструмент Tcpdump представляет собой основное средство сетевого анализа, используемое специалистами в сфере информационной безопасности. 


Tcpdump captures packets of network traffic on a given network interface

It uses command line arguments for selecting specific destinations, sources, protocols, etc

It can also use filter files containing command line arguments. Filters are used to restrict analysis to packets of interest

Output from tcpdump is called  dump 


Example dump

Ran tcpdump on the machine xanadu.ieu.edu.tr. First few lines of the output:

01:46:28.808262 IP xanadu.ieu.edu.tr.ssh > adsl-69-228-230-7.dsl.pltn13.pacbell.net.2481: . 2513546054:2513547434(1380) ack 1268355216 win 12816

01:46:28.808271 IP xanadu.ieu.edu.tr.ssh > adsl-69-228-230-7.dsl.pltn13.pacbell.net.2481: P 1380:2128(748) ack 1 win 12816

01:46:28.808276 IP xanadu.ieu.edu.tr.ssh > adsl-69-228-230-7.dsl.pltn13.pacbell.net.2481: . 2128:3508(1380) ack 1 win 12816

01:46:28.890021 IP adsl-69-228-230-7.dsl.pltn13.pacbell.net.2481 > xanadu.ieu.edu.tr.ssh: P 1:49(48) ack 1380 win 16560

Sunday, 12 June 2022

Scapy packet manipulation.

Всем привет.

Этим я открываю небольшую серию по итогам презентации на тему "Анализ сетевых пакетов" от автора "CE 340/S. Kondakci, IEU, Computer Engineering". По ходу будет масса примеров анализа с помощью таких инструментов как Scapy, Nmap, Nping и tcpdump. Устраивайтесь поудобнее и начнем. А начнем мы со Scapy.

Scapy packet manipulation agenda:

  • Creating a packet
  • Send/Receiving packets
  • Basic Scapy commands
  • Capturing packets and reading packet capture files into Scapy
  • Layering packets

Four steps before:

1. Install Python 3.5+

2. Download and install Scapy

3. Install additional software for special features (optional)

4. Run Scapy with root privileges.


Example: Hello World

send(IP(dst= 127.0.0.1 )/ICMP()/ HelloWorld )

  • send - this tells Scapy that you want to send a packet (just a single packet)
  • IP - the protocol of the packet you want to create
  • (dst= 127.0.0.1 ) - the destination IP to send the packet to 
  • /ICMP() - Create an ICMP packet with the default values provided by Scapy
  • / HelloWorld  - the payload to include in the ICMP packet


Wireshark capture:

Scapy command: send(IP(dst= 127.0.0.1 )/ICMP()/ HelloWorld )

Wireshark output: 

Internet Protocol Version 4, Src: 127.0.0.12 (127.0.0.12), Dst: 127.0.0.1 (127.0.0.1)

Protocol: ICMP

Data: 48656c6c6f576f726c64 or  HelloWorld 


Example: fabricate an ICMP Packet

send(IP(src= 127.0.0.1 , dst= 127.0.0.1 , ttl=128)/ICMP()/ HelloWorld )

Wireshark:

Internet Protocol Version 4, Src: 127.0.0.1 (127.0.0.1), Dst: 127.0.0.1 (127.0.0.1) Time to live: 128


What does this ICMP packet mean?

Internet Protocol Version 4, Src: 127.0.0.1 (127.0.0.1), Dst: 127.0.0.1 (127.0.0.1) Internet Control Message Protocol

Type: 0 (Echo (ping) reply)

Sunday, 5 June 2022

Расследование взлома компьютера с Windows, CTF #2.

Всем привет.

Вторая часть серии CyberDefenders.org представляет собой еще более увлекательную криминалистическую CTF. Как обычно, цель состоит в том, чтобы ответить на ряд типичных вопросов реагирования на инциденты, связанные с заражением вредоносным ПО.

Вам предоставляются следующие файлы, которые помогут в анализе:

- дамп необходимых лог-файлов в формате Json (для анализа будем использовать jq)

- ELK с графическим интерфейсом Kibana

Поэтoму на этот раз образ весит все 7 Гб. Скачали? Тогда начнем.

1) Процесс Threat Hunting обычно начинается с того, что аналитик выдвигает гипотезу о возможном векторе компрометации или методах, используемых злоумышленником. В этом сценарии ваша первоначальная гипотеза выглядит следующим образом: 

«Злоумышленник использовал механизм подписки WMI для обеспечения устойчивости в инфраструктуре». Проверьте эту гипотезу и найдите имя потребителя событий WMI, используемого злоумышленником для сохранения своей позиции.

Выполним запрос:

cat cyberpolygon-2020-data.json | jq 'select(._source.event_id=="5861")'

или отфильтруем в Кibana:

event_id:5861


Ответ:

PowerControl Consumer

Wednesday, 1 June 2022

Расследование взлома компьютера с Windows, CTF #1.

Всем привет.

Если вы интересуетесь информационной безопасностью, то наверняка знакомы с площадками для оттачивания хакерского мастерства, такими как Hack The Box,  а для специалистов компьютерной криминалистики существует альтернативная платформа CyberDefenders.  И я заглядываю туда время от времени, чтобы вспомнить былое.

Обычно дело обстоит так - по сценарию форензик кейса в исходящем трафике сети компании CyberCorp был выявлен ряд аномалий, что говорит о взломе. Специалисты ИБ успешно изолировали скомпрометированный хост от сети и собрали важные артефакты Windows. Артефакты лежат в архиве, который вам необходимо скачать. По результатам решения кейса нас, как специалистов по расcледованию инцидента, попросят ответить на ряд вопросов. 

По ходу нам предоставляются следующие файлы (артефакты Windows), которые подвергаются анализу:

Amcache.hve - файл реестра, содержит информацию о запускаемых приложениях.  Расположение файла Amcache: \%SystemRoot%\AppCompat\Programs\Amcache.hve

AppCompatCache.reg - информация из ключа куста реестра SYSTEM (C:\Windows\System32\configSystem):

HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache\AppCompatCache

В этом ключе содержится артефакт Shimcache - эта функция обеспечивает совместимость старых приложений с более новыми версиями ОС. В нем хранится информация: путь к файлу, время последнего изменения и размер исполняемого файла.

Файлы реестра: default, SAM, SECURITY, software, system. Расположение файлов: C:\Windows\System32\config

Windows event logs (формат evtx). Расположение файлов: C:\Windows\System32\winevt\Logs

User Registry Hives - файл NTUSER.DAT содержит информацию, связанную с действием пользователя. Файлы NTUSER.DAT хранятся в каталоге: %userprofile%

Windows Prefetch - файл оптимизации запуска приложений. Файлы Prefetch могут содержать важную информацию, такую как: имя исполняемого файла, список динамических библиотек, используемых исполняемым файлом, количество запусков исполняемого файла и временную метку, которая указывает, когда приложение было запущено в последний раз. Расположение файлов: C:\Windows\Prefetch

Копия NTFS $MFT. MFT - системный файл ОС, содержит метаданные объекта файловой системы. MFT находится в корне разделов NTFS, выгрузить его можно инструментом FTK Imager.

OBJECTS.DATA - файл содержит постоянные классы WMI (Windows Management Instrumentation). Расположение файла: %SystemRoot%\System32\wbem\Repository

Рartial registry dump - файл образа RAM.

2 packet captures файла (формат pcapng) - сетевой трафик, полученный в результате мониторинга сети организации.

Sunday, 20 March 2022

Пишем диссектор Wireshark на Lua.

Всем привет.

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

К счастью, можно использовать плагин Wireshark Protocol Dissectors, чтобы добавить в Wireshark анализ дополнительного протокола. Раньше для этого требовалось создание диссектора на языке С, чтобы работать с конкретной версией Wireshark, но современные версии Wireshark поддерживают язык сценариев Lua. Сценарии, которые вы пишете на Lua, также будут работать с инструментом командной строки tshark.

Давайте рассмотрим как разработать простой диссектор на Lua для протокола SuperFunkyChat, который поддерживает открытый чат по протоколу 12345.

Перед разработкой диссектора убедитесь, что ваша копия Wireshark поддерживает Lua, проверив диалоговое окно "О программе" Wireshark в разделе Help → About Wireshark. Если вы запускаете Wireshark от имени привилегированного пользователя в Unix-подобной системе, то обычно поддержка Lua отключена по соображениям безопасности, и вам нужно будет настроить Wireshark для запуска от имени непривилегированного пользователя, чтобы перехватывать и запускать сценарии на Lua. Можно разрабатывать диссекторы практически для любого протокола, с которым будет работать Wireshark, включая TCP и UDP. Гораздо проще разработать диссекторы для протоколов UDP, чем для TCP, потому что каждый перехваченный пакет UDP обычно имеет все, что нужно диссектору. 

SuperFunkyChat поддерживает режим UDP, передавая клиенту параметр командной строки --udp при запуске, что довольно удобно. Отправьте этот параметр во время перехвата и увидите пакеты, подобные тем, что показаны на скриншоте. Обратите внимание, что Wireshark по ошибке пытается проанализировать трафик, используя протокол GVSP, как показано в столбце Protocol. Реализация собственного диссектора исправит эту ошибку.


Один из способов загрузить файлы Lua – поместить свои сценарии в каталог %APPDATA%\ireshark\plugins в Windows или каталог ~/.config/wirehark/plugins в Linux и macOS. Также можно загрузить сценарий Lua, указав его в командной строке следующим образом, заменив информацию о пути на расположение сценария:

Wireshark.exe -X lua_script:chat2.lua

Есть и другой способ - это в файле Init.lua проверить значение параметра

disable_lua = false

а в конце того же файла добавить ссылку на сам скрипт:

dofile(DATA_DIR.."chat2.lua")

Monday, 14 March 2022

Packet Monitor Windows.

Всем привет.

В Windows 10 (1809) и Windows Server 2019 появился встроенный анализатор сетевого трафика Packet Monitor. В последнем билде Windows 10 функционал анализатора пакета был существенно расширен: появилась поддержка захвата пакетов в реальном времени, а также поддержка формата PCAPNG для импорта в анализатор сетевого трафика Wireshark. 

Таким образом в Windows появился функционал захвата сетевого трафика, аналогичный tcpdump, и его можно смело использовать системными и сетевыми администраторам для диагностики работы сети. Packet Monitor позволяет получить всю сетевую активность, проходящую через сетевой интерфейс компьютера на уровне каждого пакета.

Ранее для захвата сетевого трафика и инспектирования пакетов в Windows использовалась команда netsh trace.

Основные команды утилиты Packet Monitor:

filter - управление фильтрами пакетов

comp - управление зарегистрированными компонентами;

reset - сброс счетчиков;

start - запустить мониторинг пакетов;

stop - остановить сбор пакетов;

format - конвертировать лог файл трафика в текстовый формат;

pcapng - конвертация в формат pcapng;

unload - выгрузить драйвер PktMon.

Чтобы получить справку по выбраннной команде просто укажите ее имя в конце:

pktmon filter

Версия на печать

Популярное