Подробный гайд: 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"
Информация предоставлена в ознакомительных целях. Применение описанных настроек в системах, должно осуществляться только после согласования с ответственными за информационную безопасность и в соответствии с требованиями ФСТЭК, ФСБ и иных уполномоченных органов.