EMZETT.
Увійти

Сніфер

Коротко: Інструмент, що читає й записує трафік у мережі — наприклад, Wireshark. Може використовуватися як для законної діагностики, так і для атак.

Докладніше: Сніфер переводить мережеву карту в «невибірливий режим» (promiscuous mode), в якому вона обробляє не лише адресовані їй пакети, а записує весь видимий трафік. У комутованій мережі сніфер зазвичай бачить лише власний трафік — тому зловмисники часто поєднують сніфінг з ARP-спуфінгом, щоб перенаправити чужий трафік через свою машину. Законне застосування: усунення несправностей мережі, аналіз протоколів, аудити безпеки.

Подробиці

Чи побачить сніфер чужий трафік узагалі, сильно залежить від топології мережі:

Стара мережа на хабах:     хаб надсилає кожен пакет на ВСІ порти -> прослухати
                           чужий трафік тривіально, додатковий трюк не потрібен.

Сучасна комутована         комутатор надсилає пакети лише на порт призначення ->
мережа:                    за замовчуванням сніфер бачить лише свій трафік, щоб
                           бачити більше, потрібен додатковий трюк (наприклад,
                           ARP-спуфінг, «дзеркалювання портів» на комутаторі).

Для законної діагностики мережі професійні комутатори тому часто мають спеціальний «дзеркальний порт» або «SPAN-порт», що навмисно надсилає копію всього трафіку на аналітичну машину — без цього явного налаштування (або фізичного доступу до хаба замість комутатора) сніфер у сучасній мережі сам по собі бачить лише те, що адресовано його мережевій карті.

У незашифрованому трафіку (наприклад, старий HTTP замість HTTPS, незашифрований Wi-Fi) сніфер може читати паролі й вміст відкритим текстом — головна причина, чому практично весь сучасний веб перейшов на HTTPS/TLS. У зашифрованому трафіку сніфер усе ж бачить метадані (який IP з яким IP спілкується, скільки даних, коли), але не сам вміст — це розрізнення між «метадані видно» і «вміст захищено» важливе під час оцінки того, який захист реально дає шифрування.

Сніфер як інструмент діагностики

Для ІТ-адміністраторів сніфер — один з найважливіших інструментів усунення несправностей: якщо застосунок «просто не працює», а самих логів недостатньо, погляд на реальний мережевий трафік часто одразу виявляє проблему — наприклад, DNS-сервер, що не відповідає, TLS-рукостискання, що провалюється через хибний сертифікат, або правило брандмауера, що мовчки відкидає пакети. Wireshark — безперечно найпоширеніший графічний інструмент, tcpdump — відповідний аналог для командного рядка на серверах без графічного інтерфейсу:

# Записати весь трафік на мережевому інтерфейсі
tcpdump -i eth0
 
# Лише трафік з певною IP-адресою, зберегти у файл
tcpdump -i eth0 host 192.168.1.10 -w capture.pcap

Отриманий файл .pcap можна завантажити у Wireshark для аналізу трафіку пакет за пакетом з повним розбором протоколів — зокрема відновлення цілих TCP-з’єднань («follow TCP stream»), що дуже допомагає під час розбору складних взаємодій клієнт-сервер.

Правова оцінка

Запис мережевого трафіку в мережі, на роботу з якою у вас немає явного повноваження, у більшості юрисдикцій є кримінальним правопорушенням (несанкціоноване перехоплення даних) — використовувати сніфер у власній домашній мережі або з явного дозволу оператора мережі (наприклад, у межах пентесту з письмовим завданням) нормально, таємно записувати чужий трафік — ні.

Див. також: Wireshark, Спуфінг