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

Особенности

Что может Intercepter-NG

Главная задача Intercepter-NG – выполнение атаки человек-посередине. В практическом смысле, атака человек-посередине (её ещё называют атакой посредника) заключается в возможности просматривать передаваемые другими пользователями данные в локальной сети. Среди этих данных могут быть логины и пароли от сайтов. Также передаваемые данные можно не только анализировать и сохранять, но и изменять.

Чтобы описать техническую суть этой атаки, представьте себе локальную сеть. Такой локальной сетью могут быть несколько компьютеров в вашей квартире, которые подключены к роутеру

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

В данной ситуации роутер является шлюзом.

Благодаря атаке, называемой ARP спуфингом, компьютер начинает считать шлюзом не роутер, а компьютер атакующего. Атакующий получает запросы от «жертвы» и передаёт их в пункт назначения (например, запрашивает содержимое веб-сайта в Интернете), получив ответ от пункта назначения, он направляет его «жертве». В этой ситуации атакующий становится посредником – отсюда другое название атаки человек-посередине – «атака посредника». Для реализации атаки ARP спуфинг необязательно понимать её детали. Но если вам интересно, почему это происходит, то в вы найдёте подробное описание этого процесса.

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

  • Перехватывать логины и пароли для входа на веб-сайты
  • Восстанавливать переданные данные (файлы)
  • Перехватывать сообщения некоторых мессенджеров
  • Показывать посещённые пользователем адреса

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

Всё это прекрасно работает только для незашифрованных данных. Если данные зашифрованы (HTTPS), то их невозможно проанализировать без дополнительных действий.

Прежде чем подключиться к веб-сайту, компьютер обращается к DNS (серверу имён), чтобы узнать его IP адрес. Intercepter-NG умеет подменять ответы DNS (делать DNS спуфинг), что позволяет перенаправлять «жертву» на фальшивые копии сайтов для последующих атак.

Это далеко не все возможности программы. С другими возможностями мы познакомимся далее в этой инструкции.

Карты покрытия операторов

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

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

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

Точность карт покрытия мала, что нужно учитывать при их изучении. Максимальная точность достигается в пределах населённых пунктов. Но уже в паре километров от них сила сигнала может упасть до нуля, что на картах не указывается. Поэтому, задумываясь о смене сотового оператора, необходимо изучить отзывы тех, кто уже пользуется услугами выбранной компании – опросите соседей, родственников, знакомых и друзей, проживающих в интересующей вас местности.

Разделы с картами покрытия присутствуют на сайтах всех операторов, в том числе виртуальных. К последним относятся Тинькофф Мобайл, Danycom и СберМобайл, работающих на базовых станциях Теле2. Их зоны покрытия совпадают на 100%, ведь компании используют одни и те же вышки. Некоторые виртуальные операторы работают на вышках Билайна – типичным тому примером является Спартак Мобайл. Поэтому покрытие у Спартака и Билайна одинаковое.

Применение

Разумеется, в первую очередь, данное понятие имеет то применение, о котором шла речь выше, то есть хаккерские атаки и незаконное получение пользовательских данных.

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

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

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

Рис. 3. Такие приспособления помогают чинить компьютерные сети

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

Теперь переходим к самому интересному – обзору программ-снифферов.

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

Их изучением и займемся.

РАЗНЫЕ ПОЛЕЗНОСТИ:


При работе с многими веб-приложениями и анализе их логики достаточно часто встречаются данные, передаваемые в закодированном виде, а именно Base64. Encode поможет тебе раскодировать эти данные и посмотреть, что же именно в них хранится. Возможно, подставив кавычку, закодировав их обратно в Base64 и подставив в URL исследуемого сайта, ты получишь заветную ошибку выполнения запроса к базе данных.


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

БЕСПРОВОДНЫЕ СЕТИ:

Wifi AnalyzerОф сайт.


Встроенный менеджер беспроводных сетей не отличается информативностью. Если нужно быстро получить полную картину о находящихся рядом точках доступа, то утилита Wifi Analyzer — отличный выбор. Она не только покажет все находящиеся рядом точки доступа, но и отобразит канал, на котором они работают, их MAC-адрес и, что важнее всего, используемый тип шифрования (увидев заветные буквы «WEP», можно считать, что доступ в защищенную сеть обеспечен). Помимо этого, утилита идеально подойдет, если нужно найти, где физически находится нужная точка доступа, благодаря наглядному индикатору уровня сигнала.


Эта утилита, как заявляет ее разработчик, может быть полезна, когда беспроводная сеть под завязку забита клиентами, а именно в этот момент нужен хороший коннект и стабильная связь. WiFiKill позволяет отключить клиентов от интернета как выборочно, так и по определенному критерию (к примеру, возможно постебаться над всеми яблочниками). Программа всего-навсего выполняет атаку ARP spoofing и перенаправляет всех клиентов на самих себя. Этот алгоритм до глупости просто реализован на базе iptables. Такая вот панель управления для беспроводных сетей фастфуда.

Как работает сетевой сниффинг

Анализатор пакетов, подключенный к любой сети, перехватывает все данные, передаваемые по этой сети.

В локальной сети (LAN) компьютеры обычно обмениваются данными напрямую с другими компьютерами или устройствами в сети. Всё, что связано с этой сетью, подвергается воздействию всего этого трафика. Компьютеры запрограммированы на игнорирование всего сетевого трафика, не предназначенного для этого.

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

После получения сетевых данных программное обеспечение выполняет следующие действия:

  • Содержимое или отдельные пакеты (разделы сетевых данных) записываются.
  • Некоторое программное обеспечение записывает только раздел заголовка пакетов данных для экономии места.
  • Захваченные данные сети декодируются и форматируются, чтобы пользователь мог просматривать информацию.
  • Анализаторы пакетов анализируют ошибки в сетевом взаимодействии, устраняют неполадки сетевых подключений и восстанавливают цельность потоков данных, предназначенных для других компьютеров.
  • Некоторое программное обеспечение для поиска в сети извлекает конфиденциальную информацию, такую как пароли, PIN-коды и личную информацию.

Виды анализаторов трафика

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

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

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

Еще один тип программ работает с большим каналом передачи данных, при этом вредитель может каждый день генерировать до 10 мегабайтовых протоколов.

МАНИПУЛЯЦИИ С ТРАФИКОМ:

Основанный на tcpdump сниффер честно логирует в pcap-файл все данные, которые далее можно изучить с помощью привычных утилит вроде Wireshark или Network Miner. Так как никакие возможности для MITM-атак в нем не реализованы, это скорее инструмент для анализа своего трафика. К примеру, это отличный способ изучить то, что передают программы, установленные на твой девайс из сомнительных репозиториев.


Если говорить о боевых приложениях для Android, то одним из самых нашумевших является FaceNiff, реализующий перехват и внедрение в перехваченные веб-сессии. Скачав APK-пакет с программой, можно практически на любом Android-смартфоне запустить этот хек-инструмент и, подключившись к беспроводной сети, перехватывать аккаунты самых разных сервисов: Facebook, Twitter, «ВКонтакте» и так далее — всего более десяти. Угон сессии осуществляется средствами применения атаки ARP spoofing, но атака возможна только на незащищенных соединениях (вклиниваться в SSL-трафик FaceNiff не умеет). Чтобы сдержать поток скрипткидисов, автор ограничил максимальное число сессий тремя.

l
Если создатель FaceNiff хочет за использование денежку, то DroidSheep — это полностью бесплатный инструмент с тем же функционалом. Правда, на официальном сайте ты не найдешь дистрибутива (это связано с суровыми законами Германии по части security-утилит), но его без проблем можно найти в Сети. Основная задача утилиты — перехват пользовательских веб-сессий популярных социальных сетей, реализованный спомощью все того же ARP Spoofing’а. А вот с безопасными подключениями беда: как и FaceNiff, DroidSheep наотрез отказывается работать с HTTPS-протоколом.


Эта утилита также демонстрирует небезопасность открытых беспроводных сетей, но несколько в другой плоскости. Она не перехватывает пользовательские сессии, но позволяет с помощью спуфинг-атаки пропускать HTTP-трафик через себя, выполняя с ним заданные манипуляции. Начиная от обычных шалостей (заменить все картинки на сайте троллфейсами, перевернуть все изображения или, скажем, подменив выдачу Google) и заканчивая фишинговыми атаками, когда пользователю подсовываются фейковые страницы таких популярных сервисов, как facebook.com, linkedin.com, vkontakte.ru и многих других.


Если спросить, какая хак-утилита для Android наиболее мощная, то у Anti, пожалуй, конкурентов нет. Это настоящий хакерский комбайн. Основная задача программы — сканирование сетевого  периметра. Далее в бой вступают различные модули, с помощью которых реализован целый арсенал: это и прослушка трафика, и выполнение MITM-атак, и эксплуатация найденных уязвимостей. Правда, есть и свои минусы. Первое, что бросается в глаза, — эксплуатация  уязвимостей производится лишь с центрального сервера программы, который находится в интернете, вследствие чего о целях, не имеющих внешнего IP-адреса, можно забыть.

Снифферинг – что это такое?

Анализатор проходящего трафика сети, или «сниффер» (от английского слова to sniff – «нюхать») – компьютерная программа для перенаправления (перехвата) пакетных данных с возможностью их декодирования и анализа. Снифферинг (перехват данных) особенно популярен в людных местах (в ресторанах, на вокзалах, в торговых центрах и просто на улице). Везде, где есть общедоступная сеть вайфай, ничего не подозревающий пользователь интернета может стать жертвой злоумышленника

С виду мошенник может быть таким же беззаботным посетителем кафе, внимание которого приковано к экрану личного ноутбука

В то же время, на устройстве преступника активировано приложение-сниффер, включена точка доступа wifi с именем, созвучным названию заведения или публичного места (к примеру, macdonalds). Когда ничего не подозревающий пользователь подключается к одной из доступных общественных сетей, он запросто может стать потенциальной жертвой злоумышленника. Весь проходящий трафик перехватывается сниффером, и анализируются на предмет имён и паролей пользователя платёжных систем, номеров кредитных карт, паролей подтверждения оплаты, и так далее. Фактически перехватывается весь ваш трафик, но при условии, что вы подключились именно к псевдо-сети мошенника.

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

  • «Прослушивание» сети, подключившись к сетевому интерфейсу (свободному порту хаба или коммутатора). Данный метод будет эффективен лишь при использовании в сегменте сети обычных хабов (концентраторов) вместо коммутаторов (свитчей). Дело в том, что хаб – это обычный разветвитель, через каждый порт которого проходят все пакеты, а коммутаторы – интеллектуальные устройства, где поток данных может быть разделён на различные каналы, поэтому общую картину передаваемых данных в них, при подключению к одному порту, не получить;
  • Подключение сниффера в разрыв сетевого канала;
  • Ответвление (программное или аппаратное) сетевого трафика с направлением его копии на сниффер (Network tap);
  • Анализ побочных электромагнитных излучений и восстановление прослушиваемого трафика;
  • Атака на канальном (MAC-spoofing) или сетевом уровне (IP-spoofing), приводящую к незаметному перенаправлению трафика жертвы или всего трафика сегмента на сниффер с последующим возвращением трафика в надлежащий адрес.

Анализ трафика в открытых Wi-Fi сетях

В процессе работы airodump-ng будет создан файл с расширением .cap, например, openap-01.cap.

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

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

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

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

Например:

tcp.analysis.duplicate_ack_num == 1

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

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

tcp.analysis.ack_lost_segment

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

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

tcp.analysis.retransmission

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

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

arp

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

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

dns

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

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

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

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

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 == "<URL>"

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

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

Подключение кабеля или переходника с VGA на HDMI − как это сделать правильно

Почему возможна атака ARP-spoofing

Каждое устройство, подключённое к сети, имеет MAC-адрес. Этот адрес присвоен любому сетевому оборудованию (сетевые карты, Wi-Fi адаптеры). Роутеры, телефоны и любые другие устройства, подключающиеся к сети, также имеют MAC-адрес, поскольку имеют встроенные сетевые карты. MAC-адрес состоит из шести пар символов, разделённых двоеточием или тире. В используемых символах присутствуют все цифры и латинские буквы от a до f. Пример MAC-адреса: 52:54:00:a6:db:99. Для подключения двух устройств, например, вашего компьютера к шлюзу, нужно знать не только IP адрес, но и MAC-адрес. Для определения MAC-адреса шлюза используется ARP (англ. Address Resolution Protocol – протокол определения адреса) – протокол в компьютерных сетях, предназначенный для определения MAC-адреса по известному IP-адресу.  IP-адрес роутера (шлюз по умолчанию), известен или получается по DHCP.

Рассмотрим суть функционирования ARP на простом примере. Компьютер А (IP-адрес 10.0.0.1) и компьютер Б (IP-адрес 10.22.22.2) соединены сетью Ethernet. Компьютер А желает переслать пакет данных на компьютер Б, IP-адрес компьютера Б ему известен. Однако сеть Ethernet, которой они соединены, не работает с IP-адресами. Поэтому компьютеру А для осуществления передачи через Ethernet требуется узнать адрес компьютера Б в сети Ethernet (MAC-адрес в терминах Ethernet). Для этой задачи и используется протокол ARP. По этому протоколу компьютер А отправляет широковещательный запрос, адресованный всем компьютерам в одном с ним широковещательном домене. Суть запроса: «компьютер с IP-адресом 10.22.22.2, сообщите свой MAC-адрес компьютеру с МАС-адресом (напр. a0:ea:d1:11:f1:01)». Сеть Ethernet доставляет этот запрос всем устройствам в том же сегменте Ethernet, в том числе и компьютеру Б. Компьютер Б отвечает компьютеру А на запрос и сообщает свой MAC-адрес (напр. 00:ea:d1:11:f1:11) Теперь, получив MAC-адрес компьютера Б, компьютер А может передавать ему любые данные через сеть Ethernet.

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

Как мы только что увидели, ARP включает в себя запрос и ответ. MAC-адрес из ответа записывается в таблицу MAC/IP. При получении ответа он никак не проверяется на подлинность. Более того, даже не проверяется, был ли сделан запрос. Т.е. на целевые устройства можно прислать сразу ARP-ответ (даже без запроса), с подменёнными данными, и эти данные попадут в таблицу MAC/IP и они будут использоваться для передачи данных. Это и есть суть атаки ARP-spoofing, которую иногда называют ARP травлением, травлением ARP кэша.

АУДИТ ВЕБ-ПРИЛОЖЕНИЙ:


Манипулировать HTTP-запросами с компьютера — плевое дело, для этого есть огромное количество утилит и плагинов для браузеров. В случае со смартфоном все немного сложнее. Отправить кастомный HTTP-запрос с нужными тебе параметрами, например нужной cookie или измененным User-Agent, поможет HTTP Query Builder. Результат выполнения запроса будет отображен в стандартном браузере.


Если сайт защищен паролем с помощью Basic Access Authentication, то проверить его надежность можно с помощью утилиты Router Brute Force ADS 2. Изначально утилита создавалась для брутфорса паролей на админки роутера, но понятно, что она может быть использована и против любого другого ресурса с аналогичной защитой. Утилита работает, но явно сыровата. К примеру, разработчиком не предусмотрен грубый перебор, а возможен только брутфорс по словарю.


Наверняка ты слышал о такой программе вывода из строя веб-серверов, как Slowloris. Принцип ее действия — создать и удерживать максимальное количество подключений с удаленным  веб-сервером, таким образом не давая подключиться к нему новым клиентам. Так вот, AnDOSid — аналог Slowloris прямо в Android-девайсе! Грустно, но двухсот подключений зачастую достаточно, чтобы обеспечить нестабильную работу каждому четвертому веб-сайту на Apache.

Оцените статью
Рейтинг автора
5
Материал подготовил
Андрей Измаилов
Наш эксперт
Написано статей
116
Добавить комментарий