Подробный гайд: Wireshark / Анализ трафика, Шпаргалка: PowerShell, Расследование инцидентов

Практический гайд по анализу трафика в Wireshark и шпаргалка по PowerShell для безопасного администрирования и защиты SMB-сервера Windows.

2026.09.29                  


Подробный гайд: Wireshark / Анализ трафика, Шпаргалка: PowerShell, Расследование инцидентовПодробный гайд: Wireshark / Анализ трафика, Шпаргалка: PowerShell, Расследование инцидентов

ЧАСТЬ 1: Основа работы с Wireshark — это Display Filters (фильтры отображения). Они позволяют отсеять шум и найти конкретные аномалии.

1. Базовые и сетевые фильтры

  • ip.addr == 192.168.1.10 — весь трафик от или к конкретному IP.
  • ip.src == 192.168.1.10 and ip.dst == 10.0.0.5 — строгое направление от источника к получателю.
  • ip.src == 192.168.1.0/24 — трафик целой подсети.
  • eth.addr == 00:11:22:33:44:55 — поиск по MAC-адресу (полезно при поиске "шумных" устройств или рогов).



2. Порты и протоколы

  • tcp.port == 445 или udp.port == 53 — фильтрация по порту (в обе стороны).
  • tcp.port == 80 or tcp.port == 443 — веб-трафик.
  • tcp.flags.syn == 1 and tcp.flags.ack == 0 — поиск попыток установки соединений (сканирование портов).
  • tcp.flags.reset == 1 — разорванные соединения (RST). Помогает найти сбои в работе приложений или блокировки фаервола.

3. HTTP / Web (Анализ утечек и атак)

  • http.request.method == "POST" — отправка данных на сервер (поиск форм логина, загрузки файлов, SQL-инъекций).
  • http.response.code >= 400 — поиск ошибок на стороне сервера и клиента (403, 404, 500).
  • http contains "password" — поиск учетных данных, передаваемых в открытом виде.
  • http.request.uri contains ".php" — обращение к скриптам (поиск шеллов/веб-бэкдоров).

4. DNS (Поиск малвари и C2-серверов)

  • dns.qry.name contains "malware" — поиск по доменному имени.
  • dns.flags.response == 0 — только DNS-запросы (без ответов).
  • dns.qry.type == 1 — только A-записи (IPv4).

Совет:

Обращайте внимание на длинные, сгенерированные поддомены (DGA-домены) — это частый признак работы троянов.


5. SMB (SMB2/SMB3) — Анализ файловых шар

  • smb2.cmd == 5 — SMB2 Create (открытие/создание файла).
  • smb2.filename contains "confidential" — поиск обращений к конкретным файлам.
  • smb2.cmd == 8 — SMB2 Read (чтение/скачивание файла).
  • smb2.cmd == 9 — SMB2 Write (запись/изменение файла).
  • ntlmssp.auth.username contains "Admin" — поиск попыток аутентификации в домене/SMB.

6. Поиск по содержимому пакетов (Поиск сигнатур)

  • frame contains "powershell" — поиск строк в сыром дампе.
  • data.data contains 4d:5a — поиск заголовка PE-файла (MZ), что часто означает передачу исполняемого файла (.exe) по сети.

7. TShark (Консольный Wireshark) для автоматизации

Если у вас нет GUI или нужно быстро проанализировать дамп на сервере:

# Захват трафика на порту SMB с сохранением в файл
tshark -i eth0 -f "port 445" -w smb_capture.pcap

# Чтение pcap и вывод только IP-адресов источников, обращающихся к SMB
tshark -r smb_capture.pcap -Y "smb2" -T fields -e ip.src | sort | uniq -c

# Извлечение всех DNS-запросов из дампа
tshark -r capture.pcap -Y "dns.qry.name" -T fields -e dns.qry.name

ЧАСТЬ 2. Шпаргалка: PowerShell для администрирования SMB

Для управления SMB в Windows Server и Windows 10/11 используется модуль SmbShare. Он позволяет полностью отказаться от GUI и старых утилит вроде net share.

1. Управление общими папками (SMB Shares)

# Получить список всех шар на сервере
Get-SmbShare

# Создать новую шару с доступом только на чтение для "Domain Users"
New-SmbShare -Name "PublicDocs" -Path "D:\Docs" -ReadAccess "DOMAIN\Domain Users" -Description "Публичные документы"

# Изменить описание или путь (пересоздать)
Set-SmbShare -Name "PublicDocs" -Description "Обновленное описание" -Force

# Удалить шару без запроса подтверждения
Remove-SmbShare -Name "PublicDocs" -Force

2. Права доступа (NTFS и Share Permissions)

# Посмотреть текущие права на шару
Get-SmbShareAccess -Name "PublicDocs"

# Дать полные права конкретному пользователю
Grant-SmbShareAccess -Name "PublicDocs" -AccountName "DOMAIN\Ivan.Ivanov" -AccessRight Full -Force

# Отозвать права
Revoke-SmbShareAccess -Name "PublicDocs" -AccountName "DOMAIN\Ivan.Ivanov" -Force

# Блокировать доступ всем (кроме администраторов) - "Zero Trust" подход
Block-SmbShareAccess -Name "PublicDocs" -AccountName "DOMAIN\BadUser" -Force

3. Активные сессии и подключения (Troubleshooting)



Если вам нужно узнать, кто "держит" файл и не дает его удалить или изменить:

# Показать всех подключенных пользователей и их IP
Get-SmbSession

# Показать открытые файлы
Get-SmbOpenFile

# Принудительно "выкинуть" конкретную сессию (например, при подозрении на компрометацию)
Close-SmbSession -SessionId 12345 -Force

# Закрыть все сессии конкретного пользователя
Get-SmbSession | Where-Object {$_.ClientUserName -like "*CompromisedUser*"} | Close-SmbSession -Force

4. Клиентские подключения (Подключение сетевых дисков)

# Подключить сетевой диск (аналог net use)
New-SmbMapping -LocalPath "Z:" -RemotePath "\\FileServer\PublicDocs" -UserName "DOMAIN\Admin" -Password "P@ssw0rd"

# Посмотреть подключенные диски
Get-SmbMapping

# Отключить диск
Remove-SmbMapping -LocalPath "Z:" -Force

5. Безопасность SMB-сервера (Hardening)

Управление протоколами и шифрованием (критически важно для защиты от Ransomware и атак типа Pass-the-Hash):

# Посмотреть текущую конфигурацию сервера
Get-SmbServerConfiguration | Select EnableSMB1Protocol, EnableSMB2Protocol, EncryptData, RequireSecuritySignature

# ОТКЛЮЧИТЬ уязвимый SMBv1 (WannaCry / Petya)
Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force

# Включить ОБЯЗАТЕЛЬНОЕ шифрование SMB3 (защита от сниффинга)
Set-SmbServerConfiguration -EncryptData $true -Force

# Требовать цифровую подпись пакетов (защита от MITM / SMB Relay)
Set-SmbServerConfiguration -RequireSecuritySignature $true -Force

ЧАСТЬ 3: # СИНЕРГИЯ: Расследование инцидента (Wireshark + PowerShell)

Сценарий:

Система IDS/IPS или антивирус сообщила, что с рабочей станции 10.0.0.55 идет массовое чтение файлов с файлового сервера. Как администратор, вы действуете по следующему алгоритму:

Шаг 1. Анализ в Wireshark (или TShark)

Применяем фильтр: ip.src == 10.0.0.55 and smb2.cmd == 8 (SMB Read).
Мы видим, что пользователь скачивает архивы с базой данных. В фильтрах Wireshark смотрим поле ntlmssp.auth.username и узнаем, что это скомпрометированный аккаунт DOMAIN\Accountant.


Шаг 2. Блокировка через PowerShell

Открываем PowerShell на файловом сервере от имени администратора:

1. Находим ID сессии злоумышленника:

   Get-SmbSession | Where-Object {$_.ClientIPAddress -eq "10.0.0.55"}

2. Разрываем сессию, чтобы остановить утечку "здесь и сейчас":

   Close-SmbSession -SessionId <ID_сессии> -Force

3. Закрываем доступ аккаунту к проблемной шаре:

   Block-SmbShareAccess -Name "DataBase" -AccountName "DOMAIN\Accountant" -Force

4. Отключаем пользователя в Active Directory (через модуль ActiveDirectory):

   Disable-ADAccount -Identity "Accountant"

Информация предоставлена в ознакомительных целях. Применение описанных настроек в системах, должно осуществляться только после согласования с ответственными за информационную безопасность и в соответствии с требованиями ФСТЭК, ФСБ и иных уполномоченных органов.


Статью подготовил: Аверко Денис Сергеевич @Nymexis г. Омск (специалист по ЗИ)

Комментарии

Загрузка...
Если комментарии не загружаются, можете попробовать отключить блокировщик рекламы для этого сайта