Хакеры используют для перенаправления трафика. Перенаправление SSH и HTTP трафика

Методы перехвата сетевого трафика

Прослушивание сети с помощью программ сетевых анализаторов, является первым, самым простым способом перехвата данных.

Для защиты от прослушивания сети применяются специальные программы, например, AntiSniff, которые способны выявлять в сети компьютеры, занятые прослушиванием сетевого трафика.

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

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

Чтобы перехватить и замкнуть на себя процесс сетевого взаимодействия между двумя хостами А и В злоумышленник может подменить IР-адреса взаимодействующих хостов своим IP-адресом, направив хостам А и В фальсифицированные сообщения ARP (Address Resolution Protocol – Протокол разрешения адресов).

Рис. 1 Ложные запросы ARP

Посмотрим, как хакер может воспользоваться протоколом ARP для выполнения перехвата сетевого взаимодействия между хостами А и В.

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

  • Злоумышленник определяет МАС-адреса хостов А и В, например, с помощью команды nbtstat из пакета W2RK.
  • Злоумышленник отправляет на выявленные МАС-адреса хостов А и В сообщения, представляющие собой фальсифицированные ARP-ответы на запросы разрешения IP-адресов хостов в МАС-адреса компьютеров. Хосту А сообщается, что IР-адресу хоста В соответствует МАС-адрес компьютера злоумышленника; хосту В сообщается, что IP-адресу хоста А также соответствует МАС-адрес компьютера злоумышленника.
  • Хосты А и В заносят полученные МАС-адреса в свои кэши ARP и далее ис-пользуют их для отправки сообщений друг другу. Поскольку IР-адресам А и В соответствует МАС-адрес компьютера злоумышленника, хосты А и В, ничего не подозревая, общаются через посредника, способного делать с их посланиями что угодно.

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

В сетях UNIX такого рода атаку ложными запросами ARP можно реализовать с помощью системных утилит отслеживания и управления сетевым трафиком, например, arpredirect. К сожалению, в сетях Windows такие надежные утилиты, по-видимому, не реализованы. Например, на сайте NTsecurity можно загрузить утилиту GrabitAII, представленную как средство для перенаправления трафика между сетевыми хостами. Однако элементарная проверка работоспособности утилиты GrabitAII показывает, что до полного успеха в реализации ее функций еще далеко.

Чтобы перехватить сетевой трафик, злоумышленник может подменить реальный IP-адрес сетевого маршрутизатора своим IP-адресом, выполнив это, например, с помощью фальсифицированных ICMP-сообщений Redirect. Полученное сообщение Redirect хост А должен, согласно документу RFC-1122, воспринять как ответ на дейтаграмму, посланную другому хосту, например, В. Свои действия на сообщение Redirect хост А определяет, исходя из содержимого полученного сообщения Redirect, и если в Redirect задать перенаправление дейтаграмм из А в В по новому маршруту, именно это хост А и сделает.

Рис. 2 Ложная маршрутизация

Для выполнения ложной маршрутизации злоумышленник должен знать некоторые подробности об организации локальной сети, в которой находится хост А, в частности, IP-адрес маршрутизатора, через который отправляется трафик из хоста А в В. Зная это, злоумышленник сформирует IP-дейтаграмму, в которой IP-адрес отправителя определен как IP-адрес маршрутизатора, а получателем указан хост А. Также в дейтаграмму включается сообщение ICMP Redirect с полем адреса нового маршрутизатора, установленным как IP-адрес компьютера злоумышленника. Получив такое сообщение, хост А будет отправлять все сообщения по IP-адресу компьютера злоумышленника.

Для защиты от такой атаки следует отключить (например, с помощью брандмауэра) на хосте А обработку сообщений ICMP Redirect, а выявить IP-адрес компьютера злоумышленника может команда tracert (в Unix это команда tracerout). Эти утилиты способны найти появившийся в локальной сети дополнительный, непредусмотренный при инсталляции, маршрут, если конечно администратор сети проявит бдительность.

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

Практическую реализацию всех криптографических методов защиты обмена информацией предоставляют сети VPN (Virtual Private Network – Виртуальные частные сети).

Перехват TCP-соединения

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

Для выполнения атак перехвата TCP-соединения создано несколько эффективных утилит, однако все они реализованы для платформы Unix, и на сайтах Web эти утилиты представлены только в виде исходных кодов. Таким образом, от атак методом перехвата TCP-соединения проку не много.

Протокол TCP (Transmission Control Protocol – Протокол управления передачей) является одним из базовых протоколов транспортного уровня OSI, позволяющим устанавливать логические соединения по виртуальному каналу связи. По этому каналу передаются и принимаются пакеты с регистрацией их последовательности, осуществляется управление потоком пакетов, организовывается повторная передача искаженных пакетов, а в конце сеанса канал связи разрывается. Протокол TCP является единственным базовым протоколом из семейства TCP/IP, имеющим продвинутую систему идентификации сообщений и соединения.

Обзор программных пакетных снифферов

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

Обычно окно любого сниффера с графическим интерфейсом состоит их трех областей. В первой из них отображаются итоговые данные перехваченных пакетов. Обычно в этой области отображается минимум полей, а именно: время перехвата пакета; IP-адреса отправителя и получателя пакета; MAC-адреса отправителя и получателя пакета, исходные и целевые адреса портов; тип протокола (сетевой, транспортный или прикладного уровня); некоторая суммарная информация о перехваченных данных. Во второй области выводится статистическая информация об отдельном выбранном пакете, и, наконец, в третьей области пакет представлен в шестнадцатеричном виде или в символьной форме - ASCII.

Практически все пакетные снифферы позволяют производить анализ декодированных пакетов (именно поэтому пакетные снифферы также называют пакетными анализаторами, или протокольными анализаторами). Сниффер распределяет перехваченные пакеты по уровням и протоколам. Некоторые анализаторы пакетов способны распознавать протокол и отображать перехваченную информацию. Этот тип информации обычно отображается во второй области окна сниффера. К примеру, любой сниффер способен распознавать протокол TCP, а продвинутые снифферы умеют определять, каким приложением порожден данный трафик. Большинство анализаторов протоколов распознают свыше 500 различных протоколов и умеют описывать и декодировать их по именам. Чем больше информации в состоянии декодировать и представить на экране сниффер, тем меньше придется декодировать вручную.

Одна из проблем, с которой могут сталкиваться анализаторы пакетов, - невозможность корректной идентификации протокола, использующего порт, отличный от порта по умолчанию. К примеру, с целью повышения безопасности некоторые известные приложения могут настраиваться на применение портов, отличных от портов по умолчанию. Так, вместо традиционного порта 80, зарезервированного для web-сервера, данный сервер можно принудительно перенастроить на порт 8088 или на любой другой. Некоторые анализаторы пакетов в подобной ситуации не способны корректно определить протокол и отображают лишь информацию о протоколе нижнего уровня (TCP или UDP).

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

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

    Направляются обычно на информационные серверы предприятия, функционирование которых является критически важным условием для работоспособности всего предприятия. Чаще всего объектами DOS-атак становятся основные веб-серверы, файловые и почтовые серверы предприятия, а также корневые серверы системы DNS.

    Ложных DNS-oтветы.

    Типы атак. Перехват и перенаправление трафика

    Атаки отказа в обслуживании (DoS).

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

    Ложных DNS-oтветы.

    Типы атак. Ложные DNS ответы

    Атаки отказа в обслуживании (DoS).

    Перехват и перенаправление трафика.

    Ложных DNS-oтветы. Задача злоумышленника состоит в получении доступа к корпоративному серверу. Для этого ему нужно завладеть именем и паролем авторизованного пользователя корпоративной сети. Эту информацию он решает получить путем ответвления потока данных, которые корпоративный клиент посылает корпоративному серверу.

    Внедрение вредоносных программ. Троянские программы

Троянские программы, или трояны (trojan) - это разновидность вредоносных программ, которые наносят ущерб системе, маскируясь под какие-либо полезные приложения.

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

    Внедрение вредоносных программ. Черви

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

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

Атакующий блок состоит из нескольких модулей (векторов атаки), каждый из которых рассчитан на поражение конкретного типа уязвимости. Этот блок открывает «входную дверь» атакуемого хоста и передает через нее свою копию.

Блок поиска целей (локатор) собирает информацию об узлах сети, а затем на основании этой информации определяет, какие из исследованных узлов обладают теми уязвимостями, для которых хакер имеет средства атаки.

    Внедрение вредоносных программ. Вирусы

Вирус (virus) - это вредоносный программный фрагмент, который может внедряться в другие файлы.

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

В этой статье мы рассмотрим с тобой атаки типа Man-in-the-Middle, а точнее метод
перенапраления SSH- и HTTP- трафика с помощью атаки Man in the Middle. Не будем тянуть кота за хвост, а перейдем к делу.

Man in the Middle (в кратце MitM, с русского языка просто - "атака посредника" или "человек
посередине") - это такой вид атаки, основанный на перенаправлении трафика между двумя машинами для перехвата информации - дальнейшего ее изучения, уничтожения или модификации. Итак, первое, что нам нужно - пакет dsniff (ссылку на пакет ты увидишь в конце статьи). Почему именно он? Да потому, что этот пакет имеет в себе все необходимые утилиты, включая sshmitm (перенаправление SSH-трафика) и httpmitm (перенаправление HTTP-трафика), которые умеют обходить следующую следующую схему безопасности: насколько тебе известно, протоколы с шифрованием данных довольно-таки "секурны" (шифрация в помощь:)) и не позволяют проводить атаки "поверх" сетевого уровня. Ключ шифрования хакеру неизвестен - данные расшифровать невозможно и вставить команду тоже. Все бы вроде ничего, да вот как
раз таки программы MitM-атак (sshmitm и httpmitm) из пакета dsniff способны обойти данную систему безопасности (обойти можно практически все). Делается это все по следующему принципу:
промежуточный хост получает запрос от клиента, "сказав" ему, что он и есть сервер, затем подключаясь к реальному серверу.
Второе, что нам понадобится - прямые руки, четвертое - самое главное - желание, ну и, конечно, жертва, то есть компьютер, который будем атаковать.

Перенаправление SSH-трафика

После подготовки инструментария, ты понял, что к чему и почему:). Доставай sshmitm - сейчас мы будем перенаправлять SSH-трафик (все, что не понял с теоретической частью - читай выше)
с помощью нее, используя недостатки сегодняшнего PKI (public key infrastructure - схема управления ключами, основанная на
методах несимметричной криптографии). Давай рассмотрим синтаксис
sshmitm:

sshmitm [-d] [-I] [-p port] host

D
разрешить отладочный вывод (то есть более расширенный режим)

I
перехват сеансов

P port
порт для прослушивания

host
адрес удаленного хоста, сеансы которого будут перехватываться

port
порт на удаленном хосте

Все вроде просто и со вкусом - ничего сложного нет:). Начнем реализовать атаку!

# sshmitm server.target.gov // указываем свой SSH-сервер
sshmitm: relaying to server server.target.gov

Так как мы не имеем реального SSH-ключа, то командный интерпретатор атакованного
выведет запрос о проверке host-ключа, все это будет выглядить примерно так:

clientmachine$ server.target.gov
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
Please contact your system administrator.

И тогда пользователь будет решать - подключаться или нет. Если да - то мы получим полный контроль над SSH-сеансом.
НО! Если юзверь ни разу не подключался к той тачке, может быть выдано следующее сообщение:

The authenticity of host "server.target.gov" can"t be established
RSA key fingerprint is
bla:bla:bla;bla;bla........
Are you sure you want ti continue connecting (yes/no)?

Тут у юзверя тоже есть два выбора - коннектиться или нет. Если да - то мы перехватили сеанс, если нет - то увы... :(.
В общем-то, атака прошла успешно, если пользователь приконнектился, а sshmitm в свою очередь запишет все пассы и логины, причем очень читабельно 🙂
Естественно, это не единственный перехватчик SSH-сеансов, но познакомившись с этим, ты без проблем освоишь и другой 🙂

Перенаправление HTTP-трафика

Сейчас мы будем перенаправлять HTTP-трафик. Опять таки, нам понадобится уже раннее подобранный инструмент: httpmitm, который прослушивает 80- (HTTP -) и 443- (HTTPS -) порты, перехватывает WEB-запросы, потом подключается к серверу и пересылает запросы компьютеру-клиенту. Также программа генерирует SSL-ключи и SSL-сертификаты с помощью OpenSSL. Затем, после попытки
приконнектится к сайту (target.gov), браузер проверит SSL-сертификат. Так как сертификаты совпадать не будут, то браузер юзверя предупредит о
неправильном SSL-сертификате. Со стороны взломщика это будет выглядеть примерно так:

#webmitm -d
webmitm: relaying transparently
webmitm: new connection from
GET [ссылка]/uzerz.php?user=hellknights&password=neskaju1qwerty HTTP/[версия]
Connection: [тип]
Host: www.target.gov
User-Agent: [информация о системе, браузере]
[итд, итд, итд]
Cookie: [кукисы]

Вот так все это выглядит со стороны -
перехватывается SSL-коннект, схватив незашифрованные данные.

Заключение

В этой статье мы рассмотрели с тобой перенаправление SSH- и HTTP- трафика, с помощью атаки Man in the Middle - четко, подробно, коротко. Другие программы перенаправления HTTP- и SSH-
трафика с помощью MitM ты освоишь быстро, если освоил и эти:)). Если, что-то было непонятно - то.

Прослушивание коммутируемых сетей

Изучение современных методов

Многие современные атаки выполняются так называемыми "скрипт киддиз" (script kiddies). Это пользователи, отыскивающие сценарии эксплойтов в интернете и запускающие их против всех систем, которые только можно найти. Эти нехитрые способы атак не требуют специальных знаний или инструкций.

Однако существуют и другие методы, основанные на более глубоком понимании работы компьютеров, сетей и атакуемых систем. В данном разделе мы познакомимся с такими методами - с прослушиванием (снифингом, от англ. sniffing) коммутируемых сетей и имитацией IP-адреса (IP-spoofing).

Прослушивание, или снифинг (sniffing), используется хакерами/крэкерами после взлома системы для сбора паролей и другой системной информации. Для этого снифер устанавливает плату сетевого интерфейса в режим прослушивания смешанного трафика (promiscuous mode), т. е. сетевой адаптер будет перехватывать все пакеты, перемещающиеся по сети, а не только пакеты, адресованные данному адаптеру или системе. Сниферы такого типа хорошо работают в сетях с разделяемой пропускной способностью с сетевыми концентраторами - хабами.

Поскольку сейчас больше используются сетевые коммутаторы, эффективность снифинга стала снижаться. В коммутируемой среде не применяется режим широковещательной передачи, вместо этого пакеты отправляются непосредственно к системе-получателю. Однако коммутаторы не являются защитными устройствами. Это обычные сетевые устройства, следовательно, обеспечиваемая ими безопасность скорее побочный продукт их сетевого назначения, чем элемент конструкции. Поэтому вполне возможно появление снифера, способного работать и в коммутируемой среде. И это уже произошло. Снифер, специально разработанный для коммутируемой среды, можно найти по адресу http://ettercap.sourceforge.net/.

Для прослушивания трафика в коммутируемой среде хакер должен выполнить одно из условий:

  • "убедить" коммутатор в том, что трафик, представляющий интерес, должен быть направлен к сниферу;
  • заставить коммутатор отправлять весь трафик ко всем портам.

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

Коммутатор направляет трафик к портам на основании адреса доступа к среде передачи данных (Media Access Control) - MAC-адреса - для кадра, передаваемого по сети Ethernet. Каждая плата сетевого интерфейса имеет уникальный MAC-адрес, и коммутатор "знает" о том, какие адреса назначены какому порту. Следовательно, при передаче кадра с определенным MAC-адресом получателя коммутатор направляет этот кадр к порту, к которому приписан данный MAC-адрес.



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

  • ARP-спуфинг;
  • дублирование MAC-адресов;
  • имитация доменного имени.

ARP-спуфинг (ARP-spoofing). ARP - это протокол преобразования адресов (Address Resolution Protocol), используемый для получения MAC-адреса, связанного с определенным IP-адресом. При передаче трафика система-отправитель посылает ARP-запрос по IP-адресу получателя. Система-получатель отвечает на этот запрос передачей своего MAC-адреса, который будет использоваться системой-отправителем для прямой передачи трафика.

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

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

Примечание

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

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

Примечание

Считается, что изменить MAC-адреса невозможно. Однако дело обстоит совсем не так. Это можно сделать в системе Unix с помощью команды ipconfig. Аналогичные утилиты имеются и в системе Windows.

Для выполнения ARP-спуфинга снифер должен располагаться в той же самой локальной подсети, что и обе системы (отправитель и получатель), чтобы иметь возможность дублирования MAC-адресов.

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

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

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

Примечание

Снифер мог бы просматривать запросы, отправляемые через интернет, но чем дальше он от системы-отправителя, тем сложнее гарантировать, что он первым ответит на них.

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

Недавно, во время очередного пентеста, я столкнулся с приложением, которое отсылало информацию на порт 20хх веб-сервера. Трафик этого приложения не поддавался перехвату путем изменения стандартных настроек (Settings -> Wi-Fi -> HTTP Proxy -> Manual) и перенаправления трафика на прокси. Одна из причин, почему этот метод не работает, - для взаимодействия с сервером используются нативные веб сокеты (native websockets) вместо класса UIWebView. Более подробно о том, как настраиваются веб сокеты, рассказывается в этой статье .

Однако есть обходной маневр для решения этой проблемы. Мы можем реализовать DNS-спуфинг и перенаправить весь HTTP-трафик со всех портов через прокси наподобие Burp. Данная статья состоит из частей:

  1. Сниффинг трафика при помощи Wireshark для нахождения IP-адреса и порта сервера.
  2. Спуфинг DNS и пересылка всего трафика на машину, где установлен прокси.
  3. Перехват трафика при помощи прокси сервера после выполнения DNS-спуфинга.

Ниже показана пошаговая схема для реализации перехвата трафика iOS-приложений, использующих Native Web Socket.

1. Создаем беспроводную точку доступа и подключаем к ней устройство. [Примечание: машина должна быть подключена к Ethernet или любым другим способом подключена к интернету, поскольку Wi-Fi интерфейс будет использоваться для точки доступа. В этой статье рассказывается о том, как настроить точку доступа на Windows-машине]

2. Запускаем сетевой сниффер (например, Wireshark) и ищем трафик, проходящий через нестандартные порты.

a. Фильтруем трафик, оставляя только тот, который идет на нужный нам IP-адрес (ip.dst== ip.ip.ip.ip)

b. Находим номер порта, на который посылается трафик.

Рисунок 1: Нахождение нестандартного порта, на который приложение отсылает трафик

3. Запускаем консоль Metasploit для DNS-спуфинга и вводим следующие команды:

c. set SRVHOST = (IP беспроводной точки доступа)

d. set SRVPORT = 53, set TARGETACTION = BYPASS, set TARGETDOMAIN = www.apple.com (Примечание: выставляя TARGETDOMAIN= www.apple.com, мы будем перехватывать весь трафик, кроме идущего с apple.com).

e. set targethost = (IP беспроводной точки доступа)

Рисунок 2: Настройка DNS сервера при помощи модуля fakedns (в Metasploit )

4. Конфигурируем Burp на прослушивание входящего трафика устройства на определенных портах и перенаправляем его на найденный ранее порт.

a. Заходим в Proxy->Options->Add; устанавливаем в "bind port" тот порт, на который приложение должно пересылать трафик (примечание: это один из тех нестандартных tcp-портов, который был найден при помощи Wireshark).

b. Слушаем все интерфейсы.

c. Во вкладке Request Handling задаем домен сервера (поле Redirect to host).

d. В той же вкладке выставляем соответствующий номер порта (поле Redirect to port).

e. Если трафик посылается через https, выставляем принудительное использование SSL.

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

Рисунок 3: Настройка прослушивания и перенаправления трафика

5. Конфигурируем настройки прокси на устройстве:

a. Заходим в раздел Wi-Fi->DHCP и выставляем DNS = IP-адресу точки доступа.

b. В настройках HTTP-прокси ставим IP-адрес точки доступа и соответствующий порт, на который настроен burp (эти настройки используются для проксирования стандартного HTTP-трафика).

Рисунок 4: Конфигурирование IP и DNS forwarding на устройстве

6. Введите в консоли Metasploit «exploit», и вы увидите весь перехваченных трафик с нестандартных портов.

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

Публикации по теме