Моніторинг мережі в Windows: netstat, Resource Monitor і Wireshark
Як переглянути мережеві підключення Windows, знайти підозрілі процеси що передають дані, використовувати netstat, Resource Monitor і Wireshark для аналізу трафіку.
Комп'ютер відправляє дані кудись у фоні? Програма з'єднується з невідомими серверами? Ось як це перевірити.
Resource Monitor — швидкий огляд
Win + R → resmon → вкладка Мережа
Тут видно в реальному часі:
- Processes with Network Activity — які процеси зараз використовують мережу і скільки
- Network Activity — поточні підключення з адресами і портами
- TCP Connections — всі активні TCP з'єднання
- Listening Ports — порти на яких система очікує підключення
Клікни на процес вгорі — внизу відфільтруються тільки його підключення.
netstat — з командного рядка
rem Всі активні підключення з ім'ям процесу і PID
netstat -anob
rem Лише встановлені TCP підключення
netstat -an | findstr ESTABLISHED
rem Підключення що очікують (відкриті порти)
netstat -an | findstr LISTENING
rem Оновлювати кожні 2 секунди
netstat -an 2
Розшифровка стовпців:
- Local Address — IP:порт на твоєму ПК
- Foreign Address — IP:порт віддаленого сервера
- State — ESTABLISHED (підключено), LISTENING (чекає), TIME_WAIT (закривається)
- PID — ID процесу
Знайди процес за PID:
tasklist | findstr 1234
PowerShell — детальніший аналіз
# Всі TCP підключення з ім'ям процесу
Get-NetTCPConnection -State Established |
Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort,
@{N="Process"; E={(Get-Process -Id $_.OwningProcess -EA SilentlyContinue).Name}},
OwningProcess |
Sort-Object Process |
Format-Table -AutoSize
# Тільки зовнішні підключення (не localhost)
Get-NetTCPConnection -State Established |
Where-Object { $_.RemoteAddress -notmatch '^(127\.|::1|0\.)' } |
Select-Object RemoteAddress, RemotePort,
@{N="Process"; E={(Get-Process -Id $_.OwningProcess -EA SilentlyContinue).Name}} |
Format-Table -AutoSize
# Порти що слухають
Get-NetTCPConnection -State Listen |
Select-Object LocalPort,
@{N="Process"; E={(Get-Process -Id $_.OwningProcess -EA SilentlyContinue).Name}} |
Sort-Object LocalPort |
Format-Table -AutoSize
# Статистика по мережевих адаптерах
Get-NetAdapterStatistics | Select-Object Name, ReceivedBytes, SentBytes
Знайти підозрілий процес
Якщо бачиш підключення до незнайомого IP:
# Знайти процес і його файл
$pid = 1234 # замінити на реальний PID
Get-Process -Id $pid | Select-Object Name, Path, StartTime
# Переглянути всі підключення цього процесу
Get-NetTCPConnection | Where-Object { $_.OwningProcess -eq $pid }
Перевір IP-адресу:
- ipinfo.io/8.8.8.8 — хто власник IP
- virustotal.com — перевір підозрілий файл процесу
Wireshark — глибокий аналіз трафіку
Wireshark — безкоштовний аналізатор мережевих пакетів. Показує весь трафік на рівні пакетів.
Встановлення: wireshark.org → Download
Базове використання
- Запусти Wireshark
- Вибери мережевий адаптер (Wi-Fi або Ethernet)
- Натисни Start capturing packets (синій плавник)
- Спостерігай трафік у реальному часі
- Натисни Stop (червоний квадрат)
Корисні фільтри Wireshark
# Трафік конкретного IP
ip.addr == 192.168.1.1
# Тільки HTTP трафік
http
# Тільки DNS запити
dns
# Трафік конкретного порту
tcp.port == 443
# Тільки вихідний трафік з мого ПК
ip.src == 192.168.1.100
# Шукати рядок у пакетах
frame contains "password"
# Великі пакети (підозра на витік даних)
frame.len > 1000 && ip.dst != 192.168.1.0/24
Аналіз підозрілого трафіку
Якщо підозрюєш що програма відправляє дані:
- Закрий всі програми крім підозрілої
- Запусти Wireshark і почни запис
- Зачекай 5 хвилин
- Зупини і відфільтруй по IP підозрілої програми
Моніторинг споживання трафіку
# Скільки даних передав кожен процес (потребує запущеного Performance Monitor)
Get-Counter '\Process(*)\IO Data Bytes/sec' |
Select-Object -ExpandProperty CounterSamples |
Where-Object { $_.CookedValue -gt 0 } |
Sort-Object CookedValue -Descending |
Select-Object -First 10 Path, CookedValue
Або через Task Manager → вкладка Процеси → клікни правою кнопкою на заголовки → додай Мережа.
Підсумок
Для швидкої перевірки — Resource Monitor або netstat -anob. Для PowerShell-скриптів — Get-NetTCPConnection. Для глибокого аналізу пакетів — Wireshark з фільтрами. Підозрілий процес — перевір через Get-Process і virustotal.com.
🛡️ Перевір безпеку свого ПК
Хочеш знати чи немає витоків даних, зайвих служб або підозрілих програм на твоєму ПК?
→ AuditShield — аудит Windows по 22 напрямках за 10 хвилин. HTML-звіт з оцінкою ризику. Є безкоштовне демо.
🌐 Розрахувати параметри підмережі?
→ IP/Subnet калькулятор — введи IP і CIDR, отримай маску, broadcast, діапазон хостів і бінарне представлення.