Wireshark (перехватчик сетевых пакетов). Как определить, что мой трафик перехватывают? Как перехватить пакеты

Привет, Мир! Сейчас расскажем об одном полезном методе траблшутинга и поиска проблем на роутерах MikroTik . Суть данного метода заключается в том, чтобы отлавливать (“сниффить”) пакеты, проходящие через определённые интерфейсы нашего роутера и анализировать их сразу же при помощи Wireshark .

Prerequisites

Итак, для того, чтобы воспользоваться данным методом нам понадобится:

  • Роутер MikroTik (в нашем случае использовался RB951Ui-2HnD с версией прошивки RouterOS 6.40.2)
  • Программа Wireshark (в нашем случае версия 2.4.1)
  • Компьютер или сервер, находящийся в одной сети с роутером с запущенным Wireshark’ом

Настройка

Первым делом открываем Wireshark, выбираем интерфейс, на котором хотим “сниффить” (в нашем случае это Ethernet, то есть интерфейс, с помощью которого компьютер подключается к роутеру) и устанавливаем следующий фильтр - udp port 37008 . Как показано на рисунке:

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

Что же это за фильтр такой и что за порт - 37008 ? Дело в том, что MikroTik шлёт UDP дэйтаграммы, то есть весь перехваченный трафик, именно на этот порт streaming server’а , а в качестве этого стриминг сервера, как вы могли догадаться, у нас выступает наш компьютер с запущенным Wireshark’ом. Эти пакеты инкапсулируются по протоколу TZSP (TaZmen Sniffer Protocol), который используется для переноса в себе других протоколов.

Итак, запускаем перехват пакетов на определённом интерфейсе с фильтром udp port 37008 и видим, что ничего не происходит и пакетов нет.


А теперь самое интересное – подключаемся к MikroTik’у через WinBox, переходим в раздел Tools далее Packet Sniffer и видим следующее окно с настройками:


На вкладке General можем оставить всё по умолчанию, переходим на вкладку Streaming :


Ставим галочку в Streaming Enabled , в поле Server указываем IP адрес нашего компьютера, на котором запустили Wireshark и ставим галочку на Filter Stream , чтобы активировать фильтр, который будет настраиваться на следующей вкладке - Filter

На данной вкладке мы можем отфильтровать интересующий нас трафик. Например, у нас в сети есть IP-АТС Asterisk и мы хотим посмотреть, какие пакеты он получает и отправляет через роутер MikroTik. Так, например, можно отследить коммуникацию IP-АТС с сервером провайдера VoIP услуг.

Итак, выбираем интерфейсы, на которых хотим отлавливать пакеты (в нашем случае это bridge), далее отфильтруем трафик по определённому IP-адресу в поле IP Address (Наша IP-АТС), укажем протокол - 17 (udp) и порт 5060 (sip) . Направление укажем любое - any и Filter Operation = or , то есть логика работы данного фильтра – “или”. Если вы хотите отлавливать пакеты только по жёстко определённому фильтру, то логику следует указать and , то есть – совпадение всех условий фильтра.


Отлично, теперь отправляемся в Wireshark и видим, что он нам уже наловил нужных пакетов в соответствии с правилами фильтра.


В нашем случае – это коммуникация IP-АТС Asterisk с сервером провайдера VoIP услуг, запрос на регистрацию и подтверждение с обратной стороны. Обратите внимание, что тип инкапсуляции - TZSP , однако, Wireshark смог правильно деинкапсулировать эти пакеты и отобразить нам пакеты SIP .

Полезна ли Вам эта статья?

Пожалуйста, расскажите почему?

Нам жаль, что статья не была полезна для вас:(Пожалуйста, если не затруднит, укажите по какой причине? Мы будем очень благодарны за подробный ответ. Спасибо, что помогаете нам стать лучше!

Intercepter – это многофункциональный сетевой инструмент, который позволяет получить данные из трафика (пароли, сообщения в мессенджерах, переписки и т.д.) и реализовать различные MiTM-атаки.


Интерфейс программы Intercepter
Основной функционал

  • Перехват сообщений мессенджеров.
  • Перехват кукис файлов и паролей.
  • Перехват активности (страницы, файлы, данные).
  • Возможность подмены скачивания файлов, добавляя вредоносные файлы. Можно использовать совместно с другими утилитами.
  • Подмена сертификатов Https на Http.
Режимы работы
Messengers Mode – позволяет проверять переписку, которая была отправлена в незашифрованном виде. Применялась для перехвата сообщений в таких мессенджерах ICQ, AIM, JABBER сообщений.

Ressurection Mode – восстановления полезных данных из трафика, из протоколов которые передают трафик в открытом виде. Когда жертва просматривает файлы, страницы, данные, можно частично или полностью их перехватывать. Дополнительно можно указать размер файлов, чтобы не загружать программу маленькими частями. Эту информацию можно использовать для анализа.

Password Mode – режим для работы с куки файлами. Таким образом, можно получить доступы к посещаемым файлам жертвы.

Scan mode – основной режим для тестирования. Для начала сканирования необходимо нажать правой кнопкой мыши Smart Scan. После сканирования в окне будут отображаться все участники сети, их операционная система и другие параметры.

Дополнительно в этом режиме можно просканировать порты. Необходимо воспользоваться функцией Scan Ports. Конечно для этого есть и намного функциональные утилиты, но наличие этой функции – важный момент.

Если в сети нас интересует целенаправленная атака, то после сканирования необходимо добавить целевой IP в Nat с помощью команды (Add to Nat). В другом окне можно будет провести другие атаки.

Nat Mode. Основной режим, который позволяет проводить ряд атак по ARP. Это основное окно, которое позволяет проводить целенаправленные атаки.

DHCP mode. Это режим, который позволяет поднять свой DHCP сервер для реализации атак DHCP по середине.

Некоторые виды атак, которые можно проводить
Подмена сайта

Для подмена сайта у жертвы необходимо перейти в Target, после этого необходимо указать сайт и его подмену. Таким образом можно подменить достаточно много сайтов. Все зависит от того, насколько качественный будет фейк.

Подмена сайта

Пример для VK.com

Выбираем MiTM атаку

Изменяем правило для иньекции
В результате жертва открывает фейковый сайт при запросе vk.com. И в режиме паролей должен быть логин и пароль жертвы:


Чтобы провести целенаправленную атаку необходимо выбрать жертву из списку и добавить ее в таргет. Это можно сделать с помощью правой кнопкой мыши.


Добавления MiTm атаки
Теперь можно в режиме Ressurection Mode восстановить разные данные из трафика.


Файлы и информация жертвы посредством MiTm атаки
Подмена трафика



Указание настроек
После этого у жертвы будет меняться запрос "trust" на "loser".

Дополнительно можно убить кукис-файлы, чтобы жертва вышла со всех аккаунтов и повторно авторизовалась. Это позволит перехватить логины и пароли.


Уничтожение кукис файлов

Как увидеть потенциального сниферра в сети с помощью Intercepter?

С помощью опции Promisc Detection можно обнаружить устройство, которое ведет сканирование в локальной сети. После сканирование в графе status будет «Sniffer». Это первый способ, которые позволяет определить сканирование в локальной сети.


Обнаружение Sniffer
Устройство SDR HackRF


HackRF
SDR - это своеобразный радиоприемник, который позволяет работать с разными радиочастотными параметрами. Таким образом, можно перехватывать сигнал Wi-Fi, GSM, LTE и т.д.

HackRF - это полноценное SDR-устройство за 300 долларов. Автор проекта Майкл Оссман разрабатывает успешные устройства в этом направлении. Ранее был разработан и успешно реализован Bluetooth-снифер Ubertooth. HackRF успешный проект, который собрал более 600 тысяч на Kickstarter. Уже было реализовано 500 таких устройств для бета-тестирования.

HackRF работает в диапазоне частот от 30 МГц до 6 ГГц. Частота дискретизации составляет 20 МГц, что позволяет перехватывать сигналы Wi-FI и LTE сетей.

Как обезопасить себя на локальном уровне?

Для начала воспользуемся софтом SoftPerfect WiFi Guard. Есть портативная версия, которая занимает не более 4 мб. Она позволяет сканировать вашу сеть и отображать, какие устройства в ней отображены. В ней есть настройки, которые позволяют выбрать сетевую карту и максимальное количество сканируемых устройств. Дополнительно можно выставить интервал сканирования.


Возможность добавления комментариев для пользователей


Окно уведомления незнакомых девайсов после каждого заданного интервала сканирования

Заключение
Таким образом, мы рассмотрели на практике, как использовать программное обеспечение для перехвата данных внутри сети. Рассмотрели несколько конкретных атак, которые позволяют получить данные для входа, а также другую информацию. Дополнительно рассмотрели SoftPerfect WiFi Guard, которые позволяет на примитивном уровне защитить локальную сеть от прослушивания трафика.

Оригинал: Network sniffing
Автор: Paul Cobbaut
Дата публикации: 12 марта 2015 г.
Перевод: A. Панин
Дата перевода: 1 апреля 2015 г.

Глава 23. Перехват сетевого трафика

Администратор сети должен уметь работать со сниффером, таким, как wireshark или tcpdump , для диагностирования проблем сети.

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

23.1. Приложение wireshark

23.1.1. Установка wireshark

В данном примере приведена команда для установки приложения wireshark в дистрибутивах, использующих пакеты программного обеспечения с расширением.deb (включая Debian, Mint, Xubuntu и другие дистрибутивы).

Root@debian8:~# Чтение списков пакетов Готово Построение дерева зависимостей Чтение информации о состоянии Готово... (вывод сокращен)

В дистрибутивах, использующих пакеты программного обеспечения с расширением.rpm , таких, как CentOS, RHEL и Fedora, для установки приложения wireshark может использоваться утилита yum .

# yum install wireshark Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile ... (вывод сокращен)

23.1.2. Выбор сетевого интерфейса

При запуске приложения wireshark в первый раз вам придется выбрать сетевой интерфейс. Вы увидите диалог, который выглядит аналогично приведенному на иллюстрации ниже.

Вероятна ситуация, при которой доступных сетевых интерфейсов попросту не окажется, ведь в некоторых дистрибутивах перехват сетевого трафика может осуществляться исключительно пользователем root. В этом случае вам придется запустить приложение wireshark от лица пользователя root с помощью команды sudo wireshark .

Или же вы можете последовать общим рекомендациям и использовать утилиту tcpdump или какой-либо другой инструмент для перехвата трафика и записи данных в файл. Любые перехваченные данные могут быть проанализированы позднее с помощью приложения wireshark .

23.1.3. Минимизация трафика

В процессе перехвата сетевого трафика в течение очень коротких промежутков времени могут генерироваться тысячи пакетов. Очевидно, что такой объем данных затруднит анализ трафика. Попытайтесь выйти из этого положения, изолировав ваш сниффер в рамках сети. Предпочтительным вариантом является перехват трафика, проходящего через сетевой интерфейс изолированной виртуальной сети, находящейся под вашим полным контролем.

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

И все же более важным инструментом для минимизации трафика являются фильтры, которые будут обсуждаться в следующем разделе.

23.1.4. Перехват трафика, генерируемого утилитой ping

Я запустил сниффер и захватил все пакеты, переданные по сети в результате исполнения трех команд ping (не имеет смысла выполнять эти команды от лица пользователя root):

Root@debian7:~# ping -c2 ns1.paul.local PING ns1.paul.local (10.104.33.30) 56(84) bytes of data. 64 bytes from 10.104.33.30: icmp_req=1 ttl=64 time=0.010 ms 64 bytes from 10.104.33.30: icmp_req=2 ttl=64 time=0.023 ms --- ns1.paul.local ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1001ms rtt min/avg/max/mdev = 0.010/0.016/0.023/0.007 ms root@debian7:~# ping -c3 linux-training.be PING linux-training.be (188.93.155.87) 56(84) bytes of data. 64 bytes from antares.ginsys.net (188.93.155.87): icmp_req=1 ttl=56 time=15.6 ms 64 bytes from antares.ginsys.net (188.93.155.87): icmp_req=2 ttl=56 time=17.8 ms 64 bytes from antares.ginsys.net (188.93.155.87): icmp_req=3 ttl=56 time=14.7 ms --- linux-training.be ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2003ms rtt min/avg/max/mdev = 14.756/16.110/17.881/1.309 ms root@debian7:~# ping -c1 centos7.paul.local PING centos7.paul.local (10.104.33.31) 56(84) bytes of data. 64 bytes from 10.104.33.31: icmp_req=1 ttl=64 time=0.590 ms --- centos7.paul.local ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 0.590/0.590/0.590/0.000 ms

В общей сложности из сети было захвачено более чем 200 пакетов. Все станет гораздо очевиднее в том случае, если введете строку icmp в поле фильтра и нажмете кнопку "Применить" ("Apply").

23.1.5. Перехват трафика, генерируемого утилитой ping и клиентом dns

Работая с той же сессией захвата данных, применим отличный фильтр. Мы хотим отслеживать трафик, относящийся как к протоколу dns , так и к протоколу icmp , поэтому нам придется ввести названия двух упомянутых протоколов в поле фильтра.

Для захвата данных, относящихся к двум рассматриваемым протоколам, в поле фильтра должна быть введена строка "dns or icmp" . В случае ввода строки "dns and icmp" не будет выведено информации о каких-либо пакетах, так как не существует пакетов, относящихся к обоим упомянутыми протоколам.

При рассмотрении приведенной выше иллюстрации можно заметить, что пакеты 25 и 26 имеют исходные и целевые IP-адреса 10.104.33.30. Это объясняется тем, что клиент DNS работает на том же компьютере, что и сервер DNS.

Аналогичная ситуация наблюдается и в случае пакетов 31 и 32, ведь с помощью утилиты ping осуществляется отправка пакетов рабочей системе, на которой запущена данная утилита.

23.1.6. Определенный IP-адрес

В данном случае осуществляется фильтрация пакетов, относящихся к протоколу DNS и содержащих определенный IP-адрес. В качестве фильтра используется строка "ip.addr==10.104.33.30 and dns" . Директива and сообщает приложению о том, что следует выводить информацию о каждом пакете, соответствующем двум условиям.

Пакет 93 содержит запрос DNS , направленный на получение записи типа A домена linux-training.be. Пакет 98 содержит ответ от сервера DNS . Как вы думаете, что происходило после отправки пакета 93 и до приема пакета 98? Попытайтесь ответить на этот вопрос перед чтением следующего раздела (при работе с различными системами всегда полезно пытаться предсказывать наступающие события и проверять корректность своих предсказаний).

23.1.7. Фильтрация на основе фреймов

Корректным термином, используемым для обозначения перехваченного пакета, является термин фрейм (из-за того, что мы осуществляем перехват пакетов на уровне 2 сетевой модели OSI). Таким образом, для вывода информации о пакетах с определенными номерами, следует использовать директиву frame.number в поле фильтра.

23.1.8. Исследование содержимого пакетов

Средняя панель окна сниффера может быть раскрыта. При выборе строки в рамках данной панели вы можете увидеть соответствующие значения байт в поле нижней панели.

На иллюстрации ниже показана средняя панель окна сниффера с выбранным адресом моего ноутбука.

Учтите, что описанная выше техника отлично работает при перехвате трафика, передаваемого через один сетевой интерфейс. Если же вы перехватываете трафик, к примеру, с помощью команды tcpdump -i any , вы столкнетесь с методом перехвата пакетов "Linux cooked capture" .

23.1.9. Другие примеры фильтров

Вы можете комбинировать два описания протоколов с помощью директивы логической операции or ("ИЛИ"), расположенной между ними. На иллюстрации ниже показан способ захвата исключительно пакетов, относящихся к протоколам ARP и BOOTP (или DHCP).

А на следующей иллюстрации показан способ перехвата пакетов, относящихся к протоколу DNS и содержащих определенный IP-адрес.

23.2. Утилита tcpdump

В случае работы с интерфейсом командной строки системы перехват пакетов может осуществляться с помощью утилиты tcpdump . Ниже приведены некоторые примеры ее использования.

При использовании команды tcpdump host $ip будет выводиться информация обо всем трафике, относящимся к определенному узлу (в данном случае с IP-адресом 192.168.1.38).

Root@ubuntu910:~# tcpdump host 192.168.1.38 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes

Перехват трафика, относящегося исключительно к протоколу ssh (протокол TCP, порт 22), может осуществляться с помощью команды tcpdump tcp port $порт. Длина строк вывода урезана до 76 символов для более удобного чтения.

Root@deb503:~# tcpdump tcp port 22 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth1, link-type EN10MB (Ethernet), capture size 96 bytes 14:22:20.716313 IP deb503.local.37973 > rhel53.local.ssh: P 666050963:66605 14:22:20.719936 IP rhel53.local.ssh > deb503.local.37973: P 1:49(48) ack 48 14:22:20.720922 IP rhel53.local.ssh > deb503.local.37973: P 49:113(64) ack 14:22:20.721321 IP rhel53.local.ssh > deb503.local.37973: P 113:161(48) ack 14:22:20.721820 IP deb503.local.37973 > rhel53.local.ssh: . ack 161 win 200 14:22:20.722492 IP rhel53.local.ssh > deb503.local.37973: P 161:225(64) ack 14:22:20.760602 IP deb503.local.37973 > rhel53.local.ssh: . ack 225 win 200 14:22:23.108106 IP deb503.local.54424 > ubuntu910.local.ssh: P 467252637:46 14:22:23.116804 IP ubuntu910.local.ssh > deb503.local.54424: P 1:81(80) ack 14:22:23.116844 IP deb503.local.54424 > ubuntu910.local.ssh: . ack 81 win 2 ^C 10 packets captured 10 packets received by filter 0 packets dropped by kernel

Та же операция, но с записью захваченных данных в файл, может осуществляться с помощью команды tcpdump -w $имя_файла.

Root@ubuntu910:~# tcpdump -w sshdump.tcpdump tcp port 22 tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes ^C 17 packets captured 17 packets received by filter 0 packets dropped by kernel

С помощью команды tcpdump -r $имя_файла может быть выведено содержимое файла, созданного в предыдущем примере.

Root@ubuntu910:~# tcpdump -r sshdump.tcpdump

Множество других примеров использования рассматриваемой утилиты может быть найдено на странице руководства man tcpdump .

23.3. Практическое задание: перехват сетевого трафика

23.4. Корректная процедура выполнения практического задания: перехват сетевого трафика

1. Установите приложение wireshark в вашу систему (работающую не в виртуальной машине).

В дистрибутивах Debain/Ubuntu: aptitude install wireshark

В дистрибутивах Red Hat/Mandriva/Fedora: yum install wireshark

2. Используйте утилиту ping генерации трафика между вашим и каким-либо другим компьютером.

Ping $ip_адрес

3. Начните перехват сетевого трафика.

(sudo) wireshark

Выберите сетевой интерфейс (вероятно, eth0)

4. С помощью фильтра осуществите вывод информации исключительно о тех пакетах, которые содержат ответы на запросы от утилиты ping.

Введите "icmp" (без кавычек) в поле фильтра и нажмите кнопку "Применить" ("Apply").

5. Теперь передайте утилите ping имя домена (такое, как www.linux-training.be) и попытайтесь перехватить пакеты с запросом и ответом DNS. Какой DNS-сервер был использован? Был ли использован протокол TCP или UDP для передачи запроса и ответа?

В первую очередь запустите сниффер.

Введите "dns" в поле фильтра и нажмите кнопку "Применить" ("Apply").

Root@ubuntu910:~# ping www.linux-training.be PING www.linux-training.be (88.151.243.8) 56(84) bytes of data. 64 bytes from fosfor.openminds.be (88.151.243.8): icmp_seq=1 ttl=58 time=14.9 ms 64 bytes from fosfor.openminds.be (88.151.243.8): icmp_seq=2 ttl=58 time=16.0 ms ^C --- www.linux-training.be ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1002ms rtt min/avg/max/mdev = 14.984/15.539/16.095/0.569 ms

Окно приложения wireshark должно выглядеть аналогичным образом.

На основе информация из окна приложения wireshark можно сделать вывод о том, что запрос DNS передавался с помощью пакета UDP, после чего несложно дать ответы на поставленные вопросы.

6. Найдите закрытый вебсайт, имеющий форму запроса пароля. Попытайтесь войти на него, использовав имя пользователя "paul" и пароль "hunter2" в процессе работы сниффера. Теперь попытайтесь найти введенные имя пользователя и пароль в захваченных с помощью сниффера данных.

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

Шпионские программы представляют собой специальное программное обеспечение, способное записывать всю передаваемую по сети информацию с конкретной рабочей станции или устройства.

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

Если сведения передаются не в режиме реально времени, шпионские программы формируют отчеты, по которым удобно смотреть и анализировать информацию.

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

Классификация и способы перехвата данных по сети

Перехват информации по сети можно разделить на два вида:

  • санкционированный
  • несанкционированный

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

Существуют международные стандарты выполнения перехвата данных. Европейский институт телекоммуникационных стандартов сумел привести к единой норме ряд технических процессов (ETSI ES 201 158 «Telecommunications security; Lawful Interception (LI); Requirements for network functions»), на которых базируется перехват информации. В результате была разработана системная архитектура, которая помогает специалистам секретных служб, сетевым администраторам законно завладеть данными из сети. Разработанная структура реализации перехвата данных по сети применяется для проводной/беспроводной системы вызова голосом, а также к переписке по почте, передаче голосовых сообщений по IP, обмену информацией по SMS.

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

  • Прослушиванием интерфейса сети
  • Подключением устройства перехвата в разрыв канала
  • Созданием ветки трафика и ее дублирование на сниффер
  • Путем проведения атаки

Существуют и более сложные технологии перехвата важных сведений, позволяющие вторгаться в сетевое взаимодействие и изменять данные. Одна из таких технологий – это ложные запросы ARP. Суть способа состоит в подмене IP-адресов между компьютером жертвы и своим IP-адресом. Еще один метод с помощью которого можно выполнить перехват данных по сети – ложная маршрутизация. Он заключается в подмене IP-адреса маршрутизатора сети свои адресом. Если мошенник знает, как организована локальная сеть, в которой находится жертва, то сможет легко организовать получение информации с машины пользователя на свой IP-адрес. Захват TCP-соединения тоже служит действенным способом перехвата данных. Злоумышленник прерывает сеанс связи путем генерации и отправки на компьютер жертвы ТСР-пакетов. Далее сеанс связи восстанавливается, перехватывается и продолжается преступником вместо клиента.

Объект воздействия

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

Если говорить о киберпреступниках, то объектом воздействия с целью получения передаваемых по сети данных может стать любой пользователь или организация. При санкционированном доступе важна информативная часть полученных сведений, в то время как злоумышленника больше интересуют данные, с помощью которых можно завладеть денежными средствами или ценной информации для ее последующей продажи.

Чаще всего жертвами перехвата информации со стороны киберпреступников становятся пользователи, подключающиеся к общественной сети, например, в кафе с точкой доступа Wi-Fi. Злоумышленник подключается к веб-сессии с помощью сниффера, подменяет данные и осуществляет кражу личной информации. Подробнее о том, как это происходит, описывается в статье .

Источник угрозы

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

Незаконным перехватом данных занимаются злоумышленники. Чтобы не стать жертвой киберпреступника, нужно соблюдать некоторые рекомендации специалистов. Например, не стоит выполнять операции, требующие авторизации и передачи важных данных, в местах, где подключение происходит к общедоступным сетям. Безопаснее выбирать сети с шифрованием, а еще лучше – использовать личные 3G- LTE-модемы. При передаче личные данные советуют зашифровать, используя протокол HTTPS или личный VPN-туннель.

Защитить компьютер от перехвата сетевого трафика можно с помощью криптографии, антиснифферов; снизит риски коммутируемый, а не беспроводной доступ к сети.

В настоящее время также очень популярными стали публичные сети Wi-Fi. Они есть в ресторанах, спортивных залах, в торговых центрах, в метро, в отелях, в частных больницах и поликлиниках, в апартаментах и кондоминиумах — их можно найти практически везде, где собирается довольно много людей.

У этих сетей есть особенность — часто это открытые сети Wi-Fi для подключения к которым не требуется пароль. Есть ли какие-то дополнительные правила безопасности для работы с такими сетями?

Да, при использовании открытой Wi-Fi сетью нужно хорошо понимать, что:

  • все данные передаются радиоволнами, то есть в отличие от провода, к которому далеко не каждый может получить доступ, радиоволны могут перехватываться кем угодно, кто находится в диапазоне досягаемости
  • в открытых сетях данные не зашифрованы

С первым пунктом, думаю, всё понятно: если кто-то с компьютером и Wi-Fi картой находится достаточно близкой, то он может захватывать и сохранять весь трафик, передаваемый между беспроводной Точкой Доступа и всеми её клиентами.

Что касается второго пункта, то нужно пояснить по поводу шифрования передаваемых данных. Например, если вы открываете какой-либо сайт, который использует протокол HTTPS (то есть безопасный протокол), например сайт , то передаваемые данные на этот сайт и с этого сайта к вам зашифрованы. Если вы открываете сайт работающий по протоколу HTTP, то все передаваемые данные: какие страницы вы посетили, какие комментарии оставили, какие кукиз получил ваш веб-браузер — эти данные передаются в незашифрованном виде. Так вот, если вы подключены к Wi-Fi Точке Доступа которая требует ввод пароля, то передаваемый трафик шифруется ещё раз. То есть даже если вы открываете сайт на протоколе HTTPS, то передаваемый трафик шифруется два раза (первый раз при передаче от веб-браузера до веб-сервера и в обратном направлении, второй раз при передаче от вашего устройства и до Точки Доступа, а также в обратном направлении). А если вы открываете сайт на протоколе HTTP, то передаваемый трафик шифруется только один раз (только при передаче от вашего устройства до Точки Доступа и обратно).

Но открытые точки доступа не шифруют трафик. Из этого следует: если вы используете открытую точку доступа и открываете сайт, работающий на протоколе HTTP, значит ваши данные передаются в открытом виде и кто угодно рядом с вами может их захватить и сохранить. Если вы открываете сайт на протоколе HTTPS, то эти данные зашифрованы, тем не менее, всё равно видно, какие именно сайты вы открывали (хотя не видно, какие именно страницы и что вы вводили, например, какие оставили комментарии).

Итак: нужно помнить, что открытые беспроводные сети подвержены перехвату информации.

Перехват трафика в открытых Wi-Fi сетях

Для успешной атаке нужен компьютер на Linux (например, с Kali Linux или с BlackArch), а также Wi-Fi карта из .

Начнём с того, что посмотрим имена беспроводных интерфейсов:

Как можно увидеть, у меня несколько беспроводных интерфейсов, я буду использовать wlp0s20f0u2 .

Переводим беспроводной интерфейс в режим монитора:

Sudo ip link set ИНТЕРФЕЙС down sudo iw ИНТЕРФЕЙС set monitor control sudo ip link set ИНТЕРФЕЙС up

В предыдущих командах вместо ИНТЕРФЕЙС нужно вписать то имя, которое беспроводной интерфейс имеет в вашей системе. Например, для wlp0s20f0u2 команды выглядят так:

Sudo ip link set wlp0s20f0u2 down sudo iw wlp0s20f0u2 set monitor control sudo ip link set wlp0s20f0u2 up

Откройте файл с захваченными данными в Wireshark.

Для выделения разных данных нам понадобятся фильтры Wireshark. Здесь я покажу пример использования только некоторых фильтров, рекомендуется изучить большую подборку полезных фильтров Wireshark .

Для оценки качества захвата, можно начать с фильтров, которые выводят результаты анализа TCP протокола.

Например:

Tcp.analysis.duplicate_ack_num == 1

Этот фильтр выводит информацию о фреймах с флагом ACK, которые являются дублями. Большое количество таких фреймов может говорить о проблемах связи между Клиентом и Точкой Доступа.

Фильтр показа фреймов для которых не захвачен предыдущий сегмент:

Tcp.analysis.ack_lost_segment

Это нормально в начале захвата данных — поскольку информация перехватывается не с самого начала. Но если эта ошибка часто возникает в дальнейшем, значит вы находитесь слишком далеко от Точки Доступа или Клиентов и вы не захватывает часть данных, которые они передают.

Для показа фреймов, которые являются ретрансмиссией (отправляются повторно):

Tcp.analysis.retransmission

Большое количество таких фреймов может говорить о том, что между Клиентом и ТД плохая связь и им часто приходится отправлять повторно одни и те же данные.

С помощью фильтра

Можно увидеть ARP трафик — с его помощью удобно анализировать, сколько всего устройств в данный момент подключено к локальной сети, какие у них IP адреса и какие MAC адреса. .

С помощью фильтра

можно увидеть все отправленные DNS запросы.

Благодаря этим запросам можно узнать, какие сайты посещали пользователи (даже если эти сайты используют HTTPS!), а также к каким онлайн сервисам были сделаны запросы.

Например, на скриншоте можно увидеть адреса онлайн кинотеатра Netflix, Facebook, различных сервисов Google.

Для фильтрации HTTP трафика фильтр:

Здесь можно узнать множество интересной информации. Например, можно увидеть запросы к сервисам и передаваемые данные, в том числе API ключи, идентификаторы устройств и прочее:

Можно увидеть посещённые URL адреса со всеми передаваемыми параметрами:

Видны загруженные и открытые в Интернете файлы:

Вы можете сохранить любой переданный файл. Для этого выделите мышкой пакет, который его содержит (1), затем в средней панели, которая содержит подробную информацию, пролистните в самый низ, чтобы найти поле с данными и кликните на него правой кнопкой мыши, чтобы вызвать контекстное меню (2), в контекстном меню выберите Export Selected Packet Bytes (3) — Экспортировать байты выбранного пакета:

Введите имя файла, выберите расположение и сохраните его.

Кто-то обновляет Windows:

Также видны установленные пользователю кукиз или переданные им кукиз:

С помощью фильтра

Http.cookie

можно увидеть HTTP запросы, в которых передавались кукиз.

А с помощью фильтра

Http.set_cookie

можно увидеть запросы, в которых сервер установил кукиз в браузер пользователя.

Соседи скачивают странные торренты:

Переданные методом POST данные также видны:

Для поиска любых переданных изображений:

Http.content_type contains "image"

Для поиска определённых видов изображений:

Http.content_type contains "gif" http.content_type contains "jpeg" http.content_type contains "png"

Для поиска файлов определённого типа:

Http.content_type contains "text" http.content_type contains "xml" http.content_type contains "html" http.content_type contains "json" http.content_type contains "javascript" http.content_type contains "x-www-form-urlencode" http.content_type contains "compressed" http.content_type contains "application"

Поиска в Wireshark запросов на получения файлов определённого типа. Например, для поиска переданных ZIP архивов:

Http.request.uri contains "zip"

Вместо http.request.uri для большей точности можно использовать фильтры http.request.uri.path или http.request.uri.query , например, для поиска запросов на скачивание файлов JPG (ссылки на картинки):

Http.request.uri.path contains "jpg"

Фильтр, который показывает только данные, переданные методом POST:

Http.request.method == "POST"

Фильтр, который показывает только данные, переданные методом GET:

Http.request.method == "GET"

Поиск запросов к определённому сайту (хосту):

Http.host == ""

Поиск запросов к определённому сайту по части имени:

Http.host contains "здесь.частичное.имя"

Заключение

Сейчас количество приложений и сайтов, которые не используют шифрование, стремительно уменьшается. Поэтому опасность такого перехвата с каждым годом снижается. Тем не менее она есть.

Даже сайты, который используют HTTPS, могут непроизвольно выдавать данные. Например:

Видно, что от пользователя данные на booking.com передаются в незашифрованном виде, поэтому можно перехватить эту ссылку.

Приложение iPhone постоянно загружает какие-то (аудио?) файлы не используя безопасное соединение:

Популярная (в некоторых регионах) qq.com или не использует шифрование, либо использует свой собственный алгоритм:

Гарантированной защитой от такого перехвата является использование доверенного VPN сервиса. Надёжным VPN сервисом можно считать тот, который вы настроили сами, либо VPN вашей корпоративной сети.